summaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--doc/Makefile.am36
-rw-r--r--doc/README48
-rw-r--r--doc/TODO91
-rw-r--r--doc/acinclude.m418
-rw-r--r--doc/ada_user/Makefile.am73
-rw-r--r--doc/ada_user/ada_user.texi185
-rw-r--r--doc/ada_user/example.texi13
-rw-r--r--doc/ada_user/stamp-vti4
-rw-r--r--doc/ada_user/version.texi4
-rw-r--r--doc/bsp_howto/BSPInitFlowchart-49.epsbin74709 -> 0 bytes
-rw-r--r--doc/bsp_howto/BSPInitFlowchart-49.pngbin59446 -> 0 bytes
-rw-r--r--doc/bsp_howto/Developer-User-Timeline.eps181
-rw-r--r--doc/bsp_howto/Developer-User-Timeline.pngbin33249 -> 0 bytes
-rw-r--r--doc/bsp_howto/Makefile.am135
-rw-r--r--doc/bsp_howto/TERMIOSFlow.eps25574
-rw-r--r--doc/bsp_howto/TERMIOSFlow.pngbin41346 -> 0 bytes
-rw-r--r--doc/bsp_howto/adaintr.t78
-rw-r--r--doc/bsp_howto/analog.t163
-rw-r--r--doc/bsp_howto/ata.t196
-rw-r--r--doc/bsp_howto/bsp_howto.texi121
-rw-r--r--doc/bsp_howto/clock.t299
-rw-r--r--doc/bsp_howto/console.t645
-rw-r--r--doc/bsp_howto/discrete.t183
-rw-r--r--doc/bsp_howto/framebuffer.t251
-rw-r--r--doc/bsp_howto/ide-ctrl.t154
-rw-r--r--doc/bsp_howto/init.t413
-rw-r--r--doc/bsp_howto/intro.t73
-rw-r--r--doc/bsp_howto/linkcmds.t429
-rw-r--r--doc/bsp_howto/makefiles.t218
-rw-r--r--doc/bsp_howto/nvmem.t231
-rw-r--r--doc/bsp_howto/rtc.t225
-rw-r--r--doc/bsp_howto/shmsupp.t266
-rw-r--r--doc/bsp_howto/stamp-vti4
-rw-r--r--doc/bsp_howto/support.t363
-rw-r--r--doc/bsp_howto/target.t236
-rw-r--r--doc/bsp_howto/timer.t103
-rw-r--r--doc/bsp_howto/version.texi4
-rw-r--r--doc/common/cpright.texi39
-rw-r--r--doc/common/opengroup_manpage_acknowledgement.texi32
-rw-r--r--doc/common/opengroup_preface_acknowledgement.texi37
-rw-r--r--doc/common/rtems.texi.in6
-rw-r--r--doc/common/setup.texi60
-rw-r--r--doc/common/treedef.tex317
-rw-r--r--doc/common/wksheets.t406
-rw-r--r--doc/configure.ac184
-rw-r--r--doc/cpu_supplement/Makefile.am131
-rw-r--r--doc/cpu_supplement/arm.t188
-rw-r--r--doc/cpu_supplement/bfin.t146
-rw-r--r--doc/cpu_supplement/cpu_supplement.texi117
-rw-r--r--doc/cpu_supplement/epiphany.t79
-rw-r--r--doc/cpu_supplement/general.t455
-rw-r--r--doc/cpu_supplement/i386.t373
-rw-r--r--doc/cpu_supplement/lm32.t192
-rw-r--r--doc/cpu_supplement/m32c.t11
-rw-r--r--doc/cpu_supplement/m68k.t439
-rw-r--r--doc/cpu_supplement/microblaze.t11
-rw-r--r--doc/cpu_supplement/mips.t151
-rw-r--r--doc/cpu_supplement/nios2.t11
-rw-r--r--doc/cpu_supplement/or1k.t80
-rw-r--r--doc/cpu_supplement/powerpc.t721
-rw-r--r--doc/cpu_supplement/preface.texi50
-rw-r--r--doc/cpu_supplement/sh.t169
-rw-r--r--doc/cpu_supplement/sparc.t1062
-rw-r--r--doc/cpu_supplement/sparc64.t806
-rw-r--r--doc/cpu_supplement/stamp-vti4
-rw-r--r--doc/cpu_supplement/v850.t112
-rw-r--r--doc/cpu_supplement/version.texi4
-rw-r--r--doc/develenv/Makefile.am37
-rw-r--r--doc/develenv/develenv.texi105
-rw-r--r--doc/develenv/direct.t689
-rw-r--r--doc/develenv/intro.texi53
-rw-r--r--doc/develenv/sample.t464
-rw-r--r--doc/develenv/stamp-vti4
-rw-r--r--doc/develenv/utils.t182
-rw-r--r--doc/develenv/version.texi4
-rw-r--r--doc/filesystem/Makefile.am65
-rw-r--r--doc/filesystem/filesystem.texi101
-rw-r--r--doc/filesystem/fsrequirements.t1180
-rw-r--r--doc/filesystem/imfs.t2035
-rw-r--r--doc/filesystem/init.t110
-rw-r--r--doc/filesystem/miniimfs.t13
-rw-r--r--doc/filesystem/mounting.t168
-rw-r--r--doc/filesystem/patheval.t106
-rw-r--r--doc/filesystem/preface.texi78
-rw-r--r--doc/filesystem/stamp-vti4
-rw-r--r--doc/filesystem/syscalls.t1127
-rw-r--r--doc/filesystem/tftp.t11
-rw-r--r--doc/filesystem/version.texi4
-rw-r--r--doc/images/dir-arrow.gifbin2609 -> 0 bytes
-rw-r--r--doc/images/dvi.gifbin156 -> 0 bytes
-rw-r--r--doc/images/missing-arrow.gifbin166 -> 0 bytes
-rw-r--r--doc/images/next-arrow.gifbin275 -> 0 bytes
-rw-r--r--doc/images/oaronly.jpgbin1584 -> 0 bytes
-rw-r--r--doc/images/pdf.gifbin249 -> 0 bytes
-rw-r--r--doc/images/pdf1.gifbin173 -> 0 bytes
-rw-r--r--doc/images/prev-arrow.gifbin279 -> 0 bytes
-rw-r--r--doc/images/ps.gifbin244 -> 0 bytes
-rw-r--r--doc/images/rtems_logo.jpgbin14586 -> 0 bytes
-rw-r--r--doc/images/up-arrow.gifbin264 -> 0 bytes
-rw-r--r--doc/index.html.in142
-rw-r--r--doc/main.am21
-rw-r--r--doc/networking/Makefile.am67
-rw-r--r--doc/networking/PCIreg.eps319
-rw-r--r--doc/networking/PCIreg.jpgbin48116 -> 0 bytes
-rw-r--r--doc/networking/PCIreg.txt2
-rw-r--r--doc/networking/decdriver.t268
-rw-r--r--doc/networking/driver.t339
-rw-r--r--doc/networking/networkapp.t924
-rw-r--r--doc/networking/networkflow.eps1343
-rw-r--r--doc/networking/networkflow.jpgbin36969 -> 0 bytes
-rw-r--r--doc/networking/networkflow.pngbin12933 -> 0 bytes
-rw-r--r--doc/networking/networkflow.txt2
-rw-r--r--doc/networking/networking.texi97
-rw-r--r--doc/networking/networktasks.t44
-rw-r--r--doc/networking/preface.texi53
-rw-r--r--doc/networking/recvbd.eps181
-rw-r--r--doc/networking/recvbd.jpgbin11100 -> 0 bytes
-rw-r--r--doc/networking/recvbd.txt2
-rw-r--r--doc/networking/servers.t115
-rw-r--r--doc/networking/stamp-vti4
-rw-r--r--doc/networking/testing.t365
-rw-r--r--doc/networking/version.texi4
-rw-r--r--doc/new_chapters/Makefile.am35
-rw-r--r--doc/new_chapters/STATUS5
-rw-r--r--doc/new_chapters/TODO4
-rw-r--r--doc/new_chapters/error.t161
-rw-r--r--doc/new_chapters/gen_section237
-rw-r--r--doc/new_chapters/monitor.t221
-rw-r--r--doc/new_chapters/new_chapters.texi107
-rw-r--r--doc/new_chapters/stamp-vti4
-rw-r--r--doc/new_chapters/version.texi4
-rw-r--r--doc/porting/Makefile.am78
-rw-r--r--doc/porting/codetuning.t152
-rw-r--r--doc/porting/cpuinit.t49
-rw-r--r--doc/porting/cpumodels.t134
-rw-r--r--doc/porting/developtools.t23
-rw-r--r--doc/porting/idlethread.t112
-rw-r--r--doc/porting/interrupts.t413
-rw-r--r--doc/porting/miscellaneous.t165
-rw-r--r--doc/porting/porting.texi130
-rw-r--r--doc/porting/preface.texi37
-rw-r--r--doc/porting/prioritybitmap.t196
-rw-r--r--doc/porting/sourcecode.t20
-rw-r--r--doc/porting/stamp-vti4
-rw-r--r--doc/porting/taskcontext.t531
-rw-r--r--doc/porting/version.texi4
-rw-r--r--doc/posix1003.1/Makefile.am125
-rw-r--r--doc/posix1003.1/ch01.t37
-rw-r--r--doc/posix1003.1/ch02.t276
-rw-r--r--doc/posix1003.1/ch03.t200
-rw-r--r--doc/posix1003.1/ch04.t178
-rw-r--r--doc/posix1003.1/ch05.t219
-rw-r--r--doc/posix1003.1/ch06.t172
-rw-r--r--doc/posix1003.1/ch07.t204
-rw-r--r--doc/posix1003.1/ch08.t286
-rw-r--r--doc/posix1003.1/ch09.t35
-rw-r--r--doc/posix1003.1/ch10.t65
-rw-r--r--doc/posix1003.1/ch11.t130
-rw-r--r--doc/posix1003.1/ch12.t74
-rw-r--r--doc/posix1003.1/ch13.t129
-rw-r--r--doc/posix1003.1/ch14.t68
-rw-r--r--doc/posix1003.1/ch15.t69
-rw-r--r--doc/posix1003.1/ch16.t69
-rw-r--r--doc/posix1003.1/ch17.t28
-rw-r--r--doc/posix1003.1/ch18.t63
-rw-r--r--doc/posix1003.1/compliance_list368
-rw-r--r--doc/posix1003.1/posix1003_1.texi123
-rw-r--r--doc/posix1003.1/preface.texi26
-rw-r--r--doc/posix1003.1/stamp-vti4
-rwxr-xr-xdoc/posix1003.1/summarize200
-rw-r--r--doc/posix1003.1/version.texi4
-rw-r--r--doc/posix_users/Makefile.am139
-rw-r--r--doc/posix_users/cancel.t236
-rw-r--r--doc/posix_users/clock.t366
-rw-r--r--doc/posix_users/cond.t380
-rw-r--r--doc/posix_users/cspecific.t746
-rw-r--r--doc/posix_users/device.t537
-rw-r--r--doc/posix_users/files.t2407
-rw-r--r--doc/posix_users/gen_size_report190
-rw-r--r--doc/posix_users/io.t1274
-rw-r--r--doc/posix_users/key.t208
-rw-r--r--doc/posix_users/libc.t345
-rw-r--r--doc/posix_users/libm.t55
-rw-r--r--doc/posix_users/memorymgmt.t372
-rw-r--r--doc/posix_users/message.t692
-rw-r--r--doc/posix_users/mutex.t745
-rw-r--r--doc/posix_users/posix_users.texi151
-rw-r--r--doc/posix_users/preface.texi35
-rw-r--r--doc/posix_users/procenv.t961
-rw-r--r--doc/posix_users/process.t493
-rw-r--r--doc/posix_users/sched.t216
-rw-r--r--doc/posix_users/semaphores.t595
-rw-r--r--doc/posix_users/signal.t1071
-rw-r--r--doc/posix_users/stamp-vti4
-rw-r--r--doc/posix_users/status.t58
-rw-r--r--doc/posix_users/systemdb.t304
-rw-r--r--doc/posix_users/thread.t1577
-rw-r--r--doc/posix_users/timer.t193
-rw-r--r--doc/posix_users/version.texi4
-rw-r--r--doc/project.am88
-rw-r--r--doc/relnotes/Makefile.am18
-rw-r--r--doc/relnotes/install.texi157
-rw-r--r--doc/relnotes/intro.texi147
-rw-r--r--doc/relnotes/probrep.texi57
-rw-r--r--doc/relnotes/relnotes.texi104
-rw-r--r--doc/relnotes/stamp-vti4
-rw-r--r--doc/relnotes/status.texi152
-rw-r--r--doc/relnotes/version.texi4
-rw-r--r--doc/setup.def21
-rw-r--r--doc/shell/Makefile.am53
-rw-r--r--doc/shell/confinit.t415
-rw-r--r--doc/shell/file.t2861
-rw-r--r--doc/shell/general.t1322
-rw-r--r--doc/shell/memory.t652
-rw-r--r--doc/shell/network.t685
-rw-r--r--doc/shell/preface.texi111
-rw-r--r--doc/shell/rtems.t1475
-rw-r--r--doc/shell/shell.texi106
-rw-r--r--doc/shell/stamp-vti4
-rw-r--r--doc/shell/version.texi4
-rw-r--r--doc/started/Makefile.am79
-rw-r--r--doc/started/buildc.t16
-rw-r--r--doc/started/buildrt.t192
-rw-r--r--doc/started/intro.t159
-rw-r--r--doc/started/nextstep.t131
-rw-r--r--doc/started/nt.t145
-rw-r--r--doc/started/pictures/bit_ada.jpgbin30320 -> 0 bytes
-rw-r--r--doc/started/pictures/bit_ada.vsdbin15360 -> 0 bytes
-rw-r--r--doc/started/pictures/bit_c.jpgbin29778 -> 0 bytes
-rw-r--r--doc/started/pictures/bit_c.vsdbin14336 -> 0 bytes
-rw-r--r--doc/started/pictures/scfile10.jpgbin12972 -> 0 bytes
-rw-r--r--doc/started/pictures/scfile10.vsdbin26112 -> 0 bytes
-rw-r--r--doc/started/pictures/scfile11.jpgbin45560 -> 0 bytes
-rw-r--r--doc/started/pictures/scfile11.vsdbin24576 -> 0 bytes
-rw-r--r--doc/started/pictures/scfile12.jpgbin12972 -> 0 bytes
-rw-r--r--doc/started/pictures/scfile12.vsdbin11776 -> 0 bytes
-rw-r--r--doc/started/pictures/scfile13.jpgbin33103 -> 0 bytes
-rw-r--r--doc/started/pictures/scfile13.vsdbin15360 -> 0 bytes
-rw-r--r--doc/started/pictures/scsfile1.jpgbin88599 -> 0 bytes
-rw-r--r--doc/started/pictures/scsfile1.vsdbin25088 -> 0 bytes
-rw-r--r--doc/started/pictures/scsfile2.jpgbin175286 -> 0 bytes
-rw-r--r--doc/started/pictures/scsfile2.vsdbin26624 -> 0 bytes
-rw-r--r--doc/started/pictures/scsfile3.jpgbin87075 -> 0 bytes
-rw-r--r--doc/started/pictures/scsfile3.vsdbin19456 -> 0 bytes
-rw-r--r--doc/started/pictures/scsfile4.jpgbin97380 -> 0 bytes
-rw-r--r--doc/started/pictures/scsfile4.vsdbin16896 -> 0 bytes
-rw-r--r--doc/started/pictures/scsfile5.jpgbin22942 -> 0 bytes
-rw-r--r--doc/started/pictures/scsfile5.vsdbin13824 -> 0 bytes
-rw-r--r--doc/started/pictures/scsfile6.jpgbin34989 -> 0 bytes
-rw-r--r--doc/started/pictures/scsfile6.vsdbin13824 -> 0 bytes
-rw-r--r--doc/started/pictures/scsfile7.jpgbin99516 -> 0 bytes
-rw-r--r--doc/started/pictures/scsfile7.vsdbin19456 -> 0 bytes
-rw-r--r--doc/started/pictures/scsfile8.jpgbin52638 -> 0 bytes
-rw-r--r--doc/started/pictures/scsfile8.vsdbin16896 -> 0 bytes
-rw-r--r--doc/started/pictures/scsfile9.jpgbin62821 -> 0 bytes
-rw-r--r--doc/started/pictures/scsfile9.vsdbin13824 -> 0 bytes
-rw-r--r--doc/started/pictures/sfile12c.jpgbin11663 -> 0 bytes
-rw-r--r--doc/started/pictures/sfile12c.vsdbin11264 -> 0 bytes
-rw-r--r--doc/started/require.t154
-rw-r--r--doc/started/sample.t248
-rw-r--r--doc/started/stamp-vti4
-rw-r--r--doc/started/started.texi99
-rw-r--r--doc/started/version.texi4
-rw-r--r--doc/texi2any_init.in20
-rw-r--r--doc/texi2html_init.in19
-rw-r--r--doc/tools/Makefile.am6
-rw-r--r--doc/tools/bmenu/Makefile.am9
-rw-r--r--doc/tools/bmenu/address.h35
-rw-r--r--doc/tools/bmenu/base.h96
-rw-r--r--doc/tools/bmenu/bmenu2.c1045
-rw-r--r--doc/tools/bmenu/chain.c189
-rw-r--r--doc/tools/bmenu/chain.h347
-rw-r--r--doc/tools/bmenu/chain.inl234
-rw-r--r--doc/tools/bmenu/system.h29
-rw-r--r--doc/tools/configure.ac28
-rw-r--r--doc/tools/word-replace298
-rw-r--r--doc/user/Makefile.am227
-rw-r--r--doc/user/ObjectId-16Bits.eps3797
-rw-r--r--doc/user/ObjectId-16Bits.pngbin30166 -> 0 bytes
-rw-r--r--doc/user/ObjectId-32Bits.eps4679
-rw-r--r--doc/user/ObjectId-32Bits.pngbin38351 -> 0 bytes
-rw-r--r--doc/user/barrier.t470
-rw-r--r--doc/user/bsp.t300
-rw-r--r--doc/user/c_user.texi184
-rw-r--r--doc/user/cbs.t643
-rw-r--r--doc/user/chains.t800
-rw-r--r--doc/user/clock.t956
-rw-r--r--doc/user/concepts.t405
-rw-r--r--doc/user/conf.t5421
-rw-r--r--doc/user/cpuuse.t160
-rw-r--r--doc/user/datatypes.t327
-rw-r--r--doc/user/dirstat.t62
-rw-r--r--doc/user/dpmem.t361
-rw-r--r--doc/user/event.t340
-rw-r--r--doc/user/example.texi83
-rw-r--r--doc/user/fatal.t283
-rw-r--r--doc/user/glossary.texi845
-rw-r--r--doc/user/init.t311
-rw-r--r--doc/user/intr.t780
-rw-r--r--doc/user/io.t742
-rw-r--r--doc/user/libpci.t412
-rw-r--r--doc/user/linkersets.t421
-rw-r--r--doc/user/mp.t570
-rw-r--r--doc/user/msg.t836
-rw-r--r--doc/user/object.t911
-rw-r--r--doc/user/overview.t549
-rw-r--r--doc/user/part.t459
-rw-r--r--doc/user/preface.texi188
-rw-r--r--doc/user/rbtree.t91
-rw-r--r--doc/user/region.t729
-rw-r--r--doc/user/rtemsarc.pngbin5698 -> 0 bytes
-rw-r--r--doc/user/rtemsarc.txt11
-rw-r--r--doc/user/rtemspie.eps2164
-rw-r--r--doc/user/rtemspie.pngbin31984 -> 0 bytes
-rw-r--r--doc/user/rtemspie.txt7
-rw-r--r--doc/user/rtmon.t1480
-rw-r--r--doc/user/schedule.t512
-rw-r--r--doc/user/sem.t1080
-rw-r--r--doc/user/semaphore_attributes.eps3752
-rw-r--r--doc/user/semaphore_attributes.pngbin31604 -> 0 bytes
-rw-r--r--doc/user/signal.t387
-rw-r--r--doc/user/smp.t1016
-rw-r--r--doc/user/stackchk.t220
-rw-r--r--doc/user/stamp-vti4
-rw-r--r--doc/user/states.eps13822
-rw-r--r--doc/user/states.pngbin22036 -> 0 bytes
-rw-r--r--doc/user/states.txt26
-rw-r--r--doc/user/task.t1797
-rw-r--r--doc/user/timer.t731
-rw-r--r--doc/user/timespec.t553
-rw-r--r--doc/user/userext.t721
-rw-r--r--doc/user/version.texi4
332 files changed, 0 insertions, 136029 deletions
diff --git a/doc/Makefile.am b/doc/Makefile.am
deleted file mode 100644
index e3e413b74e..0000000000
--- a/doc/Makefile.am
+++ /dev/null
@@ -1,36 +0,0 @@
-ACLOCAL_AMFLAGS = -I ../aclocal
-
-# NOTE: The order of the directories is essential.
-# + tools, common and images are shared across many documents
-
-SUBDIRS = tools started user bsp_howto porting develenv posix_users \
- posix1003.1 filesystem networking ada_user \
- new_chapters relnotes cpu_supplement shell
-
-if USE_HTML
-html_DATA = index.html
-endif
-
-EXTRA_DIST = common/cpright.texi common/setup.texi \
- common/treedef.tex common/rtems.texi.in
-
-if USE_HTML
-html_imagesdir = $(htmldir)/images
-endif
-
-HTML_IMAGES = images/dir-arrow.gif images/dvi.gif images/missing-arrow.gif \
- images/next-arrow.gif images/oaronly.jpg images/pdf.gif images/pdf1.gif \
- images/rtems_logo.jpg images/prev-arrow.gif images/ps.gif \
- images/up-arrow.gif
-
-if USE_HTML
-html_images_DATA = $(HTML_IMAGES)
-endif
-
-EXTRA_DIST += $(HTML_IMAGES)
-
-CLEANFILES = common/rtems.texi
-DISTCLEANFILES = common/rtems.sed
-
-# HACK: This should not be here, but it makes "make distcheck" work.
-EXTRA_DIST += ../scripts/setup.def ../COPYING
diff --git a/doc/README b/doc/README
deleted file mode 100644
index a6655ea016..0000000000
--- a/doc/README
+++ /dev/null
@@ -1,48 +0,0 @@
-Tools Required
-==============
-The following tools are used in the production of this documentation:
-
-TeX
-texi2html 1.82
-texinfo-tex 4.13a
-
-texi2html will be deprecated in the upcomine texinfo release. At that point,
-we will need to provide support for texi2any.pl as an alternative means to
-produce html output.
-
-This was used by the authors to generate the directory tree figure
-in the texinfo printed version:
-
-tree (from the CTAN Archives -- see http://jasper.ora.com/ctan.html)
-
-Changing the Version Number and Timestamp
-=========================================
-
-RTEMS Version number is in configure.in. Edit that file and run bootstrap.
-
-Documentation date is in common/setup.texi.in and also must be modified
-by hand. bootstrap does not have to be run after modifying this file.
-
-Making the Documentation
-========================
-
-cd rtems-XXX/doc
-../bootstrap
-./configure --enable-maintainer-mode
-make all
-make install
-
-Cleaning
-========
-
-make clean
-make distclean
-make maintainer-clean
-
-Making a Source Distribution
-============================
-This generates a rtems-<version>.tar.gz in the toplevel directory.
-
-Making a Preformatted Distribution
-==================================
-Install and tar it up. :)
diff --git a/doc/TODO b/doc/TODO
deleted file mode 100644
index cf67529c52..0000000000
--- a/doc/TODO
+++ /dev/null
@@ -1,91 +0,0 @@
-This is a collection of things which need to be done to the various
-manuals.
-
-General Issues
-==============
-May need a Documentation Roadmap - for now, the "Where to
-go from here" chapter in Getting Started is it.
-
-Need a description of hello world and writing an application.
-
-More automatic handling of version, date, revision, release, etc.
-
-Eliminate use of gifs. [NOTE: ps, pdf, and dvi.gif are from
-http://www.cit.gu.edu.au/images and the various arrow and
-bookshelf icons came with texi2www.]
-
-Redraw pictures as appropriate in open source tools.
-
-
-Getting Started (C and Ada versions)
-====================================
-Switch back to using @url{} when pdf generation error is fixed.
-
-Classic Users Guide
-===================
-May need to enhance descriptions in Primitive Data Types Chapter
-
-POSIX User Notes
-================
-
-Add pages for network services.
-
-Add timer() services if we have any.
-
-
-Development Environment Guide
-=============================
-Either rename to "A Tour of the RTEMS Source Tree" or include
-more information on the GNU tools.
-
-The "C Suites" section is oddly named and the directory
-tree included is wrong in that make is no longer under
-the c directory. I think the build-tools make have
-moved as well.
-
-All the paths should be provided as relative paths
-from the top of the RTEMS source tree. It wastes
-valuable screen space to do otherwise.
-
-The last paragraph of "C Suites" is vague and could
-be written better. It should include the subdirectory
-names as part of the textual description.
-
-Should this documentation even use the phrase "C Implementation"
-any longer?
-
-Directory names should be in @code -- not "quoted".
-
-In "Support Library Source Directory", look for "which installed"
-
-In the latter part of the "libbsp" paragraph in "Support
-Library Source Directory", there is reference to the
-stubdr directory which is no longer there.
-
-Update this section to include discussion of the shared
-subdirectory and its relationship to the BSPs. Write this
-in such a way that it can be passed on to Geoffroy Montel.
-
-In the section, "Test Suite Source Directory", there is a
-numeric count of the number of tests in each suite. This
-should be eliminated for maintenance purposes.
-
-The psxtest directory is not mentioned. Check that no others
-have been forgotten.
-
-There should probably be no reference to the Ada sample
-applications. This document used to cover both implementations.
-This now seems inappropriate.
-
-The hello world sample test discussion mentions that it provides
-a rudiementary test of the BSP startup code and the "RTEMS
-C Library". This should be rewritten to tell mroe about what
-this test shows (actually a lot). It should mention that this
-test tries to avoid using interrupts.
-
-The ticker test should mention that in contrast to hello, it
-does use interrupts. :) It can be used to tune the clock
-tick.
-
-The ticker test documentation says it calls "tm_get" -- jeez
-how old is this manual.
diff --git a/doc/acinclude.m4 b/doc/acinclude.m4
deleted file mode 100644
index 219d8042ab..0000000000
--- a/doc/acinclude.m4
+++ /dev/null
@@ -1,18 +0,0 @@
-## _RTEMS_UPDATE_CONDITIONAL(FINAL,TMP)
-AC_DEFUN([_RTEMS_UPDATE_CONDITIONAL],[
- AS_IF([test -f $1],[
- AS_IF([cmp -s $1 $2 2>/dev/null],
- [
- AC_MSG_NOTICE([$1 is unchanged])
- rm -f $$2
- ],[
- AC_MSG_NOTICE([creating $1])
- rm -f $1
- mv $2 $1
- ])
- ],[
- AC_MSG_NOTICE([creating $1])
- rm -f $1
- mv $2 $1
- ])
-])
diff --git a/doc/ada_user/Makefile.am b/doc/ada_user/Makefile.am
deleted file mode 100644
index 205b1c857b..0000000000
--- a/doc/ada_user/Makefile.am
+++ /dev/null
@@ -1,73 +0,0 @@
-#
-# COPYRIGHT (c) 1988-2002.
-# On-Line Applications Research Corporation (OAR).
-# All rights reserved.
-
-PROJECT = ada_user
-
-include $(top_srcdir)/project.am
-include $(top_srcdir)/main.am
-
-COMMON_FILES += \
- $(top_builddir)/user/barrier.texi $(top_builddir)/user/bsp.texi \
- $(top_builddir)/user/clock.texi $(top_builddir)/user/concepts.texi \
- $(top_builddir)/user/datatypes.texi $(top_builddir)/user/conf.texi \
- $(top_builddir)/user/dirstat.texi $(top_builddir)/user/dpmem.texi \
- $(top_builddir)/user/event.texi $(top_builddir)/user/fatal.texi \
- $(top_builddir)/user/glossary.texi $(top_builddir)/user/init.texi \
- $(top_builddir)/user/intr.texi $(top_builddir)/user/io.texi \
- $(top_builddir)/user/libpci.texi \
- $(top_builddir)/user/linkersets.texi \
- $(top_builddir)/user/mp.texi $(top_builddir)/user/msg.texi \
- $(top_builddir)/user/overview.texi $(top_builddir)/user/part.texi \
- $(top_builddir)/user/preface.texi $(top_builddir)/user/region.texi \
- $(top_builddir)/user/rtmon.texi $(top_builddir)/user/schedule.texi \
- $(top_builddir)/user/sem.texi $(top_builddir)/user/signal.texi \
- $(top_builddir)/user/task.texi $(top_builddir)/user/timer.texi \
- $(top_builddir)/user/userext.texi $(top_builddir)/user/stackchk.texi \
- $(top_builddir)/user/cpuuse.texi $(top_srcdir)/common/cpright.texi \
- $(top_builddir)/user/object.texi $(top_builddir)/user/cbs.texi \
- $(top_builddir)/user/smp.texi
-
-FILES = example.texi
-
-ObjectId-16Bits.eps: $(top_srcdir)/user/ObjectId-16Bits.eps
- $(LN_S) $<
-ObjectId-32Bits.eps: $(top_srcdir)/user/ObjectId-32Bits.eps
- $(LN_S) $<
-rtemspie.eps: $(top_srcdir)/user/rtemspie.eps
- $(LN_S) $<
-semaphore_attributes.eps: $(top_srcdir)/user/semaphore_attributes.eps
- $(LN_S) $<
-states.eps: $(top_srcdir)/user/states.eps
- $(LN_S) $<
-CLEANFILES += ObjectId-16Bits.eps ObjectId-32Bits.eps rtemspie.eps semaphore_attributes.eps states.eps
-
-ObjectId-16Bits.png: $(top_srcdir)/user/ObjectId-16Bits.png
- $(LN_S) $<
-ObjectId-32Bits.png: $(top_srcdir)/user/ObjectId-32Bits.png
- $(LN_S) $<
-rtemsarc.png: $(top_srcdir)/user/rtemsarc.png
- $(LN_S) $<
-rtemspie.png: $(top_srcdir)/user/rtemspie.png
- $(LN_S) $<
-semaphore_attributes.png: $(top_srcdir)/user/semaphore_attributes.png
- $(LN_S) $<
-states.png: $(top_srcdir)/user/states.png
- $(LN_S) $<
-CLEANFILES += ObjectId-16Bits.png ObjectId-32Bits.png rtemsarc.png rtemspie.png semaphore_attributes.png states.png
-
-info_TEXINFOS = ada_user.texi
-ada_user_TEXINFOS = $(FILES) $(COMMON_FILES)
-
-if USE_HTML
-html_project_DATA += rtemsarc.png rtemspie.png states.png \
- ObjectId-16Bits.png ObjectId-32Bits.png semaphore_attributes.png
-endif
-
-$(PROJECT).dvi: rtemspie.eps states.eps ObjectId-16Bits.eps \
- ObjectId-32Bits.eps semaphore_attributes.eps
-PDF_IMAGES = rtemspie.pdf states.pdf ObjectId-16Bits.pdf \
- ObjectId-32Bits.pdf semaphore_attributes.pdf
-
-CLEANFILES += ada_user.info ada_user.info-? ada_user.info-??
diff --git a/doc/ada_user/ada_user.texi b/doc/ada_user/ada_user.texi
deleted file mode 100644
index 68c10e028b..0000000000
--- a/doc/ada_user/ada_user.texi
+++ /dev/null
@@ -1,185 +0,0 @@
-\input texinfo @c -*-texinfo-*-
-@c %**start of header
-@setfilename ada_user.info
-@setcontentsaftertitlepage
-@syncodeindex vr fn
-@synindex ky cp
-@paragraphindent 0
-@c %**end of header
-
-@c
-@c COPYRIGHT (c) 1989-2014.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@c
-@c Master file for the Ada User's Guide
-@c
-
-@c Joel's Questions
-@c
-@c 1. Why does paragraphindent only impact makeinfo?
-@c 2. Why does paragraphindent show up in HTML?
-@c
-
-@include version.texi
-@include common/setup.texi
-@include common/rtems.texi
-
-@ifset use-ascii
-@dircategory RTEMS On-Line Manual
-@direntry
-* RTEMS Ada User: (ada_user). The Ada User's Guide
-@end direntry
-@end ifset
-
-
-@c variable substitution info:
-@c
-@clear is-C
-@set is-Ada
-@set LANGUAGE Ada
-@set STRUCTURE record
-@set ROUTINE subprogram
-@set OR or
-@set RPREFIX RTEMS.
-@set DIRPREFIX rtems.
-@c the language is @value{LANGUAGE}
-@c NOTE: don't use underscore in the name
-@c
-
-@c
-@c Title Page Stuff
-@c
-
-@c
-@c I don't really like having a short title page. --joel
-@c
-@c @shorttitlepage RTEMS Applications Ada User's Guide
-
-@setchapternewpage odd
-@settitle RTEMS Ada User's Guide
-@titlepage
-@finalout
-
-@title RTEMS Applications Ada User's Guide
-@subtitle Edition @value{EDITION}, for RTEMS @value{VERSION}
-@sp 1
-@subtitle @value{UPDATED}
-@author On-Line Applications Research Corporation
-@page
-@include common/cpright.texi
-@end titlepage
-
-@c This prevents a black box from being printed on "overflow" lines.
-@c The alternative is to rework a sentence to avoid this problem.
-
-@contents
-
-@ifnottex
-@node Top, List of Figures, (dir), (dir)
-@top RTEMS Applications Ada User's Guide
-
-@menu
-* List of Figures::
-* Preface::
-* Overview::
-* Key Concepts::
-* RTEMS Data Types::
-* Initialization Manager::
-* Task Manager::
-* Interrupt Manager::
-* Clock Manager::
-* Timer Manager::
-* Semaphore Manager::
-* Message Manager::
-* Event Manager::
-* Signal Manager::
-* Partition Manager::
-* Region Manager::
-* Dual-Ported Memory Manager::
-* I/O Manager::
-* Fatal Error Manager::
-* Scheduling Concepts::
-* Rate Monotonic Manager::
-* Barrier Manager::
-* Board Support Packages::
-* User Extensions Manager::
-* Configuring a System::
-* Multiprocessing Manager::
-* Symmetric Multiprocessing Services::
-* PCI Library::
-* Stack Bounds Checker::
-* CPU Usage Statistics::
-* Object Services::
-* Chains::
-* Red-Black Trees::
-* Timespec Helpers::
-* Constant Bandwidth Server Scheduler API::
-* Directive Status Codes::
-* Linker Sets::
-* Example Application::
-* Glossary::
-* Command and Variable Index::
-* Concept Index::
-@end menu
-@end ifnottex
-
-@node List of Figures, Preface, Top, Top
-@unnumbered List of Figures
-@listoffloats Figure
-
-@include user/preface.texi
-@include user/overview.texi
-@include user/concepts.texi
-@include user/datatypes.texi
-@include user/init.texi
-@include user/task.texi
-@include user/intr.texi
-@include user/clock.texi
-@include user/timer.texi
-@include user/sem.texi
-@include user/msg.texi
-@include user/event.texi
-@include user/signal.texi
-@include user/part.texi
-@include user/region.texi
-@include user/dpmem.texi
-@include user/io.texi
-@include user/fatal.texi
-@include user/schedule.texi
-@include user/rtmon.texi
-@include user/barrier.texi
-@include user/bsp.texi
-@include user/userext.texi
-@include user/conf.texi
-@include user/mp.texi
-@include user/smp.texi
-@include user/libpci.texi
-@include user/stackchk.texi
-@include user/cpuuse.texi
-@include user/object.texi
-@include user/chains.texi
-@include user/rbtree.texi
-@include user/timespec.texi
-@include user/cbs.texi
-@include user/dirstat.texi
-@include user/linkersets.texi
-@include example.texi
-@include user/glossary.texi
-
-@node Command and Variable Index, Concept Index, Glossary, Top
-@unnumbered Command and Variable Index
-
-@c There are currently no Command and Variable Index entries.
-
-@printindex fn
-
-@node Concept Index, , Command and Variable Index, Top
-@unnumbered Concept Index
-
-@c There are currently no Concept Index entries.
-@printindex cp
-
-@bye
-
diff --git a/doc/ada_user/example.texi b/doc/ada_user/example.texi
deleted file mode 100644
index 9236bc63da..0000000000
--- a/doc/ada_user/example.texi
+++ /dev/null
@@ -1,13 +0,0 @@
-@c
-@c COPYRIGHT (c) 1989-2014.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@node Example Application, Glossary, Linker Sets RTEMS_LINKER_RWSET_ITEM_ORDERED - Defines an ordered read-write linker set item, Top
-@chapter Example Application
-
-@example
-
-Currently there is no example Ada application provided.
-
-@end example
diff --git a/doc/ada_user/stamp-vti b/doc/ada_user/stamp-vti
deleted file mode 100644
index 5634951ec8..0000000000
--- a/doc/ada_user/stamp-vti
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 24 February 2013
-@set UPDATED-MONTH February 2013
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0
diff --git a/doc/ada_user/version.texi b/doc/ada_user/version.texi
deleted file mode 100644
index c0e4bbb7b6..0000000000
--- a/doc/ada_user/version.texi
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 17 July 2015
-@set UPDATED-MONTH July 2015
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0
diff --git a/doc/bsp_howto/BSPInitFlowchart-49.eps b/doc/bsp_howto/BSPInitFlowchart-49.eps
deleted file mode 100644
index b856353d05..0000000000
--- a/doc/bsp_howto/BSPInitFlowchart-49.eps
+++ /dev/null
Binary files differ
diff --git a/doc/bsp_howto/BSPInitFlowchart-49.png b/doc/bsp_howto/BSPInitFlowchart-49.png
deleted file mode 100644
index a8fd4d4a42..0000000000
--- a/doc/bsp_howto/BSPInitFlowchart-49.png
+++ /dev/null
Binary files differ
diff --git a/doc/bsp_howto/Developer-User-Timeline.eps b/doc/bsp_howto/Developer-User-Timeline.eps
deleted file mode 100644
index 3de497d297..0000000000
--- a/doc/bsp_howto/Developer-User-Timeline.eps
+++ /dev/null
@@ -1,181 +0,0 @@
-%!PS-Adobe-3.0 EPSF-3.0
-%%Creator: (ImageMagick)
-%%Title: (Developer-User-Timeline.eps)
-%%CreationDate: (Thu Aug 21 15:18:42 2008)
-%%BoundingBox: 0 0 612 468
-%%HiResBoundingBox: 0 0 612 468
-%%LanguageLevel: 2
-%%Pages: 1
-%%EndComments
-
-%%BeginDefaults
-%%EndDefaults
-
-%%BeginProlog
-%
-% Display a color image. The image is displayed in color on
-% Postscript viewers or printers that support color, otherwise
-% it is displayed as grayscale.
-%
-/DirectClassImage
-{
- %
- % Display a DirectClass image.
- %
- colorspace 0 eq
- {
- /DeviceRGB setcolorspace
- <<
- /ImageType 1
- /Width columns
- /Height rows
- /BitsPerComponent 8
- /Decode [0 1 0 1 0 1]
- /ImageMatrix [columns 0 0 rows neg 0 rows]
- compression 0 gt
- { /DataSource pixel_stream /RunLengthDecode filter }
- { /DataSource pixel_stream /RunLengthDecode filter } ifelse
- >> image
- }
- {
- /DeviceCMYK setcolorspace
- <<
- /ImageType 1
- /Width columns
- /Height rows
- /BitsPerComponent 8
- /Decode [1 0 1 0 1 0 1 0]
- /ImageMatrix [columns 0 0 rows neg 0 rows]
- compression 0 gt
- { /DataSource pixel_stream /RunLengthDecode filter }
- { /DataSource pixel_stream /RunLengthDecode filter } ifelse
- >> image
- } ifelse
-} bind def
-
-/PseudoClassImage
-{
- %
- % Display a PseudoClass image.
- %
- % Parameters:
- % colors: number of colors in the colormap.
- %
- currentfile buffer readline pop
- token pop /colors exch def pop
- colors 0 eq
- {
- %
- % Image is grayscale.
- %
- currentfile buffer readline pop
- token pop /bits exch def pop
- /DeviceGray setcolorspace
- <<
- /ImageType 1
- /Width columns
- /Height rows
- /BitsPerComponent bits
- /Decode [0 1]
- /ImageMatrix [columns 0 0 rows neg 0 rows]
- compression 0 gt
- { /DataSource pixel_stream /RunLengthDecode filter }
- {
- /DataSource pixel_stream /RunLengthDecode filter
- <<
- /K -1
- /Columns columns
- /Rows rows
- >> /CCITTFaxDecode filter
- } ifelse
- >> image
- }
- {
- %
- % Parameters:
- % colormap: red, green, blue color packets.
- %
- /colormap colors 3 mul string def
- currentfile colormap readhexstring pop pop
- currentfile buffer readline pop
- [ /Indexed /DeviceRGB colors 1 sub colormap ] setcolorspace
- <<
- /ImageType 1
- /Width columns
- /Height rows
- /BitsPerComponent 8
- /Decode [0 255]
- /ImageMatrix [columns 0 0 rows neg 0 rows]
- compression 0 gt
- { /DataSource pixel_stream /RunLengthDecode filter }
- { /DataSource pixel_stream /RunLengthDecode filter } ifelse
- >> image
- } ifelse
-} bind def
-
-/DisplayImage
-{
- %
- % Display a DirectClass or PseudoClass image.
- %
- % Parameters:
- % x & y translation.
- % x & y scale.
- % label pointsize.
- % image label.
- % image columns & rows.
- % class: 0-DirectClass or 1-PseudoClass.
- % colorspace: 0-RGB or 1-CMYK.
- % compression: 0-RLECompression or 1-NoCompression.
- % hex color packets.
- %
- gsave
- /buffer 512 string def
- /pixel_stream currentfile def
-
- currentfile buffer readline pop
- token pop /x exch def
- token pop /y exch def pop
- x y translate
- currentfile buffer readline pop
- token pop /x exch def
- token pop /y exch def pop
- currentfile buffer readline pop
- token pop /pointsize exch def pop
- /Helvetica findfont pointsize scalefont setfont
- x y scale
- currentfile buffer readline pop
- token pop /columns exch def
- token pop /rows exch def pop
- currentfile buffer readline pop
- token pop /class exch def pop
- currentfile buffer readline pop
- token pop /colorspace exch def pop
- currentfile buffer readline pop
- token pop /compression exch def pop
- class 0 gt { PseudoClassImage } { DirectClassImage } ifelse
- grestore
-} bind def
-%%EndProlog
-%%Page: 1 1
-%%PageBoundingBox: 0 0 612 468
-userdict begin
-%%BeginData: 439527 Binary Bytes
-DisplayImage
-0 0
-612.001 468.001
-12.000000
-5100 3900
-1
-0
-1
-0
-8
-‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚H‚HÂH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿóÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿ²H‚ÿ‚ÿ‚ÿ‰ÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿöÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿ¨H‚ÿ‚ÿ‚ÿ“ÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿöÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿ£H‚ÿ‚ÿ‚ÿ˜ÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿŸH‚ÿ‚ÿ‚ÿœÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿœH‚ÿ‚ÿ‚ÿŸÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿ™H‚ÿ‚ÿ‚ÿ¢ÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿ—H‚ÿ‚ÿ‚ÿ¤ÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿ”H‚ÿ‚ÿ‚ÿ§ÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿ’H‚ÿ‚ÿ‚ÿ©ÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿ‘H‚ÿ‚ÿ‚ÿªÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿH‚ÿ‚ÿ‚ÿ¬ÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿH‚ÿ‚ÿ‚ÿ®ÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿŒH‚ÿ‚ÿ‚ÿ¯ÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿ‹H‚ÿ‚ÿ‚ÿ°ÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿ‰H‚ÿ‚ÿ‚ÿ²ÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿˆH‚ÿ‚ÿ‚ÿ³ÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿ‡H‚ÿ‚ÿ‚ÿ´ÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿ†H‚ÿ‚ÿ‚ÿµÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿ…H‚ÿ‚ÿ‚ÿ¶ÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿ„H‚ÿ‚ÿ‚ÿ·ÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿƒH‚ÿ‚ÿ‚ÿ¸ÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿ‚H‚ÿ‚ÿ‚ÿ¹ÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿèHÍÿÎH‚ÿ‚ÿ‚ÿºÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿèHÆÿÔH‚ÿ‚ÿ‚ÿ»ÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿèHÁÿØH‚ÿ‚ÿ‚ÿ¼ÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿèH¾ÿÛH‚ÿ‚ÿ‚ÿ¼ÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿèH¼ÿÜH‚ÿ‚ÿ‚ÿ½ÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿèHºÿÝH‚ÿ‚ÿ‚ÿ¾ÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿèH¸ÿÞH‚ÿ‚ÿ‚ÿ¿ÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿèH¶ÿàH‚ÿ‚ÿ‚ÿ¿ÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿèHµÿàH‚ÿ‚ÿ‚ÿÀÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿèH´ÿàH‚ÿ‚ÿ‚ÿÁÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿèH³ÿáH‚ÿ‚ÿ‚ÿÁÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿèH±ÿâH‚ÿ‚ÿ‚ÿÂÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿèH°ÿãH‚ÿ‚ÿ‚ÿÂÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿèH¯ÿãH‚ÿ‚ÿ‚ÿÃÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿèH¯ÿâH‚ÿ‚ÿ‚ÿÄÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿèH®ÿãH‚ÿ‚ÿ‚ÿÄÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿèH­ÿãH‚ÿ‚ÿ‚ÿÅÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿèH¬ÿäH‚ÿ‚ÿ‚ÿÅÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿèH«ÿäH‚ÿ‚ÿ‚ÿÆÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿèHªÿåH‚ÿ‚ÿ‚ÿÆÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿèHªÿåH‚ÿ‚ÿ‚ÿÆÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿèH©ÿåH‚ÿ‚ÿ‚ÿÇÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿèH¨ÿæH‚ÿ‚ÿ‚ÿÇÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿèH¨ÿåH‚ÿ‚ÿ‚ÿÈÿêH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ»ÿéH¤ÿéH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿËÿûH‚ÿ‚ÿ‚ÿ‚ÿ‚ÿ‚ÿÞÿèH§ÿæH¬ÿøH‚ÿ‚ÿ
-%%EndData
-end
-%%PageTrailer
-%%Trailer
-%%BoundingBox: 0 0 612 468
-%%HiResBoundingBox: 0 0 612 468
-%%EOF
diff --git a/doc/bsp_howto/Developer-User-Timeline.png b/doc/bsp_howto/Developer-User-Timeline.png
deleted file mode 100644
index 650ac51849..0000000000
--- a/doc/bsp_howto/Developer-User-Timeline.png
+++ /dev/null
Binary files differ
diff --git a/doc/bsp_howto/Makefile.am b/doc/bsp_howto/Makefile.am
deleted file mode 100644
index 052ef7f41e..0000000000
--- a/doc/bsp_howto/Makefile.am
+++ /dev/null
@@ -1,135 +0,0 @@
-#
-# COPYRIGHT (c) 1988-2002.
-# On-Line Applications Research Corporation (OAR).
-# All rights reserved.
-
-PROJECT = bsp_howto
-
-include $(top_srcdir)/project.am
-include $(top_srcdir)/main.am
-
-GENERATED_FILES = intro.texi target.texi makefiles.texi linkcmds.texi \
- support.texi adaintr.texi init.texi console.texi clock.texi timer.texi \
- rtc.texi ata.texi ide-ctrl.texi nvmem.texi network.texi shmsupp.texi \
- framebuffer.texi analog.texi discrete.texi
-
-COMMON_FILES += $(top_srcdir)/common/cpright.texi
-
-PNG_FILES = Developer-User-Timeline.png BSPInitFlowchart-49.png \
- TERMIOSFlow.png
-
-if USE_HTML
-html_project_DATA += $(PNG_FILES)
-endif
-
-FILES =
-
-info_TEXINFOS = bsp_howto.texi
-bsp_howto_TEXINFOS = $(FILES) $(COMMON_FILES) $(GENERATED_FILES)
-
-#
-# Process Automatically Generated Files
-#
-
-intro.texi: intro.t
- $(BMENU2) -p "Top" \
- -u "Top" \
- -n "Target Dependent Files" < $< > $@
-
-target.texi: target.t
- $(BMENU2) -p "Introduction" \
- -u "Top" \
- -n "Makefiles" < $< > $@
-
-makefiles.texi: makefiles.t
- $(BMENU2) -p "Target Dependent Files Board Support Package Structure" \
- -u "Top" \
- -n "Linker Script" < $< > $@
-
-linkcmds.texi: linkcmds.t
- $(BMENU2) -p "Makefiles Creating a New BSP Make Customization File" \
- -u "Top" \
- -n "Ada95 Interrupt Support" < $< > $@
-
-adaintr.texi: adaintr.t
- $(BMENU2) -p "Linker Script Initialized Data" \
- -u "Top" \
- -n "Miscellaneous Support Files" < $< > $@
-
-support.texi: support.t
- $(BMENU2) -p "Ada95 Interrupt Support Version Requirements" \
- -u "Top" \
- -n "" < $< > $@
-
-init.texi: init.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-console.texi: console.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-clock.texi: clock.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-timer.texi: timer.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-rtc.texi: rtc.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-ata.texi: ata.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-ide-ctrl.texi: ide-ctrl.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-nvmem.texi: nvmem.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-#
-# Grab the chapter on writing a network device driver.
-#
-network.texi: ../networking/driver.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-shmsupp.texi: shmsupp.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-framebuffer.texi: framebuffer.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-analog.texi: analog.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-discrete.texi: discrete.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-CLEANFILES += bsp_howto.info bsp_howto.info-?
-
-EXTRA_DIST = adaintr.t analog.t ata.t clock.t console.t discrete.t \
- ide-ctrl.t init.t intro.t linkcmds.t makefiles.t nvmem.t rtc.t shmsupp.t \
- support.t target.t timer.t $(PNG_FILES) $(EPS_IMAGES)
diff --git a/doc/bsp_howto/TERMIOSFlow.eps b/doc/bsp_howto/TERMIOSFlow.eps
deleted file mode 100644
index 34db60faee..0000000000
--- a/doc/bsp_howto/TERMIOSFlow.eps
+++ /dev/null
@@ -1,25574 +0,0 @@
-%!PS-Adobe-3.0 EPSF-3.0
-%%LanguageLevel: 1
-%%Creator: pnmtops
-%%Title: noname.ps
-%%Pages: 1
-%%BoundingBox: 16 15 596 776
-%%EndComments
-%%BeginSetup
-/readstring {
- currentfile exch readhexstring pop
-} bind def
-/picstr 1003 string def
-%%EndSetup
-%%Page: 1 1
-gsave
-16.4265 15.84 translate
-579.147 760.32 scale
-0.5 0.5 translate 90 rotate -0.5 -0.5 translate
-1003 764 8
-[ 1003 0 0 -764 0 764 ]
-{ picstr readstring }
-image
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffdeeeffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffd6f6ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-d6f6ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffceffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffff6d6ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff619dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff619dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff619dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff40beffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff00ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff619dffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff40beffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffbe40ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d
-7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff619dffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff40beffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff619dffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff40beffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff00ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff619dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffe6f2ffffffffff
-ffffffcef2ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff619dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff3c85ffffffffffffffff2485ffffffffffffffffffffe661
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffbe61ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffe63c0085ffffffffffffffff85
-beffffffffffffffffffff8524ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff3c3cffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff85
-24502485ffffffffffffffffffffffffffffe6cee6ffffff8524ffffffff
-ffdaceffffffffffffffdae6ffffffe6daffffffffffffffffffffffffff
-ceceffffffff3c3cffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff61a1ff2485ffffffffffffffff2485ff8550
-7524242475ff8524002485ffce3c24242485ffffce24750024da24952400
-955050ffffff8524ffff50753c24243cceff50000024ceffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7daeffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff79beffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff2485
-ffffffffffffffff2485ff850061ffff6124e6ff8524ffffff2461ffffa1
-00b2ffce003cbeb2ff2424a1beff3c3cffffff8524ffff3c2495ffff613c
-ffff3c3cffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff619dffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff2485ffffffffffffffff2485ff8524e6ffffda
-00ceff8524ffff9524ffffffff613cffce00a1ffffff2461ffffff3c3cff
-ffff8524ffff3c24ffffffe624beff3c3cffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff619dffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff2485ffffffff
-ffffffff2485ff8524ffffffff24ceff8524ffff61003c3c3c3c2424ffce
-00ceffffff2485ffffff3c3cffffff8524ffff3c75ffffffff2485ff3c3c
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff619dffffffffffffffffffff0061ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffff40beffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff2485ffffffffffffffff2485ff8524ffffffff24ceff85
-24ffff5024858585858585ffce00ceffffff2485ffffff3c3cffffff8524
-ffff3c85ffffffff2485ff3c3cffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff619dffffffffffffffffffff0061
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffff40be
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff00ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff2485ffffffffffffffff
-2485ff8524ffffffff24ceff8524ffff8524ffffffffb2ceffce00ceffff
-ff2485ffffff3c3cffffff8524ffff3c3cffffffe624beff3c3cffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61
-9dffffffffffffffffffff0061ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffff40beffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff00ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff2485ffffffffffffffff2485ff8524ffffffff24ceff8524f2ffe6
-2461ffffe62461ffce00ceffffff2485ffffff6124f2fff23c24ffff3c24
-ceffff6124ffff3c3cffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff619dffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffffff40beffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff2485ffffffffffffffff2485ff85
-24ffffffff24ceffda002485ffa124243c243cffffce00ceffffff2485ff
-ffffda24243c247524ffff3c24243c2424ceffff950024ceffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff619dffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffce
-f2ffffffffffffffffcef2fff2ceffffffffceffffffdacef2ffffe6a185
-ceffffffffceffffffffcef2ffffffffffa195e6ffceffff3c3ce695a1ff
-ffffffffceceffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff619dffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff3c3cffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff0061ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff3c3cffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff0061
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff9595ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-61ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff0061ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff619dffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff619dffff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff619dffffffffffffffffffff0061ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffff40beffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7d
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff619dffffffffffff
-ffffffff0061ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffff40beffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff619dffffffffffffffffffff0061ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-61ffffffffffffffffffffffffffffffff40beffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff619dffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-40beffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff00ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb2
-3c242475ffffb250ffffffff9550ffffb23c242475ffffff61955024613c
-b2ffffffe63ce6ffffffffff50ce61242461ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff619dffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffb20085ceb22461ffff24a1ffffff3c75ffb200
-85ceb22461ffff3c245085b25050ffffff7524ffffffffffff242485ce95
-0085ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff619dffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff3c61ffffffbe
-00daff503cffffda00daff3c61ffffffbe00daff3c24ffffffa124e6ffff
-2485ffffffffffff2450ffffff3c3cffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff0061ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff2450858585852485ffbe24e6ff753cffff245085858585
-2485ff3c3cffffffff2495ffbe24e6ffffffffffff2485ffffff853cffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff0061ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffce003c3c3c3c3c3c95ffff
-2495ff2495ffce003c3c3c3c3c3c95ff3c3cffffffff613cff6150ffffff
-ffffffff2485ffffff853cffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0061ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff2495ffffffffe6ffffff753cb224ffffff2495ffffffffe6ffff3c
-3cffffffffda00ce24a1ffffffffffffff2485ffffff853cffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff503cffffffa124ceffffe6245050
-ffffff503cffffffa124ceff3c3cffffffffff3c5024ffffffffffffffff
-2485ffffff853cffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff619dffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffda
-243c85752461ffffffff3c00beffffffda243c85752461ffff3c3cffffff
-ffff950061ffffffffffffffff2485ffffff853cffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff619dffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffe6853c61a1ffffffffffbe85ffffffffff
-e6853c61a1ffffff9595ffffffffffce00beffffffffffffffff85beffff
-ffbe95ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff619dffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffff40beff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff953c
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff619d
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffff40beffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff00ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffb27524a1ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff619dffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffff40beffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff953c75ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff619dffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffff40beffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff00ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe
-40ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff619dffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff619dffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff0061ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff0061
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff5050ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffa1ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff0061ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff3c3cffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff8524ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff3c3cffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff85
-24ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff619dffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffb23c242485
-ffff3c3c85242450daffffff8524242450daffff50b23c24a1ff85242424
-50daffffffb23c242485ff9524003c95ffff6124243cbeffff956175243c
-ffbe3c242450daffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff619dffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffb20085cea12475ff3c0061ceb2243cffff8524a1cebe3c
-3cffff24246175e68524a1cebe3c3cffffb20085cea12475f27524cef2ff
-3c3cbece6124daff85243c8585e62475cece3c3cffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff619dffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff0061ffffffffffffffffffffffffff
-ffffff40beffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff3c61ffffff8550ff3c24
-ffffff9524ffff6185ffffff8524ffff2450ffffff6185ffffff8524ffff
-3c61ffffff8550ff8524ffffa124e6ffffff5050ff8500daffffce24ceff
-ffda95ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff619dffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff0061
-ffffffffffffffffffffffffffffffff40beffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff24a1ffffffffffff3c3cffffffce24ffffffffcebe853c24ffff24
-85ffffffffffcebe853c24ffff24a1ffffffffffff8524ffff7524858585
-855024ff8524ffffffff242450a1e6ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff619dffffffffffffffffffff00
-61ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff40
-beffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff00ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffff224ceffffffffffff3c3cffffffce
-24ffffa124243c615024ffff2485ffffffa124243c615024fff224ceffff
-ffffffff8524ffff3c243c3c3c3c3c50ff8524fffffffff2753c242461ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-619dffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffff40beffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff00ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff24
-95ffffffe685ff3c3cffffffce24ffff2461ffffff8524ffff2485ffffff
-2461ffffff8524ffff2495ffffffe685ff8524ffff8524ffffffffe6ffff
-8524ffffffffe6ffffff9500beffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff619dffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff5050ffffff613cff3c3cffffffce24ffda00
-a1ffffff5024ffff2485ffffda00a1ffffff5024ffff5050ffffff613cff
-8524ffffbe00a1ffffff3c50ff8524ffffffa124e6ffffe624beffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff619dffff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffda24508561
-24b2ff3c3cffffffce24ffff3c2485853c3c24e6ff2485ffffff3c248585
-3c3c24e6ffda2450856124b2ffbe003c95ff610061853c24daff8524ffff
-ffff3c3c85853c3cffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff0061ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffe6853c61daffff9595fffffff285ffffff853c61be
-ff85daff85beffffffff853c61beff85daffffe6853c61daffffff9585be
-ffffa1613c85e6ffffbe85ffffffffff95505095ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff0061ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0061ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-61ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff619dffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff619dffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff619dff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff0061ffffffffffffff
-ffffffffffffffffff40beffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff00ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff619dffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff0061ffffffffffffffffffffffffffffffff40beffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffbe40ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d
-7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff619dffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0061ffffffffffffffffffffff
-ffffffffff40beffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff619dffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffff40beffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff00ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff8d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7deeffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff619dffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffa5407d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7148ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff619dffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffff620e6ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff50
-aeffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7d
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffd630f6ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffe620f6ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff718dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff50aeffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffff620e6ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffc638ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff9569ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff619dffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff30ceffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff30ceffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff619dffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-9569ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffc638ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff619dffffffffffffffffffff0061ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffff40beffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffff620e6ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff50aeffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff619dffffffffffffffffffff0061
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffff40be
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff00ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff718dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffe620f6ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61
-9dffffffffffffffffffff0061ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffff40beffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff00ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffde28f6ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7985ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff619dffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffffff40beffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff50aeffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffff61cd2e6e6e6e6ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff619dffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffb648ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffa548
-cecececedaffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff619dffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff30ceffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff2ca5cecececeeeffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff0061ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff8d71ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffce28cecece
-ced6ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff0061
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffe630e6ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff5d81cecececeeaffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-61ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff0061ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff718dffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffe61cc6cecececefa
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffce38f6ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff8561cecececee2ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff619dffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff48b6ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffff624b2cecececef6ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff619dffff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffae
-50ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffae40cecececedaffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff619dffffffffffffffffffff0061ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffff40beffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffff630d6ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff3c99cecececeeeffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7d
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff619dffffffffffff
-ffffffff0061ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffff40beffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff8d71ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ce28cecececed2ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff619dffffffffffffffffffff0061ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-61ffffffffffffffffffffffffffffffff40beffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffe620f6ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff6d75cecececee6ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff619dffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-40beffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff00ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff6995ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffe624c2
-cecececefaffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff619dffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffce30ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff8d5dcecececedeffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff619dffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff38c6ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffff634a5cecece
-cef6ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff0061ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffae50ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffae40cecececed6ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff0061ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffff620e6ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff4c8dcecececeeaff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0061ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff8579ffffffffffffff
-ff5024ceffffffffffffff2424ffffffffffffff952424e6ffffffffffff
-ff24242424242424242450daffffff242424242424242424242424ffffff
-ffffffffffce30c6cececed2ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffbeffffffffffffffffffffffffffffffffffffff
-ffffffbeffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffe620f6ffffffffffffffff3c00ceffffffffffffff2424ffffffff
-ffffff3c000085ffffffffffffff24003c3c3c3c3c3c240024e6ffff503c
-3c3c3c00003c3c3c3c50ffffffffffffffffff6d75cecececee2ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff20deffffffffff
-ffffffffffffffffffffffffffffffde20ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff619dffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff59a5ffffffffffffffffff3c00ce
-ffffffffffffff2424ffffffffffffda00752424ffffffffffffff2424ff
-ffffffffffff610061ffffffffffffff2424ffffffffffffffffffffffff
-ffffee24bacecececef6ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff20deffffffffffffffffffffffffffffffffffffffffde20
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff619dffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffce30
-ffffffffffffffffffff3c00ceffffffffffffff2424ffffffffffff6100
-be6100a1ffffffffffff2424ffffffffffffffce0024ffffffffffffff24
-24ffffffffffffffffffffffffffffff8d5dcecececedeffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff20deffffffffffffffffff
-ffffffffffffffffffffffde20ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff619dffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffff40beff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff30ceffffffffffffffffffff3c00ceffffffff
-ffffff2424ffffffffffff2424ffda0050ffffffffffff2424ffffffffff
-ffffce0024ffffffffffffff2424ffffffffffffffffffffffffffffffff
-2ca5cecececef2ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff20deffffffffffffffffffffffffffffffffffffffffde20ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff619d
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffff40beffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff00ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff9d61ffffffffff
-ffffffffffff3c00ceffffffffffffff2424ffffffffffa10075ffff3c24
-e6ffffffffff2424ffffffffffffff610050ffffffffffffff2424ffffff
-ffffffffffffffffffffffffffbe34cecececedaffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff20deffffffffffffffffffffffffff
-ffffffffffffffde20ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff619dffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffff40beffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffff620e6ffffffffffffffffffffff3c00ceffffffffffffff24
-24ffffffffff5000daffff950075ffffffffff2424858585858585500024
-daffffffffffffff2424ffffffffffffffffffffffffffffffffff4c8dce
-cececeeaffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff20de
-ffffffffffffffffffffffffffffffffffffffffde20ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff619dffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffff40beffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff00ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe
-40ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7985ffffffffffffffffffff
-ffff3c00ceffffffffffffff2424ffffffffe6243cffffffe62424ffffff
-ffff24000000000000002450e6ffffffffffffffff2424ffffffffffffff
-ffffffffffffffffffffde20c6cecececefaffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff20deffffffffffffffffffffffffffffffffff
-ffffffde20ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff619dffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7985ffffffffffffffffffffffff3c00ceffffffffffffff2424ffffff
-ff750061cececece3c00a1ffffffff2424cecece952424a1ffffffffffff
-ffffffff2424ffffffffffffffffffffffffffffffffffde20c6cececece
-e2ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff20deffffffff
-ffffffffffffffffffffffffffffffffde20ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff619dffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffff620e6ffffffffffffffffffffff3c00
-ceffffffffffffff2424ffffffff2400000000000000003cffffffff2424
-ffffffffce2400a1ffffffffffffffffff2424ffffffffffffffffffffff
-ffffffffffff4c8dcecececececef6ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff20deffffffffffffffffffffffffffffffffffffffffde
-20ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff0061ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d61
-ffffffffffffffffffffff3c00ceffffffffffffda0024ffffffbe003c85
-85858585852400daffffff2424ffffffffffbe0000beffffffffffffffff
-2424ffffffffffffffffffffffffffffffffbe34cececececececedaffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff20deffffffffffffffff
-ffffffffffffffffffffffffde20ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff0061
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff30ceffffffffffffffffffff750075ffffff
-ffffffa10050ffffff5000a1ffffffffffff610061ffffff2424ffffffff
-ffff75003cffffffffffffffff2424ffffffffffffffffffffffffffffff
-ff2ca5cecececececececeeeffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff20deffffffffffffffffffffffffffffffffffffffffde20ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff0061ffffffffffffffffffffffffffffffffff
-ffffffffffffa1753c85daffffffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffce30ffffff
-ffffffffffffffbe0024ceffffffffe63c00a1ffffff2424ffffffffffff
-ffda0024ffffff2424ffffffffffffff3c0075ffffffffffffff2424ffff
-ffffffffffffffffffffffffff8d5dcececececececececed6ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff20deffffffffffffffffffffffff
-ffffffffffffffffde20ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff0061ffffffff
-ffffffffffffffffbe5024beffffffffffb224000000000050e6ffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff59a5ffffffffffffffffffff6100243c8585502400
-61ffffff950061ffffffffffffffff3c00a1ffff2424ffffffffffffffb2
-0024daffffffffffff2424ffffffffffffffffffffffffffffee24bacece
-cecececececececeeaffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff20
-deffffffffffffffffffffffffffffffffffffffffde20ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff619dffffff
-ffffffffffffff0061ffffffffffffffffffffff6100000085ffffffffbe
-000000000000000024e6ffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffe620f6ffffffffff
-ffffffffff9524240000002485ffffffff3c24beffffffffffffffff9524
-3cffff2424ffffffffffffffff61243cffffffffffff2424ffffffffffff
-ffffffffffffffff6d75cecececececececececececefaffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff20deffffffffffffffffffffffffffffffff
-ffffffffde20ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff619dffffffffffffffffffff0061ffffffffffffffff
-ffff500000002485ffffffff3c00002495cea13c000050ffffffffffffff
-ffff0061ffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff8579ffffffffffffffffffffffffe6cecedaffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffce30c6cecececececece
-cececececee2ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff20deffffff
-ffffffffffffffffffffffffffffffffffde20ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff619dffffffffffffff
-ffffff0061ffffffffffffffffffa100000085e6ffffffffa1000024ceff
-ffffff3c0000beffffffffffffffff0061ffffffffffffffffffffffffff
-ffffff40beffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffff620e6ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff4c8dcecececececececececececececef6ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff20deffffffffffffffffffffffffffffffffffffffff
-de20ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff619dffffffffffffffffffff0061ffffffffffffffffff3c0000
-a1ffffffffffff3c000085ffffffffffbe000061ffffffffffffffff0061
-ffffffffffffffffffffffffffffffff40beffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffae50ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffae40cecececececececececececece
-ceced6ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff20deffffffffffffff
-ffffffffffffffffffffffffffde20ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff619dffffffffffffffffffff00
-61ffffffffffffffffda000061ffffffffffffff240024e6ffffffffffff
-240024ffffffffffffffff0061ffffffffffffffffffffffffffffffff40
-beffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff00ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff40beffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffff62cae
-cecececececececececececececececeeeffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffde7d7d7d7d7d7d7d7d
-7d7d7d7d106d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d6d107d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7ddeffffffffffffff
-ffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-619dffffffffffffffffffff0061ffffffffffffffffa10000beffffffff
-ffffbe00003cffffffffffffff3c0024ffffffffffffffff0061ffffffff
-ffffffffffffffffffffffff40beffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff00ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ce30ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff8d5dcececececececececececececececececed2
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7d407d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d407dffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff619dffffffffffffffffffff0061ffffff
-ffffffffff850000ceffffffffffff75000075ffffffffffffff850000da
-ffffffffffffff0061ffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff718dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffe61cc6cecececece
-cecececececececececececedaffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff619dffff
-ffffffffffffffff0061ffffffffffffffff850000ceffffffffffff3c00
-00beffffffffffffff850024e6ffffffffffffff0061ffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffe628ee
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff6579cecececececececececececececececececeeeffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff0061ffffffffffffff
-ff850000ceffffffffffff240024ffffffffffffffff3c0024ffffffffff
-ffffff0061ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff8d71ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffce28cecececececececececece
-cececececececedeffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff0061ffffffffffffffffa10000beffffffffffbe00003cffffff
-ffffffffff240024ffffffffffffffff0061ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffff638ceffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-34a1cececececececececececececececececed6f6ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0061ffffffffffffffffda0000
-61ffffffffff61000075ffffffffffffffbe00003cffffffffffffffff00
-61ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffae50ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffae40cececececececececececececececece
-cecee2ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-0061ffffffffffffffffff3c0024ceffffffce240000daffffffffffffff
-3c000095ffffffffffffffff0061ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff50aeffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffff61cbacecece
-cecececececececececececececed6ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff619dffffffffffffffffffff0061ffffffffffffffffffa100002495ce
-a124000050ffffffffffffff61000024ffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffd630f6ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d69cecececececececececececececececececeeaffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffff
-ffffdaceffffffffffffffffffffffffffffffffffffffce85ceffffffff
-ffffffffff7d7dffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff619dffffffffffffffffffff0061ffff
-ffffffffffffffff3c0000000000000024e6ffffffffbe7524000000a1ff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff718dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffe61cc6cececececececece
-cececececececececed6ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffff
-ffffffffffffffffffffffffffffff3c00ceffffffffffffffffffffffff
-be61ffffff61000000daffffffffffffffff7d7dffffffffffffffffffff
-ffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff619dff
-ffffffffffffffffff0061ffffffffffffffffffffff61000000000024ce
-ffffffffff3c0000000075ffffffffffffffffffff0061ffffffffffffff
-ffffffffffffffffff40beffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff00ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffee28e6ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff5589cecececececececececececececececececef2ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffff613c
-daffffffffffffffffffffff95003cffffff240095beffffffffffffffff
-ff7d7dffffffffffffffffffffffffff7d7dffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff619dffffffffffffffffffff0061ffffffffffff
-ffffffffffffda853c5095ffffffffffffff3c00003cb2ffffffffffffff
-ffffffff0061ffffffffffffffffffffffffffffffff40beffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffbe40ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff9569ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffc630cececececececececececececece
-cecececedeffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffce
-e6ffffffffffffffcee6ffffffffffffffffffe6ceffffffff85003cffff
-ff2424ffffffffffffffffffffff7d7dffffffffffffffffffffffffff7d
-7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff619dffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffffffffffffffffff
-ff9585daffffffffffffffffffffffffff0061ffffffffffffffffffffff
-ffffffffff40beffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-30ceffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff2ca5ce
-cecececececececececececececececed6faffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dff
-ffffffffffffffff24247524002461ffffce2450610024ff5024ceffce24
-5075240024a1ff8524000024ce2400002450ffffffffffffffffff7d7dff
-ffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff619dffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffff40beffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff00ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff9d50cecececececececececececececececececee6
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7d7dffffffffffffffffff2400006175240075ff
-ce0000243c50ff3c00ceffce00003c85500024ff952400243cda3c00003c
-61ffffffffffffffffff7d7dffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff619dffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff50aeff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffff61cbacececececece
-cececececececececececed2ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffff
-ffffffff240075ffffa10024ffce0000a1ffffff3c00ceffce0024f2ffff
-2400ceff85003cffffff2424ffffffffffffffffffffff7d7dffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff619dffffffffffffffffffff0061fffffffffffffffff28585beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff9d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7daeffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffe620f6ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff6d75cecececececececececececececececececeeeffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7d7dffffffffffffffffff2400ceffffff2400cece0024ff
-ffffff3c00ceffce003cffffff2400ceff85003cffffff2424ffffffffff
-ffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff0061ff
-ffffffffffffffce000085ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff007d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d9dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7985ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffde20c6cecececececececececece
-cecececececed6ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffff
-2400ceffffff2400cece0024ffffffff3c00ceffce003cffffff2400ceff
-85003cffffff2424ffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff0061ffffffffffffffffce000085ffffffffffff
-ce2424ceffffffffffffffffffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffff620e6ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4c
-8dcecececececececececececececececececef6ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffffffffffffffff240075ffffbe0024ffce0024ffffffff3c
-00ceffce003cffffff2400ceff85003cffffff2424ffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff0061ffffffffff
-ffffffce000085ffffffffffffce0000ceffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff00ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffa559ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffb63ccecececececececececececececececece
-cedeffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7d7dffffffffffffffffff24000085
-be3c0050ffce0024ffffffff3c00ceffce003cffffff2400ceff85002485
-f2ff2424ffffffffffffffffffffff7d7dffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff0061ffffffffffffffffce000085ffffffffffffce0000ce
-ffffffffffffffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff00ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff30ceffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff2ca5cececece
-cececececececececececececed2faffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7d
-ffffffffffffffffff2400752400003cffffce0024ffffffff3c00ceffce
-003cffffff2400ceffda000000ceff2424ffffffffffffffffffffff7d7d
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff619dffffffffffffffffffff0061ffffffffffffffffce
-000085ffffffffffffce0000ceffffffffffffffffffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffce30ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff8d5dcecececececececececececececececececee6ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7d7dffffffffffffffffff2400cee685beffff
-ffffceceffffffffdaceffffffcedaffffffceceffffffda85a1ffffcece
-ffffffffffffffffffffff7d7dffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff619dffffffffffffffff
-ffff0061ffffffffffffffffce000085ffffffffffffce0000ceffffffff
-ffffffffffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffceffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffff2f2ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff9550ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff5095ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff619dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffe628bacecececececececece
-cecececececececed2ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffff
-ffffffffff2400ceffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffff
-ffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff619dffffffffffffffffffff0061ffffffffffffffffce000085ff
-ffffffffffce0000ceffffffffffffffffffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffff40beffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff
-ffffffffffffff613cffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffda24ceffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff8524ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff2485ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffe620f6ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff6d75cecececececececececececececececececeeeffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffff2400ceffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffff7d7dffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff619dffffffffffffffffffff0061
-ffffffffffffffffce000085ffffffffffffce0000ceffffffffffffffff
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffff40be
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff00ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff00ffffffffffffffffff3c3cffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffce00ceffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff2485ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8d
-71ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffce28cecececececececececececececece
-cececedaffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ff8585f2ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61
-9dffffffffffffffffffff0061ffffffffffffffffce000085ffffffffff
-ffce0000ceffffffffffffffffffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffff40beffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff00ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff00ffffffbe95b2
-3c7595242485f2ffff953c3c95ffffff95beb2503ca1ffb2503cb2ffffff
-b2503c61befffffffffffffffffffff275007595ffffbe613c61dafffff2
-85da5061f285f2953c50beff953c50daffffbe85ffffffbe613c61daffff
-fff2753c3c95ffffffffffffffffffffffffff953c50ce2485ffffffa150
-3c75f2ffffffe6753c61f285f2ffbe85fffffff285f2ffffe6753c50b2ff
-ffff9595ffffffbe85ffffffbe613c61daffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffff628deffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff4491cece
-cecececececececececececececececef6ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7d7dffffffffffffffffffffffffff7d7dffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff619dffffffffffffffffffff0061ffffffff
-ffffffffce000085ffffffffffffce0000ceffffffffffffffffffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffffff40beffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff00ffffff8524243c5095242485f2ff3c3c85852450ffff3c
-3c3c856100613c855000beff952475856100befffffffffffffffffff275
-007595ffa10061856124beffce243c3c3cff243c50853c245050853c24ff
-ff8524ffff850061856124b2ffff3c5085852450ffffffffffffffffffff
-ff3c248575240085ffff612475853c24f2ffe6243c85752424ceff8524ff
-ffffce00ceffda245085750085ffff3c3cffffff8524ffffa10061856124
-beffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffae387d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d6940cecececececececececececececececececee2ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff619dffffff
-ffffffffffffff0061ffffffffffffffffce000085ffffffffffffce0000
-ceffffffffffffffffffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffff8500b2ffffff3c
-3cffff8524f2ffffce24a1ff3c24f2ffff2424ffffff2485ff3c61ffffff
-50b2ffffffffffffffffffffce00ceffff2485ffffff613cffce0075ffff
-ff243cffffe62461ffffda00ceff8524ffe62485ffffff6124ffce24e6ff
-ffb250ffffffffffffffffffffa124ceffffbe0085ffbe00beffffff3c61
-ff6124ffffff8500ceff8524ffffffce00ceff5050ffffff9524e6ff3c3c
-ffffff8524ffff2485ffffff613cffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff9d7d7d7d7d6d6565656565656565656565656565
-65656565656565656565656565656565656565656565c2cecececececece
-cecececececececececed2faffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d
-7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d
-7dffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff619dffffffffffffffffffff0061ffffffffffffffff
-ce000075cecececececea10000a1cececececececececedaffffffffffff
-ffff0061ffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffff8524ffffffff3c3cffff3c3ccececece3c50ff3c3cffffff
-3c3cffffff3c85ff610075beffffffffffffffffffffffffffce00ceffce
-00a1cececea100dace00ceffffff2485ffffff2485ffffff24ceff8524ff
-a124ffffffffce00cee6243c95e6ffffffffffffffffffffffff613cffff
-ffff2485ff8524cececece6124ff2475ffffffe624ceff8524ffffffce00
-ceff2475cececece2495ff3c3cffffff8524ffce00a1cececea100daffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffface
-cececececececececececececececececececececececececececececece
-cececececececececececececececececececececececeeaffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff0061ffffffffffffffffce00000000000000000000000000000000
-0000000000003cffffffffffffffff0061ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff00ffffff8524ffffffff3c3cffff24
-24242424242450ff3c3cffffff3c3cffffff3c85ffff7524002450ffffff
-ffffffffffffffffce00ceff8500242424242424cece00ceffffff2485ff
-ffff2485ffffff24ceff8524ff8524ffffffffce00ceffbe3c242424a1ff
-ffffffffffffffffff3c3cffffffff3c85ff3c00242424242424ff2485ff
-ffffff24ceff8524ffffffce00cece0024242424242485ff3c3cffffff85
-24ff8500242424242424ceffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffe6cecececececececececececececececece
-cececececececececececececececececececececececececececececece
-cececececed6ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff0061ffffffffffffffffce000000
-000000000000000000000000000000000000003cffffffffffffffff0061
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff
-ffff8524ffffffff3c3cffff3c61ffffffffffffff3c3cffffff3c3cffff
-ff3c85ffffffffda952450ffffffffffffffffffffce00ceffbe24e6ffff
-ffffffffce00ceffffff2485ffffff2485ffffff24ceff8524ff9524ffff
-ffffce00ceffffffffbe6100daffffffffffffffffff613cffffffff3c85
-ff7524ffffffffffffff2475ffffffff24ceff8524ffffffce00ceff24a1
-ffffffffffffff3c3cffffff8524ffbe24e6ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffd2cecece
-cececececececececececececececececececececececececececececece
-cecececececececececececececececececeeeffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-61ffffffffffffffffce2424242424242424242424242424242424242424
-242450ffffffffffffffff0061ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff00ffffff8524ffffffff3c3cffff6124ffffff
-ff3c85ff3c3cffffff3c3cffffff3c85ff5075ffffff7524ffffffffffff
-ffffffffce00ceffe62495ffffff853cf2ce00ceffffff2485ffffff2485
-ffffff24ceff8524ffda00a1ffffff8524ffb23cffffffff24a1ffffffff
-ffffffffffa124e6ffffe62485ffa124ceffffff5061ff6124ffffffa100
-ceff8524ffffffa100ceff3c61ffffffbe24beff3c3cffffff6124ffe624
-95ffffff853cf2ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffeecececececececececececececececececececece
-cececececececececececececececececececececececececececececece
-daffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7d407d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d407dffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff00ffffff8524
-ffffffff612485f2e6243cbece5024e6ff3c3cffffff3c3cffffff3c85ff
-7524a1cea12475ffffffffffffffffffffe6246195ff750085ce952475ff
-ce00ceffffff2485ffffff2485ffffff24ceff8524ffff6124a1ce850085
-ffe62461cece6124e6ffffffffffffffffffff3c3cbebe3c2485ffff3c24
-a1ce7500b2ffe62461cea12400ceffda0061ce952400ceffb20061ceb224
-3cffff950085ce752424ffff750085ce952475ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffd6cececececece
-cececececececececececececececececececececececececececececece
-cececececececececececececef6ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffee7d7d7d7d7d7d7d7d7d7d7d7d106d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d6d107d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7deeffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff619dffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffff9550ffffffffda3c3cdaffda50242450daffff
-6161ffffff6161ffffff6195ffff853c243c85ffffffffffffffffffffff
-ff753c61ffff853c243c85ffffda3cdaffffff5095ffffff5095ffffff50
-daff9550ffffff853c243ca1ffffffda50242450daffffffffffffffffff
-ffffff612424a16195ffffff6124243cb2ffffffda50243c9500ceffffb2
-3c2450ce50daffffb23c242461ffffffff85242461ce50ffffff853c243c
-85ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffff6cecececececececececececececececececececececece
-cececececececececececececececececececececececececee2ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-20deffffffffffffffffffffffffffffffffffffffffde20ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff619dffff
-ffffffffffffffff0061ffffffffffffffffffe6ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffce00ceffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffe2cecececececececece
-cececececececececececececececececececececececececececececece
-cececececececed6faffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff20deffffffffffffffffffffffffffffff
-ffffffffffde20ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff619dffffffffffffffffffff0061ffffffffffffff
-ffce2450beffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffff40beffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffce00ceffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffacececececececececececececececececececececececececece
-cecececececececececececececececececececeeaffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff20deffff
-ffffffffffffffffffffffffffffffffffffde20ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7d
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff619dffffffffffff
-ffffffff0061ffffffffffffffffce0000002485e6ffffffffffffffffff
-ffffffffffffffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffff40beffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff00ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff50
-242424242424242485ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-85242424242424242450ffffffffffffffffffffffffffffffffffffffff
-ffffffce24ceffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffe6cececececececececececece
-cececececececececececececececececececececececececececececece
-ceced6ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff20deffffffffffffffffffffffffffffffffffffff
-ffde20ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff619dffffffffffffffffffff0061ffffffffffffffffda2400
-0000002450a1ffffffffffffffffffffffffffffffffffffffffffffff00
-61ffffffffffffffffffffffffffffffff40beffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffd6cececececececececececececececececececececececececececece
-cececececececececececececececef2ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff20deffffffffffff
-ffffffffffffffffffffffffffffde20ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff619dffffffffffffffffffff
-0061ffffffffffffffffffffa15024000000002475e6ffffffffffffffff
-ffffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-40beffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff00ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff00ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffff6b6ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffeececececececececececececececece
-cececececececececececececececececececececececececececedeffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff20deffffffffffffffffffffffffffffffffffffffffde20ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff619dffffffffffffffffffff0061ffffffffffffffffffffffffe68524
-000000002450a1ffffffffffffffffffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffff610f6ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffeee6
-e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6
-e6e6e6e6e6e6e6e6e6e6ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff20deffffffffffffffffffff
-ffffffffffffffffffffde20ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff619dffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffbe6124000000002461daffffffffffffff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff59a5ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffde7d7d7d7d7d7d7d7d7d7d7d
-7d106d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d6d107d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7ddeffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffffffffa1
-5024000000003ca1ffffffffffffffffffffffffff0061ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff85beff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffff2ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffae50ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d407d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d407dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffffffffffffe6953c000000002461beffffffffffff
-ffffffff0061ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff00ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff2485ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff8550ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffff618eeffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffffffffffffffffff
-da6124000000003c95ffffffffffffffff0061ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff00ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff2485ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff3c3cffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff619dffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffbe612400003cffffffffffffffff
-0061ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-a185a1ffffff2485e68585e6ffffffffda8585a1ffffffffceff95a1ffff
-e6958595e6ffffffffffa185a1ffffda3c3cceffffffbe8595e6ffffffda
-f2be85daffe69585a1ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffb648ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffce7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7daeffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7d7dffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff619dffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be6100003cffffffffffffffff0061ffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffce24243c243cffff243c243c2424b2ffff6124
-3c3c2424e6ffce24502424e6a1243c3c2424b2ffffce24243c243cff6124
-243cdaff3c243c3c24b2ffff3c61242461be243c3c2424e6ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffff618eeffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7d407d7d7d7d5d08
-5d7d7d7d7d7d5d084840ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff619dffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffffffffffffffffffffbe61240000000050ffffffffffffffff0061ffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff3c61fffff224
-75ff2424f2ffff2450ffce00befffff22485ffce0061fff2ff2485ffffff
-3c3cffff3c61fffff22475ff3c3cffff613cf2ffff6124ffff3c24beffff
-3c61fffff22495ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff6995
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7d7dffffffbe14beffffffffffbe14bebe40ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7d7dffffffffffffffffffffffffff7d7dffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff619dffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffffffffffffffda7524000000002461be
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffff40beff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffce00ceffffffdadaff2475ffffff753cffffcefffffff224
-85ffce00beffffffdaffffffff3c3cffce00ceffffffdadaff3c3cffff24
-75fffffff224a1ff3c3cffffff5024b2ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7d7dffffbe14beffffffffff
-be14beffbe40ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff619d
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffffffff
-e6953c00000000243ca1ffffffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffff40beffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff00ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe24ffffffffffffff2485
-ffffff853cffffbe613c24240085ffce00ceffffffe6753c2424003cffbe
-24ffffffffffffff3c3cffda0024242424240085ff3c3cffffffda3c0024
-3c95ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff18e6ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d7dffbe14beffffffffffbe14beffffbe40ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffff7d7dffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff619dffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffffa15024000000002475e6ffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffff40beffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff00ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffce24ffffffffffffff2485ffffff853cffbe006195ceff2485ffce00
-ceffffff243c85ceff3c3cffce24ffffffffffffff3c3cffe62495cecece
-cecef2ff3c3cffffffffffda95500075ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff6995ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dbe14beffffffffffbe14beffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffff
-7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff619dffffffff
-ffffffffffff0061ffffffffffffffffffffffffffbe5024000000002450
-a1ffffffffffffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffff40beffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff00ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff00ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffda00beffffff6150ff2485ffffff85
-3cff5024ffffffff2485ffce00ceffff9524e6ffffff3c3cffda00beffff
-ff6150ff3c3cffff2475ffffffe661daff3c3cffffff8595ffffff7524ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe
-40ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7d5d14
-beffffffffffbe14beffffffffbe3cffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7d
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7d
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff619dffffffffffffffffffff0061ffffffffffffffffff
-ffbe612400000000002485e6ffffffffffffffffffffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff50
-3ce6ffbe24a1ff2485ffffff853cff7524cefff2610085ffce00ceffffbe
-0095ffff85243cffff503ce6ffbe24a1ff5024ceff850095fff25024ffff
-3c3cffffff503ce6ffe63c50ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff20deffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7d08beffffffffffbe14beffffffffff8d30ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7d7dffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff619dffffffffffffffff
-ffff0061ffffffffffffffffda2400000000002461beffffffffffffffff
-ffffffffffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff5024242485ffff2485ffffff8550ffff3c
-24242485503cffce24ceffffff61242424618524ffffff5024242485ffff
-b22424ceff752424243cceffff5050ffffffff5024242450ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7985ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7d5dffffffffff
-be14beffffffffffbe103cffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff0061ffffffffffffffffce00000000
-3c95ffffffffffffffffffffffffffffffffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffceff
-ffffffffffffffffffffffffffe6ceffffffffffffffffffffffffffceff
-ffffffffffffffffceffffffffffffffffffffffcee6ffffffffffffffff
-ffffffffceffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffc638ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7d7dffffffffbe14beffffffffffbe148d40ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff0061
-ffffffffffffffffce002461daffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff20deffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d7dffffffbe14beffffff
-ffffbe14bebe40ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff0061fffffffffffffffff2a1ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffda3c3c3c3c3c3c3c3c50ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7985
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffbe14beffffffffffbe14beffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff00ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffcececececece
-cececeffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffd628ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7d7dffbe14beffffffffffbe14beff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff619dffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffcecedaffffffffffffffff0061ffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff28d6ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7d
-be14beffffffffffbe14beffffffbe40ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d
-7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d
-7dffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff619dffffffffffffffffffff0061ffffffffffffffff
-da3c3c95ffffffffffffffffffffffffffffffffff24003cffffffffffff
-ffff0061ffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7d5d14beffffffffffbe14beffffffffbe3cff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffff
-ffffffffffffff2424ffff852485ffff2424ffffffffffffffffffffffff
-ffffffffffffffffffffffff7d7dffffffffffffffffffffffffff7d7dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff619dffffffffffffff
-ffffff0061ffffffffffffffffce000085ffffffffffff852424ceffffff
-ffffffff24003cffffffffffffffff0061ffffffffffffffffffffffffff
-ffffff40beffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff00ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffd628ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7d08beffffff
-ffffbe14beffffffffff8d30ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffff2424ffff850085ffff24
-24ffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff619dffffffffffffffffffff0061ffffffffffffffffce000085
-ffffffffffff850000ceffffffffffffff24003cffffffffffffffff0061
-ffffffffffffffffffffffffffffffff40beffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff0840
-4040404040404040404040404040404040404040404040404040404069ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff28d6ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d5dffffffffffbe14beffffffffffbe103cffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffcecefffff2cef2ffffceceffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffff7d7dffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff619dffffffffffffffffffff00
-61ffffffffffffffffce000085ffffffffffff850000ceffffffffffffff
-24003cffffffffffffffff0061ffffffffffffffffffffffffffffffff40
-beffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff00ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffd6bebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebed6ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff8579ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffbe14beff
-ffffffffbe148d40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffff
-ffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-619dffffffffffffffffffff0061ffffffffffffffffce000085ffffffff
-ffff850000ceffffffffffffff24003cffffffffffffffff0061ffffffff
-ffffffffffffffffffffffff40beffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff00ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffde20ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7d7dffffffbe14beffffffffffbe14bebe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7d7dffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff619dffffffffffffffffffff0061ffffff
-ffffffffffce000085ffffffffffff850000ceffffffffffffff24003cff
-ffffffffffffff0061ffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff38c6ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7d7dffffbe14beffffffffffbe14
-beffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff619dffff
-ffffffffffffffff0061ffffffffffffffffce000085ffffffffffff8500
-00ceffffffffffffff24003cffffffffffffffff0061ffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff8579
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d
-7dffbe14beffffffffffbe14beffffbe40ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff0061ffffffffffffff
-ffce000085ffffffffffff850000ceffffffffffffff24003cffffffffff
-ffffff0061ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffde20ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7d7dbe14beffffffffffbe14beffffffbe40
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff0061ffffffffffffffffce000085ffffffffffff850000ceffff
-ffffffffff24003cffffffffffffffff0061ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d5d14beff
-ffffffffbe14beffffffffbe3cffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0061ffffffffffffffffce0000
-85ffffffffffff850000ceffffffffffffff24003cffffffffffffffff00
-61ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff9569ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d08beffffffffffbe14beffffffffff8d30ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-0061ffffffffffffffffce000085ffffffffffff850000ceffffffffffff
-ff24003cffffffffffffffff0061ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffe618ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7d5dffffffffffbe14
-beffffffffffbe103cffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff619dffffffffffffffffffff0061ffffffffffffffffce000085ffffff
-ffffff850000ceffffffffffffff24003cffffffffffffffff0061ffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff40beffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7d7dffffffffbe14beffffffffffbe148d40ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7d7dffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff619dffffffffffffffffffff0061ffff
-ffffffffffffce000085ffffffffffff850000ceffffffffffffff24003c
-ffffffffffffffff0061ffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff9569ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7d7dffffffbe14beffffffffff
-be14bebe40ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7d2040404040404040404040
-40303c40404040404040404040404040404040404040403c304040404040
-404040404040404040404040404040404040207dffffffffffffffffffff
-ffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff619dff
-ffffffffffffffffff0061ffffffffffffffffce000075cececececece75
-0000a1cecececececece24003cffffffffffffffff0061ffffffffffffff
-ffffffffffffffffff40beffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff00ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffee18f6ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7d7dffffbe14beffffffffffbe14beffbe40ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffeebebebebebebebebebebebebe18a5bebebebebebebebebebebebebebe
-bebebebebebea518bebebebebebebebebebebebebebebebebebebebebebe
-bebeeeffffffffffffffffffffffffff7d7dffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff619dffffffffffffffffffff0061ffffffffffff
-ffffce000000000000000000000000000000000000000000003cffffffff
-ffffffff0061ffffffffffffffffffffffffffffffff40beffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff48b6ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffbe40ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffbe14beffffffffffbe14beffffbe
-40ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff20deff
-ffffffffffffffffffffffffffffffffffffffde20ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d
-7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff619dffffffffff
-ffffffffff0061ffffffffffffffffce0000000000000000000000000000
-00000000000000003cffffffffffffffff0061ffffffffffffffffffffff
-ffffffffff40beffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d61
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dbe14
-beffffffffffbe14beffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff20deffffffffffffffffffffffffffffffffffff
-ffffde20ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff619dffffffffffffffffffff0061ffffffffffffffffda3c
-3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c61ffffffffffffffff
-0061ffffffffffffffffffffffffffffffff40beffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff00ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffee18f6ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7d5d14beffffffffffbe14beffffffffbe3cffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff20deffffffffff
-ffffffffffffffffffffffffffffffde20ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff619dffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff50aeffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7d08beffffffffff
-be14beffffffffff8d30ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff20deffffffffffffffffffffffffffffffffffffffffde20
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff619dffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffa559ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7d5dffffffffffbe14beffffffffffbe103cffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff20deffffffffffffffffff
-ffffffffffffffffffffffde20ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffff610f6ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7d7dffffffffbe14beffffff
-ffffbe148d40ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff20deffffffffffffffffffffffffffffffffffffffffde20ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffffffff
-ffe6ceffffffffffffffffffffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff59a5ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d7dffffffbe14beffffffffffbe14bebe40ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff20deffffffffffffffffffffffffff
-ffffffffffffffde20ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffe6853c2424240024243c61beffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffa559ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffbe14beffffffffffbe14beff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffce4040404040404040404040401438
-404040404040404040404040404040404040404038144040404040404040
-40404040404040404040404040404040ceffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff0061ffffffffffffffffffffffffe6612400000000000000
-000000003ca1ffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff9d4040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-40404040404071ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fff618eeffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dff
-be14beffffffffffbe14beffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d61
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebe617d
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff619dffffffffffffffffffff0061ffffffffffffffffff
-ffffce2400000000002424242424000000000061ffffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff408dbebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebe00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff619dffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7d7dbe14beffffffffffbe14beffffffbe40ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7d7dffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff619dffffffffffffffff
-ffff0061ffffffffffffffffffffce2400000050a1daffffffffe6be7524
-00000050ffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffb648
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7d5d14beffffff
-ffffbe14beffffffffbe3cffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffff
-ffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff619dffffffffffffffffffff0061ffffffffffffffffffff3c0000
-3cbeffffffffffffffffffffff8500000095ffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffff40beffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff40beffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff00ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffff618eeffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7d08beffffffffffbe14beffffffffff8d30ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffff7d7dffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff619dffffffffffffffffffff0061
-ffffffffffffffffffa100003cffffffffffffffffffffffffffffa10000
-24ffffffffffffffffff0061ffffffffffffffffffffffffffffffff40be
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff40beffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff00ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff619dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d5dffffffffffbe14beff
-ffffffffbe103cffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61
-9dffffffffffffffffffff0061ffffffffffffffffff500000beffffffff
-ffffffffffffffffffffff500000ceffffffffffffffff0061ffffffffff
-ffffffffffffffffffffff40beffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff40beffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff00ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffffffbe14beffffffffffbe148d40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7d7dffffffffffffffffffffffffff7d7dffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff619dffffffffffffffffffff0061ffffffff
-ffffffffff240024ffffffffffffffffffffffffffffffffbe000085ffff
-ffffffffffff0061ffffffffffffffffffffffffffffffff40beffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-40beffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff00ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff18e6ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7d7dffffffbe14beffffffffffbe14
-bebe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff619dffffff
-ffffffffffffff0061ffffffffffffffffff24003cffffffffffffffffff
-ffffffffffffffe6240050ffffffffffffffff0061ffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff6995ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7d
-ffffbe14beffffffffffbe14beffbe40ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d
-7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d
-7dffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff619dffffffffffffffffffff0061ffffffffffffffff
-ff240075ffffffffffffffffffffffffffffffffff24003cffffffffffff
-ffff0061ffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7d7dffbe14beffffffffffbe14beffffbe40ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff9585ffffffffffffffffffffff
-ffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff0061ffffffffffffffffce000085ffffffffffffffffffffffffff
-ffffffff24003cffffffffffffffff0061ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff40beffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff18e6ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7d7dbe14beff
-ffffffffbe14beffffffbe40ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff50
-0085ffffffffffffffffffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff0061ffffffffffffffffce000085
-ffffffffffffffffffffffffffffffffff24003cffffffffffffffff0061
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff40beffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff00ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff718dffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d5d14beffffffffffbe14beffffffffbe3cffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffe6ceffff
-ffffffffffffffffffffffff3c0085ffffffffffceceffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-61ffffffffffffffffce000085ffffffffffffffffffffffffffffffffff
-24003cffffffffffffffff0061ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff40beffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffc638
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d08beffffffffffbe14
-beffffffffff8d30ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffff
-ffffffffff85243c61240024b2ffff502485ffffce2424ff5000002424ff
-ffb22400002475ffffffffffffffffffffffffffff7d7dffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff0061ffffffffffffffffce000085ffffffff
-ffffffffffffffffffffffffff24003cffffffffffffffff0061ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff40beffffffffffffffffffff
-400c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c
-0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c
-0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c
-0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c1ceeffffffffffffffffffff
-ffffffffffffffffffffffff00ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff20deffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7d5dffffffffffbe14beffffffffffbe103cffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7d7dffffffffffffffffffffffff8500003c85500024e6ff3c00
-85ffffce0024ff6124002450ffda24006185240085ffffffffffffffffff
-ffffffff7d7dffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff619dffffffffffffffffffff0061ffffff
-ffffffffffce000085ffffffffffffffffffffffffffffffffff24003cff
-ffffffffffffff0061ffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffff0000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-0000c2ffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffd6bebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebee6ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7985ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7d7dffffffffbe14beffffffffff
-be148d40ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffff
-ff850024f2ffff240085ff3c0085ffffce0024ffff3c0085ffff610061ff
-ffb25085ffffffffffffffffffffffffff7d7dffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff619dffff
-ffffffffffffffff0061ffffffffffffffffce000075cececececececece
-cecececececececece24003cffffffffffffffff0061ffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffff00000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000c2ffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffe610404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-404040404040403830ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffc638ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d
-7dffffffbe14beffffffffffbe14bebe40ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7d7dffffffffffffffffffffffff85003cffffff75003cff3c0085ffffce
-0024ffff3c0085ffff3c0085ffffffffffffffffffffffffffffffffffff
-7d7dffffffffffffffffffffffffff7d7dffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff619dffffffffffffffffffff0061ffffffffffffff
-ffce000000000000000000000000000000000000000000003cffffffffff
-ffffff0061ffffffffffffffffffffffffffffffff40beffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff40beff
-ffffffffffffffffff000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-00000000000000000000000000000000000000000000000000000000c2ff
-ffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffde20ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffde20ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff28d6ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7d7dffffbe14beffffffffffbe14beffbe40
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffff85003c
-ffffff85003cff3c0085ffffce0024ffff3c0085ffff3c0085ffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffff7d7d
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff619dffffffffffff
-ffffffff0061ffffffffffffffffce000000000000000000000000000000
-000000000000003cffffffffffffffff0061ffffffffffffffffffffffff
-ffffffff40beffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff40beffffffffffffffffffff0000000000000000
-000000000030000000000000000000002424000000000000000000000000
-000000000000000000242400000000000000000000301800000000000000
-000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000c2ffffffffffffffffffffffffffffffffffff
-ffffffff00ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffde20ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffde20ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffbe14
-beffffffffffbe14beffffbe40ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffff850024f2ffff3c0085ff500075ffff950024ffff
-3c0085ffff500061ffffbe3c50ffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff619dffffffffffffffffffff0061ffffffffffffffffda3c3c
-3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c61ffffffffffffffff00
-61ffffffffffffffffffffffffffffffff40beffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff40beffffffffff
-ffffffffff000000000000000000005dc2daffdaae240000000018aedaff
-ffda9d1800000079dada00000000aeda790000009ddaffffda9d00000000
-0040c2daffdada7900000000aec22400000000000030dadadadadadadada
-300000000000000000000000000000000000000000000000c2ffffffffff
-ffffffffffffffffffffffffffffffffff00ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffde20
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffde20ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffd628ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dbe14beffffffffffbe14beffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7d7dffffffffffffffffffffffff8500003cbe8500
-00daff850024b2a1240024ffff3c005085ffbe000075a13c0061ffffffff
-ffffffffffffffffff7d7dffffffffffffffffffffffffff7d7dffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff619dffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-40beffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff40beffffffffffffffffffff0000000000000000009dffff
-dac2daffda24000024daffdadadadaffda24000079ffff89000000c2ff79
-0000c2ffdac2c2ffffae0000005dffffdac2daffffc2000000daff300000
-0000000030ffffdadadadadada3000000000000000000000000000000000
-00000000000000c2ffffffffffffffffffffffffffffffffffffffffffff
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff00ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffde20ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffde
-20ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff28d6ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7d5d14beffffffffff
-be14beffffffffbe3cffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffff
-ffffffffffff85003c3c000024a1ffffe624000024750024ffff95000024
-ffff75240000003cffffffffffffffffffffffffffff7d7dffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff619dffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ff000000000000000040ffff69000030daffae0000c2ffda30000024daff
-c2000079ffffda240000c2ff790024ffda18000069ffff240018daffc20c
-00004cdaff890000daff3000000000000030ffda00000000000000000000
-0000000000000000000000000000000000000000c2ffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffde20ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffde20ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7d08beffffffffffbe14beffffffffff8d30ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7d7dffffffffffffffffffffffff85003cffa195e6ffffffff
-ffa195e6ffceceffffffbe85beffffffe69585ceffffffffffffffffffff
-ffffffffff7d7dffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff619dffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffff0000000000000000aeffae000000004c
-89400024ffff400000000040ffff240079ffdaffc20000c2ff790030ffda
-400000007930000069ffda0c0000000079ffda0000daff30000000000000
-30ffda000000000000000000000000000000000000000000000000000000
-000000c2ffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffde20ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffde20ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffde20
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7d5dffffffffffbe14beffffff
-ffffbe103cffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffff
-ffff85003cffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff0061ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff40beffffffffffffffffffff000000
-0000000000daff79000000000000000079ffda000000000000daff790079
-ff9ddaff6900c2ff790000c2ffffda9d5d00000000c2ffc2000000000024
-ffff3000daff3000000000000030ffda7979797979690000000000000000
-00000000000000000000000000000000c2ffffffffffffffffffffffffff
-ffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffde20ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffceffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffdaffffffffffffffffffffffffffff
-ffffffffffffffffde20ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff38c6ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7d7dffffffffbe14beffffffffffbe148d40ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffff85003cffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff0061ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff40be
-ffffffffffffffffffff0000000000000000daff79000000000000000079
-ffc2000000000000c2ff790079ff7979ffda0cc2ff79000024aeffffffff
-da5d0000c2ff79000000000000daff3000daff3000000000000030ffffff
-ffffffffc2000000000000000000000000000000000000000000000000c2
-ffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffde20ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff6124ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffbe3c85ff
-ffffffffffffffffffffffffffffffffffffffffffde20ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff8579ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffbe14beffffffffffbe14bebe
-40ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffbe85
-95ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0061ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff40beffffffffffffffffffff00000000000000
-00daff79000000000000000079ffda000000000000daff790079ff7900c2
-ff9dc2ff79000000002479c2daffff4000c2ff9d000000000018daff3000
-daff3000000000000030ffda797979797969000000000000000000000000
-000000000000000000000000c2ffffffffffffffffffffffffffffffffff
-ffffffffff00ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffde20ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff2424ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff850085ffffffffffffffffffffffffffffffffffff
-ffffffffde20ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffde20ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-be14beffffffffffbe14beffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff40beffffffff
-ffffffffffff0000000000000000c2ff8900000000306918005dffda0000
-00000000daff5d0079ff790040ffffdaff790024404c00000018daff8900
-9dffc2000000000040ffda1800daff3000000000000030ffda0000000000
-00000000000000000000000000000000000000000000000000c2ffffffff
-ffffffffffffffffffffffffffffffffffff00ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffde
-20ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff2424ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff850085ffffffffff
-ffffffffffffffffffffffffffffffffffde20ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff38c6ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7d7dffbe14beffffffffffbe14beffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7d7dffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff619dffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffff000000000000000089ffda
-0c000000aeffc20018daff9d0000000089ffda180079ff7900009dffffff
-790079ffda00000000c2ff9d005dffff5d00000000c2ffc20000daff3000
-000000000030ffda00000000000000000000000000000000000000000000
-0000000000000000c2ffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffde20ffffffffffffffffffffffffffffffff
-ffffffffffffffffce8585a1ffffffffffffdacef2ffffffffffdacef2ff
-f2ce2424ceceffffdaceffffbe8585dafffffffffff2cedafffffffffff2
-cedaffffce750075cedaffffffffffffffffffffffffffffffffffffffff
-de20ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff9569ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7d7dbe14beffffff
-ffffbe14beffffffbe40ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff619dffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffff00000000000000000cdaffc25d309dffff5d000089ffff9d40409dff
-ff89000079ff7900000cdaffff790018daff9d403089ffff5d0000c2ffff
-89305dc2ffff4c0000daff8979797979790030ffda797979797979400000
-000000000000000000000000000000000000000000c2ffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffde20ffffff
-ffffffffffffffffffffffffffffffffffffffb23c000000002485ffffff
-ff3c0085ffffffffff3c0085ff850000000000ceff3c00be3c0000000050
-ffffffff85003cffffffffff85003cffff24000000003cffffffffffffff
-ffffffffffffffffffffffffffde20ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffe618ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7d5d14beffffffffffbe14beffffffffbe3cffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7d7dffffffffffffffffffffffffff7d7dffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff619dffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffff40beff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff40beffffffffffffffffffff00000000000000000030daffffffff
-ff9d000000009dffffffffffff9d00000079ff7900000069ffff7900005d
-ffffffffffff9d00000000c2ffffffffffda5d000000daffffffffffffda
-0030ffffffffffffffff7900000000000000000000000000000000000000
-00000000c2ffffffffffffffffffffffffffffffffffffffffffff00ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffde20ffffffffffffffffffffffffffffffffffffffff
-ffa1000061bece75240061ffffff3c0085ffffffffff3c0085ffbe852424
-8585f2ff3c00242485cebe3c003cffffff85003cffffffffff85003cffff
-855000508595ffffffffffffffffffffffffffffffffffffffffde20ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7d08beffffffffffbe14beff
-ffffffff8d30ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff619d
-ffffffffffffffffffff0061fffffffffffffffffffffffffffffff2ffff
-ffffffffffffffffffffffffffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffff40beffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff40beffffffffffffffffffff0000
-00000000000000000069aec289400000000000002479c2c2792400000000
-407940000000006979400000002479c2c289400000000000004089c2ae69
-18000000007979797979797979000c797979797979797940000000000000
-0000000000000000000000000000000000c2ffffffffffffffffffffffff
-ffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff00ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffde20ffffffffffffff
-ffffffffffffffffffffffffffff240095ffffffffce2400beffff3c0085
-ffffffffff3c0085ffffff2424ffffffff3c0000beffffffff3c0095ffff
-85003cffffffffff85003cffffff850085ffffffffffffffffffffffffff
-ffffffffffffffffffde20ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff9569ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d5dffffffffffbe14beffffffffffbe103cffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffff7d7dffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff619dffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffff502461f2ffffffffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffff40beffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff40
-beffffffffffffffffffff00000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-c2ffffffffffffffffffffffffffffffffffffffffffff00ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffde20ffffffffffffffffffffffffffffffffffffffffa10024ff
-ffffffffff610061ffff3c0085ffffffffff3c0085ffffff2424ffffffff
-3c0061ffffffffffa1003cffff85003cffffffffff85003cffffff850085
-ffffffffffffffffffffffffffffffffffffffffffffde20ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffe620
-f6ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffbe14beffffffffffbe14
-8d40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7d204040404040404040404040303c
-40404040404040404040404040404040404040403c304040404040404040
-404040404040404040404040404040207dffffffffffffffffffffffffff
-7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff619dffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffff240024ffffffff
-ffffffffffffffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffff40beffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffaeeeffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff40beffffffffffffffffffff000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-00000000000000000000000000c2ffffffffffffffffffffffffffffffff
-ffffffffffff00ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff00ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff9dffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffde20ffffffffffffffffffffff
-ffffffffffffffffff750075ffffffffffffbe0024ffff3c0085ffffffff
-ff3c0085ffffff2424ffffffff3c00a1ffffffffffe62424ffff85003cff
-ffffffff85003cffffff850085ffffffffffffffffffffffffffffffffff
-ffffffffffde20ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff48b6ffffffffffffffffffffffffffffffee
-aeffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe
-40ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffde484040403c303c40404040403c303c207dff
-ffffbe14beffffffffffbe14bebe104040403c303c40404040403c303c40
-b6ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffeebe
-bebebebebebebebebebebe18a5bebebebebebebebebebebebebebebebebe
-bebebea518bebebebebebebebebebebebebebebebebebebebebebebebeee
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff619dffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffce00003cffffffffffffffffffffffffffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff4030eeffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffff0000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000c2ffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-de20ffffffffffffffffffffffffffffffffffffffff3c0085ffffffffff
-ffce0024ffff3c0085ffffffffff3c0085ffffff2424ffffffff3c00ceff
-ffffffffff2424e6ff85003cffffffffff85003cffffff850085ffffffff
-ffffffffffffffffffffffffffffffffffffde20ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff9d61ffffff
-ffffffffffffffffffffffffbe009dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffff65961be8d10
-8dbebebebebe8d108dbebeeeffffbe14beffffffffffbe14beffffbebebe
-8d108dbebebebebe8d108d9d28deffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff20deffffffff
-ffffffffffffffffffffffffffffffffde20ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff619dffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffff24003cffffffffffffffff
-ffffffffffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff408d40eeffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffff00000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000c2ffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff009d61ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffde20ffffffffffffffffffffffffffffff
-ffffffffff3c0085ffffffffffffce0024ffff3c0085ffffffffff3c0085
-ffffff2424ffffffff3c00ceffffffffffff2424e6ff85003cffffffffff
-85003cffffff850085ffffffffffffffffffffffffffffffffffffffffff
-ffde20ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffee18f6ffffffffffffffffffffffffffffbe40619dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff617914beffffffffffbe14beffffffffffbe14beff
-ffffffffbe14beffffffffffbe14beffffffffffbe14bede40deffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff20deffffffffffffffffffffffffffffffffffffffffde
-20ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff0061ffffffffffffffffffffffffff
-ffff850000a1ffffffffffffffffffffffffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff40bece40eeffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff40beffffffffffffff
-ffffff000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-00000000000000000000000000000000000000000000c2ffffffffffffff
-ffffffffffffffffffffffffffffff00ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff00ff9d61ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffde20ffff
-ffffffffffffffffffffffffffffffffffff750075ffffffffffffbe003c
-ffff3c0085ffffffffff3c0085ffffff2424ffffffff3c00beffffffffff
-e62424ffff85003cffffffffff85003cffffff850085ffffffffffffffff
-ffffffffffffffffffffffffffffde20ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff48b6ffffffffffff
-ffffffffffffffffbe40ff619dffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff4c79ffffffffff
-be14beffffffffffbe14beffffffffffbe14beffffffffffbe14beffffff
-ffffbe14bede40deffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff20deffffffffffffffff
-ffffffffffffffffffffffffde20ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff0061
-ffffffffffffffffffffffffffffffff9524005095cecececececececece
-cedaffffffffffffffff0061ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff40be
-ffce40eeffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff40beffffffffffffffffffff0000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-0000000000c2ffffffffffffffffffffffffffffffffffffffffffff00ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff
-ff9d61ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffde20ffffffffffffffffffffffffffffffffffffff
-ffa10024ffffffffffff610061ffff3c0085ffffffffff240085ffffff24
-24ffffffff3c0061ffffffffffa1003cffff85003cffffffffff50003cff
-ffff850085ffffffffffffffffffffffffffffffffffffffffffffde20ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffa559ffffffffffffffffffffffffffffbe40ffff619dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff619dffffffbe14beffffffffffbe14beffffffffffbe14
-beffffffffffbe14beffffffffffbe14bede40deffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff20deffffffffffffffffffffffffffffffffffffffffde20ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffcedeffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff0061ffffffffffffffffffffffffffffff613c
-3c000000000000000000000000003cffffffffffffffff0061ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff40beffffce40eeffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff40beffffffffffffffffffff00
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000c2ffffffffffffffffffffff
-ffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff00ffffff9d61ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffde20ffffffffffff
-ffffffffffffffffffffffffffffff240095ffffffffce2400beffff7500
-50ffffffff95000085ffffff2424ffffffff3c0024ceffffffff3c00a1ff
-ffbe0024f2ffffffce24003cffffff850075ffffffffffffffffffffffff
-ffffffffffffffffffffde20ffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffff610f6ffffffffffffffffff
-ffffffffbe40ffffff619dffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff619dffbe14beffffff
-ffffbe14beffffffffffbe14beffffffffffbe14beffffffffffbe14bede
-40deffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff20deffffffffffffffffffffffff
-ffffffffffffffffde20ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d20deffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffff3c0000000000000000000000000000003cffff
-ffffffffffff0061ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff40beffffffce
-40eeffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-40beffffffffffffffffffff0000000000000079c29d00000079c2c24000
-0000aec22469c2c2c2c2c2c27918000024c2c22469c2c2c2c2c2c2c2c29d
-009dc2c2c2c2c2c2c29d0000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-00c2ffffffffffffffffffffffffffffffffffffffffffff00ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff9d
-61ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffde20ffffffffffffffffffffffffffffffffffffffffffa100
-0061cece85240061ffffffbe000061bebe61003c0085ffffff24005085da
-ff3c000024a1cea13c003cffffffff24003ca1ce75243c003cffffff9500
-247585ffffffffffffffffffffffffffffffffffffffffde20ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff59a5ffffffffffffffffffffffffffbe40ffffffff619dffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff617914beffffffffffbe14beffffffffffbe14beffffffffff
-be14beffffffffffbe14bede40deffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff20
-deffffffffffffffffffffffffffffffffffffffffde20ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7d6140deffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff619dffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffff613c3c3c3c3c
-3c3c3c3c3c3c3c3c3c3c61ffffffffffffffff0061ffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff40beffffffffce40eeffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffff0000000000
-00005dffda000000c2ffff89000030ffda0079ffffffffffffffda240030
-ffff3079ffffffffffffffffc200c2ffffffffffffffc200000000000000
-000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000c2ffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffff9d61ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffde20ffffffffffffffffffff
-ffffffffffffffffffffffffa124000000002475ffffffffff8524000000
-2485850085ffffff85000000a1ff3c00613c0000000061ffffffffffbe24
-0000000061be003cffffffff24000024ffffffffffffffffffffffffffff
-ffffffffffffde20ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffa559ffffffffffffffffffffffffff
-be40ffffffffff619dffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff4c79ffffffffffbe14beff
-ffffffffbe14beffffffffffbe14beffffffffffbe14bede40deffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff20deffffffffffffffffffffffffffffffff
-ffffffffde20ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7d7dde40deffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff619dffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff40beffffffffffce40ee
-ffffffffffffffffffffffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffff0000000000000024ffff240000daffffc2000079ffc2
-0079ffc23030305ddaff9d0030ffff300c303030daff5d30302400c2ff89
-303030303024000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000c2ffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffff9d61ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffde20ffffffffffffffffffffffffffffffffffffffffffffffffbe8585
-a1e6ffffffffffffffe6958595e6fff2cef2ffffffffda9595f2ff3c0085
-ffa18585daffffffffffffffffa18585daffffcedaffffffffffbe85beff
-ffffffffffffffffffffffffffffffffffffffde20ffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffff610
-f6ffffffffffffffffffffffffbe40ffffffffffff619dffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff619dffffffbe14beffffffffffbe14beffffffffffbe14beffffff
-ffffbe14bede40deffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff20deffffff
-ffffffffffffffffffffffffffffffffffde20ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dff
-ffffffffffffce4040404040404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-40404040404048deffffffffffffffffff7d7dffde40deffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff619dffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff0061ffffffffffffffffffffffffff
-ffffff40beffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff40beffffffffffffce40eeffffffffffffffffffffffffffffffff
-ffffffffffffffffff40beffffffffffffffffffff0000000000000000da
-ff5d005dffc2dada0000aeff890079ffc20000000089ffc20030ffff3000
-000000daff3000000000c2ff790000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-00000000000000000000c2ffffffffffffffffffffffffffffffffffffff
-ffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff00ffffffffffffff9d61ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffde20ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff3c0085ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffde20ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff59a5ffffffffffffffffffffffffbe40ffff
-ffffffffff619dffffffffffffffffffffffffffffffffffffffbe40ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff619dffbe14beffffffffffbe14
-beffffffffffbe14beffffffffffbe14bede40deffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff20deffffffffffffffffffffffffffffffffffffffff
-de20ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7d7dffffffffffffff7d61bebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebe489dffffffffffffffffff
-7d7dffffde40deffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff619dffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff0061
-ffffffffffffffffffffffffffffffff40beffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff40beffffffffffffffce40eeffff
-ffffffffffffffffffffffffffffffffffffffffffff40beffffffffffff
-ffffffff0000000000000000aeff9d009dff79c2ff4000daff400079ffc2
-0000000cc2ffae0030ffff3000000000daff3000000000c2ff8930303030
-300000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000c2ffffffffffff
-ffffffffffffffffffffffffffffffff00ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff00ffffffffffffffff9d61ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffde20ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff3c0085ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffde20ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffb648ffffff
-ffffffffffffffffffbe40ffffffffffffffff619dffffffffffffffffff
-ffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff617914beffffffffffbe14beffffffffffbe14beffffffffffbe14bede
-40deffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff20deffffffffffffff
-ffffffffffffffffffffffffffde20ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff619dffffffffffffffffff7d7dffffffde40deffffffffffffffffff
-ffffffffffffffffffffffffffffffffff619dffffffffffffffffffff00
-61ffffffffffffffffffffffffffffffffffffff953c24242424243c95ff
-ffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff40
-beffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff40
-beffffffffffffffffce40eeffffffffffffffffffffffffffffffffffff
-ffffffffff40beffffffffffffffffffff000000000000000069ffc200da
-ff2489ff8918dada000079ffdac2c2dadaffda240030ffff3000000000da
-ff3000000000c2ffffffffffffff30000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000c2ffffffffffffffffffffffffffffffffffffffffffff00
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff00ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-ffffffffffffffffff9d61ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffde20ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff3c0085ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffde20
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffff618eeffffffffffffffffffffffbe40ffffffffffff
-ffffff619dffffffffffffffffffffffffffffffffffbe40ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff4c79ffffffffffbe14beffffffffff
-be14beffffffffffbe14bede40deffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff20deffffffffffffffffffffffffffffffffffffffffde20ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7d7dffffffffffffff7d7dffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff619dffffffffffffffffff7d7dffff
-ffffde40deffffffffffffffffffffffffffffffffffffffffffffffffff
-619dffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-ffb22400000000000000000024b2ffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffff40beffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff40beffffffffffffffffffce40eeffffffff
-ffffffffffffffffffffffffffffffffffff40beffffffffffffffffffff
-000000000000000024ffda18dada0040ffc25dffc2000079ffffdadaffda
-7918000030ffff3000000000daff3000000000c2ffdac2c2c2c2c2240000
-000000000000000000000000000000000000000000000000000000000000
-00000000000000000000000000000000000000c2ffffffffffffffffffff
-ffffffffffffffffffffffff00ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff00ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff00ffffffffffffffffffff9d61ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffde20ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff502485ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffde20ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff619dffffffffffff
-ffffffffffbe40ffffffffffffffffffff619dffffffffffffffffffffff
-ffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61
-9dffffffbe14beffffffffffbe14beffffffffffbe14bede40deffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff20deffffffffffffffffffffff
-ffffffffffffffffffee1000000000000000000000000000000000000000
-00000000000000000000000000000000000000000000000000000000007d
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff5500
-000000000000000000009dffffffffffde40deffffffffffffffffffffff
-ffffffffffffffffffffffffff619dffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffffa100000000243c3c3c2400000000b2ffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffce40eeffffffffffffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffff000000000000000000daff9dffae0000da
-da9dff89000079ffc20030daffc200000030ffff3000000000daff300000
-0000c2ff7900000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-0000c2ffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffff9d61ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffde20ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffde20ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffb648ffffffffffffffffffffffbe40ffffffffffffffffffff
-ff619dffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff619dffbe14beffffffffffbe14beffffff
-ffffbe14bede40deffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-20deffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffffffffffff7d7dffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff619dffffffffffffffffffffffffffffffffff
-de40deffffffffffffffffffffffffffffffffffffffffffffff619dffff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffe624000061
-daffffffffffda61000024ffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffffffce40eeffffffffffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffff00000000
-0000000000c2ffdaff690000c2ffffff5d000079ffc2000040ffff9d0000
-30ffff3000000000daff3000000000c2ff79000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000c2ffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffff9d61ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffde20ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffde20ffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffff620e6ffffffffffffffffff
-ffbe40ffffffffffffffffffffffff619dffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff617914
-beffffffffffbe14beffffffffffbe14bede40deffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff20deffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff619dffffffff
-ffffffffffffffffffffffffffffde40deffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff0061ffffffffffffff
-ffffffffffffffff610000a1ffffffffffffffffffa1000085ffffffffff
-ffffff0061ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff40beffffffffffffff
-ffffffffffce40eeffffffffffffffffffffffffffffffffffffff40beff
-ffffffffffffffffff00000000000000000079ffffda18000079ffffda18
-000079ffc200000089ffff4c0030ffff3000000000daff3000000000c2ff
-893030303030300000000000000000000000000000000000000000000000
-00000000000000000000000000000000000000000000000000000000c2ff
-ffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff
-ffffffffff9d61ffffffffffffffffffffffffffffffffffffffffffffff
-ffffde20ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffde20ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff6995ffffffffffffffffffffbe40ffffffffffffffffffffffffff61
-9dffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff4c79ffffffffffbe14beffffffffffbe14bede
-40deffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff20deffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff619dffffffffffffffffffffffffffffffffffffffde40
-deffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff0061ffffffffffffffffffffffffffffff240061ffffffffffff
-ffffffffff500024ffffffffffffffff0061ffffffffffffffffffffffff
-ffffffffffffffffffff8d40404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-4040404010ceffffffffffffffffffffffffffce40eeffffffffffffffff
-ffffffffffffffffffff40beffffffffffffffffffff0000000000000000
-0030ffffda00000024ffffda00000079ffc200000000c2ffc20030ffff30
-00000000daff3000000000c2ffffffffffffffda00000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000c2ffffffffffffffffffffffffffffffffffff
-ffffffff00ffffffffff6140404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-4040404010ffffffffffffffffffffffffffff9d61ffffffffffffffffff
-ffffffffffffffffffffffffffffffde20ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffde20ffffffffee4840404040404040404040404040404040404040
-4040404040404040404040404040403014404040404040404040403048ff
-ffffffffffffffffffffffffff619dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff619dffffff
-be14beffffffffffbe14bede40deffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff20deffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffff2cef2ffffffffffff
-ffffffffffffffffffffffffffffffffffffffff619dffffffffffffffff
-ffffffffffffffffffffffffde40deffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0061ffffffffffffffffffffff
-ffffffe62400beffffffffffffffffffffffbe0024ffffffffffffffff00
-61ffffffffffffffffffffffffffffffffffffffffffff408dbebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebeceffffffffffffffffffffffff
-ffffffce40eeffffffffffffffffffffffffffffffffff40beffffffffff
-ffffffffff00000000000000000000aec28900000000aec28900000069c2
-9d0000000040c2c26924c2c22400000000aec224000000009dc2c2c2c2c2
-c2c2ae000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000c2ffffffffff
-ffffffffffffffffffffffffffffffffff00ffffffffff00bebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebedeffffffffffffffffffffffff
-ffffff9d61ffffffffffffffffffffffffffffffffffffffffffffffde20
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffde20ffffffffde18bebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebeba
-bebebebebebebebebebebee6ffffffffffffffffffffffffffffff619dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff619dffbe14beffffffffffbe14bede40deffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff20deffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff850085ffffff75ceffffffffffffffffffffffffffffffffffff
-ffffff619dffffffffffffffffffffffffffffffffffffffffffde40deff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-0061ffffffffffffffffffffffffffffce0000ceffffffffffffffffffff
-ffce0024ffffffffffffffff0061ffffffffffffffffffffffffffffffff
-ffffffffffff40beffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffce40eeffffffffffffffffffff
-ffffffffffff40beffffffffffffffffffff000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-00000000000000c2ffffffffffffffffffffffffffffffffffffffffffff
-00ffffffffff00ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff9d61ffffffffffffffffffffff
-ffffffffffffffffffffffde20ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffde
-20ffffffffde20ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff619dffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff617914beffffff
-ffffbe14bede40deffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff20deffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffff7d7dffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff953c95ffff2400ceffffffffff
-ffffffffffffffffffffffffffffffff619dffffffffffffffffffffffff
-ffffffffffffffffffffde40deffffffffffffffffffffffffffffffffff
-ff619dffffffffffffffffffff0061ffffffffffffffffffffffffffffce
-0000ceffffffffffffffffffffffce0024ffffffffffffffff0061ffffff
-ffffffffffffffffffffffffff40beffffffff40beffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffce40eeffffffffffffffffffffffffffffff40beffffffffffffffffff
-ff0000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000c2ffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff9d61ffffffffffffffffffffffffffffffffffffffffffde20ffffffff
-ffffffffffffffffffffffffffffffffffffffffceceffffffffffffffff
-ffffffffffffffffffffffffffffffffffffe69585a1ffffffda8585beff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffde20ffffffffde20ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff619dffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff4c79ffffffffffbe14bede40deffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff20deffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffff7d
-7dffffffffffffffffffffffffffffffffffffffffffffffffffffdadaff
-ffffffffff2400ceffffffffdaceffffffffffffffffffffffffffffff61
-9dffffffffffffffffffffffffffffffffffffffffffffffde40deffffff
-ffffffffffffffffffffffffffff619dffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffff240085ffffffffffffffffffffff750024
-ffffffffffffffff0061ffffffffffffffffffffffffffffffff40beffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffce40eeffffffffffffffffffffffff
-ffff40beffffffffffffffffffff00000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000c2ffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff9d61ffffffffffffffffffffffffff
-ffffffffffffffde20ffffffffffffffffffffffffffffffffffffffffff
-ffffce0024ffffffffffffffffffffffffffffffffffffffffffffffffff
-a124000024e6ff6100000024ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffde20ffffff
-ffde20ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff619dffffffffffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff619dffffffbe14bede
-40deffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff20deffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7d7dffffffffffffff7d7dffffffffffffffffffff2424e6ffda24
-24daffe62424ff2424950000ce852485ff2400002450ffff5000002461ff
-ffffffffffffffffffffffff619dffffffffffffffffffffffffffffffff
-ffffffffffffffffde40deffffffffffffffffffffffffffffffff619dff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffff500024ce
-ffffffffffffffffffce240050ffffffffffffffff0061ffffffffffffff
-ffffffffffffffffff40beffffffff40beffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffce
-40eeffffffffffffffffffffffffff40beffffffffffffffffffff000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-00000000000000000000000000000000c2ffffffffffffffffffffffffff
-ffffffffffffffffff00ffffffffff00ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff00ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d
-61ffffffffffffffffffffffffffffffffffffffde20ffffffffffffffff
-ffffffffffffffffffffffffffffffce0024ffffffffffffffffffffffff
-ffffffffffffffffffffffffff2400508585ffda0000618595ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffde20ffffffffde20ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff619dffffffffff
-ffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff619dffbe14bede40deffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff20deffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7d7dffffffffffffff7d7dffffff
-ffffffffffffff5000a1ff95000095ff950050ff2400003c3cff850085ff
-5000003c61ff3c0050853c0075ffffffffffffffffffffffff619dffffff
-ffffffffffffffffffffffffffffffffffffffffffffde40deffffffffff
-ffffffffffffffffffff619dffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffbe000024beffffffffffffffa1240000beffffffff
-ffffffff0061ffffffffffffffffffffffffffffffff40beffffffff40be
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffce40eeffffffffffffffffffffffff40be
-ffffffffffffffffffff0000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000c2
-ffffffffffffffffffffffffffffffffffffffffffff00ffffffffff00ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff9d61ffffffffffffffffffffffffffffff
-ffffffde20ffffffffffffffffffffffffffffffffffffffffffffffce00
-24ffffffffffffffffffffffffffffffffffffffffffffffffda0024ffff
-ffff95003cffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffde20ffffffffde20ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff619dffffffffffffbe40ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff617914bede40deffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff20deff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d
-7dffffffffffffff7d7dffffffffffffffffffffa10050ff3c000050ff50
-00a1ff240061ffffff850085ffff2400ceffce0024fffff22424ffffffff
-ffffffffffffffff619dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffde40deffffffffffffffffffffffffffff619dffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffff61000000246185
-8585612400000075ffffffffffffffffff0061ffffffffffffffffffffff
-ffffffffff40beffffffff40beffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffce40ee
-ffffffffffffffffffffff40beffffffffffffffffffff00000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000c2ffffffffffffffffffffffffffffffffff
-ffffffffff00ffffffffff00ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff9d61ff
-ffffffffffffffffffffffffffffffffde20ffffffffffffffffffffffff
-ffffffffffffffffffffffce0024ffffffffffffffffffffffffffffffff
-ffffffffffffffffce0024ffffffff85003cffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffde20ffffffffde20ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff619dffffffffffbe40
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff4c79de40deffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff20deffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7d7dffffffffffffff7d7dffffffffffffff
-ffffffff2424ff243c2424ff2424ffff2400beffffff850085ffff2400ce
-ff8500248585852400ceffffffffffffffffffffff619dffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffde40deffffffffffffff
-ffffffffffff619dffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffffff61000000000000000000000061ffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffff40beffffffff40beffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffce38f6ffffffffffffffffffff40beffffffff
-ffffffffffff040c10101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-10101010101010101010101010101010101010101010101000caffffffff
-ffffffffffffffffffffffffffffffffffff00ffffffffff00ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff00ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff9569ffffffffffffffffffffffffffffffffde
-20ffffffffffffffffffffffffffffffffffffffffffffffce0024ffa150
-3c61beffffffffff8585f2ffffffffff8585f2ff857500248585f2855000
-248585ffffffffa1613c3c95ffffffffffff8585ffa13c61beffffffffff
-ffffffffffffffffffffffffffffffffffde20ffffffffde20ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff619dffffffffbe40ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff6138deffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff20deffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffff
-ffffffff7d7dffffffffffffffffffffff50009500757500950050ffff24
-00ceffffff850085ffff2400ceff8500243c3c3c3c3cdaffffffffffffff
-ffffffff619dffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffb650f6ffffffffffffffffffffffffff619dffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffffffffa13c24000000000024
-3cb2ffffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ff40beffffffff40beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffff
-ffffffffffffff40beffffffffffffffffffff1ca5bebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebe18deffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffff650b6ffffffff
-ffffffffffffffffffffffffde20ffffffffffffffffffffffffffffffff
-ffffffffffffffce002461002424000061ffffffff2400ceffffffffff24
-00ceff240000000000ce000000000024ffffe63c000024240024a1ffffff
-ff24249500000061ffffffffffffffffffffffffffffffffffffffffffff
-de20ffffffffde20ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffee40ceffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffe6ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff20deffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffff7d7dffffffffffffffffffffff
-95002400bebe002400a1ffff2400ceffffff850085ffff2400ceffbe0024
-ffffffcee6ffffffffffffffffffffffff619dffffffffffffffffffffff
-ffffffffffffffffffffffffffffffb650f6ffffffffffffffffffffffff
-ffff619dffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffffffffffffe6ce858595cee6ffffffffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffff40beffffffff40beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7d7dffffffffffffffffffffffff40beffffffffffffffff
-ffff20deffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff20deffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffff650b6ffffffffffffffffffffffffffffffffffde20ffffff
-ffffffffffffffffffffffffffffffffffffffffce00000085ffffa12400
-85ffffff2400ceffffffffff2400ceffcea10024ceceffce75003cceceff
-ff3c003cdaffff850024daffffff240024508561beffffffffffffffffff
-ffffffffffffffffffffffffffde20ffffffffde20ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee
-40ceffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff20deffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7d7dffffffffffffffffffffffe6240024ffff240024e6ffff2400ceffff
-ff850085ffff24007595ff240061ce61003cffffffffffffffffffffffff
-619dffffffffffffffffffffffffffffffffffffffffffffffffffb650f6
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffffffffff
-ffffff40beffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffff
-ffffff40beffffffffffffffffffff20deffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff20deffffffffffffffffffffffffffffffffffffffffffff00ffff
-ffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffff650b6ffffffffffffffffffff
-ffffffffffffffffde20ffffffffffffffffffffffffffffffffffffffff
-ffffffce000085ffffffffbe0024ffffff2400ceffffffffff2400ceffff
-ce0024ffffffff85003cffffff85003cffffffffff850050ffffff240050
-ffffffffffffffffffffffffffffffffffffffffffffffffffffde20ffff
-ffffde20ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffee40ceffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff20deffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffff3c003c
-ffff3c003cffffff2400ceffffff850085ffff5000003cffce2400000024
-ceffffffffffffffffffffffff619dffffffffffffffffffffffffffffff
-ffffffffffffffffffb650f6ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffffffffffffffff40beffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7d7dffffffffffffffffffffffffffff40beffffffffffffffffffff20de
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff20deffffffffffffffffffffffff
-ffffffffffffffffffff00ffffffffff00ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6
-50b6ffffffffffffffffffffffffffffffffffffffde20ffffffffffffff
-ffffffffffffffffffffffffffffffffce0024ffffffffffff3c00a1ffff
-2400ceffffffffff2400ceffffce0024ffffffff85003cffffff2400a1ff
-ffffffffff2424e6ffff2400a1ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffde20ffffffffde20ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffee40ceffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff20deffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffe6cee6ffffe6cee6ffffffcecefffffffff2cef2
-ffffffa185daffffffbe85beffffffffffffffffffffffffffff619dffff
-ffffffffffffffffffffffffffffffffffffffffffb650f6ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffffffffffffffff40
-beffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff40
-beffffffffffffffffffff20deffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff20
-deffffffffffffffffffffffffffffffffffffffffffff00ffffffffff00
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffff650b6ffffffffffffffffffffffffffffffff
-ffffffffde20ffffffffffffffffffffffffffffffffffffffffffffffce
-003cffffffffffff610085ffff2400ceffffffffff2400ceffffce0024ff
-ffffff85003cffffff2400758585858585852400ceffff2400ceffffffff
-ffffffffffffffffffffffffffffffffffffffffffffde20ffffffffde20
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffee40ceffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff20de
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff619dffffffffffffffffffffffffffffffffffffff
-ffffffb650f6ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffffffffffffffff40beffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffff
-ffffffffffffffffffffffff40beffffffffffffffffffff20deffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff20deffffffffffffffffffffffffffffffff
-ffffffffffff00ffffffffff00ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffff650b6ffffffff
-ffffffffffffffffffffffffffffffffffde20ffffffffffffffffffffff
-ffffffffffffffffffffffffce003cffffffffffff850085ffff2400ceff
-ffffffff2400ceffffce0024ffffffff85003cffffff2400000000000000
-000000ceffff2400ceffffffffffffffffffffffffffffffffffffffffff
-ffffffffffde20ffffffffde20ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffee40ceffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe6
-484040404040404040404040404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-404040404040404040404040b6ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff20deffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffff7d7dffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff619dffffffffffff
-ffffffffffffffffffffffffffffffb650f6ffffffffffffffffffffffff
-ffffffffffffff619dffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffff40beffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7d7dffffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffff20deffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff20deffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffff650b6ffffffffffffffffffffffffffffffffffffffffffff
-de20ffffffffffffffffffffffffffffffffffffffffffffffce003cffff
-ffffffff850085ffff2400ceffffffffff2400ceffffce0024ffffffff85
-003cffffff2424cececececececececeffffff2400ceffffffffffffffff
-ffffffffffffffffffffffffffffffffffffde20ffffffffde20ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee
-40ceffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe30bebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebe7961ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff20deffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff619dffffffffffffffffffffffffffffffffffffffffb650f6
-ffffffffffffffffffffffffffffffffffffffff619dffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffff40beffffffff40617d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d85f6ffffffffffffffffffffffffffff7d7dffffffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffff20deffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff20deffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffff007d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d007d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d5d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d9dfffffffffffffffffffffffffffff650b6ffffffffffffffffffff
-ffffffffffffffffffffffffffde20ffffffffffffffffffffffffffffff
-ffffffffffffffffce0024ffffffffffff3c0095ffff2400ceffffffffff
-2400ceffffce0024ffffffff85003cffffff2400ceffffffffffffffffff
-ffff2400ceffffffffffffffffffffffffffffffffffffffffffffffffff
-ffde20ffffffffde107d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7dbeffffff
-ffffffffffffffffffffffee40ceffffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff9d61ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff20deffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7d7dffffffffffffff7d7dffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff619dffffffffffffffffffff
-ffffffffffffffffffb650f6ffffffffffffffffffffffffffffffffffff
-ffffff619dffffffffffffffffffff0061ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffff40beffffffffbe7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d20beffffffffffffffffffffffffff
-7d7dffffffffffffffffffffffffffffffffffffff40beffffffffffffff
-ffffff20deffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff20deffffffffffffff
-ffffffffffffffffffffffffffffff00ffffffffff9d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d007d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d18657d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d00fffffffffffffffffffffffffff6
-50b6ffffffffffffffffffffffffffffffffffffffffffffffffde20ffff
-ffffffffffffffffffffffffffffffffffffffffffce0024e6fffffffff2
-2400daffff2400ceffffffffbe0000ceffffce0024ffffffff85003cffff
-ff500061ffffffffffe6243ce6ffff2400ceffffffffffffffffffffffff
-ffffffffffffffffffffffffffffde20ffffffffff8d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d6140ffffffffffffffffffffffffffee40ceffffffff
-ffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff9d61ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff20deffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff619dffffffffffffffffffffffffffffffffffffb650f6ffffffffffff
-ffffffffffffffffffffffffffffffff619dffffffffffffffffffff0061
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffff40be
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff40be
-ffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffff
-ffffffff40beffffffffffffffffffff20deffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff20deffffffffffffffffffffffffffffffffffffffffffff00ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff00ffffffffffffffffffffffffffffffffff718dffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff
-fffffffffffffffffffffff650b6ffffffffffffffffffffffffffffffff
-ffffffffffffffffffde20ffffffffffffffffffffffffffffffffffffff
-ffffffffce00003cffffffff610050ffffff3c0061fffffff23c0000ceff
-ffce0024ffffffff85003cffffffb20000a1ffffffff500050ffffff2400
-ceffffffffffffffffffffffffffffffffffffffffffffffffffffde20ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffff
-ffffffffffee40ceffffffffffffffffffffffffffbe40ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff9d61ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff20a5bebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebe5d5dbebebebebebebe5d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff5d75bebebebebebebebebebef6ffffff
-ffffffb650f6ffffffffffffffffffffffffffffffffffffffffffffff61
-9dffffffffffffffffffff0061ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffff40beffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff40beffffffffffffffffffffff7d7dffffffff
-ffffffffffffffffffffffffffffffffff40beffffffffffffffffffff20
-deffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff20deffffffffffffffffffffff
-ffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff00ffffffffffffffffffffffff
-ffffffffffae50ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff00fffffffffffffffffffffff650b6ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffde20ffffffffffff
-ffffffffffffffffffffffffffffffffffce0024243c85853c0024e6ffff
-ffb200003c856124243c00ceffffce0024ffffffff85003cffffffff6100
-005085853c0024daffffff2400ceffffffffffffffffffffffffffffffff
-ffffffffffffffffffffde20ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffbe40ffffffffffffffffffffffee40ceffffffffffffffffffff
-ffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff9d61ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff8540404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-404040404040404040404040404040404040202040404040404040207dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff552840
-40404040404040402085ffffffffffb650f6ffffffffffffffffffffffff
-ffffffffffffffffffffffff619dffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffffff40beffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff40beffffffff
-ffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffff
-40beffffffffffffffffffff20deffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-20deffffffffffffffffffffffffffffffffffffffffffff00ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-00ffffffffffffffffffffffffffffffffffee10ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff00ffffffffff
-fffffffffff650b6ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffde20ffffffffffffffffffffffffffffffffffffffffffffff
-ce2450b23c00002450e6ffffffffff952400002450e65024ceffffce2424
-ffffffff852450ffffffffff95240000002450daffffffff2424ceffffff
-ffffffffffffffffffffffffffffffffffffffffffffffde20ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffee
-40ceffffffffffffffffffffffffffffffbe40ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d
-61ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d7dffffffffffffff7d7dffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff619dffffffffffffffffff7d7dffffffffb650f6
-ffffffffffffffffffffffffffffffffffffffffffffffffff619dffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff40beffffffffffffffffff7d7dffffffffffffffffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffff20deffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff20deffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00fffffffffffffffffff650b6ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffde20ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffcecee6ffffffffffffffffff
-cecee6ffffffffffffffffffffffffffffffffffffffffffffffffdacece
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffde20ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffee40ceffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff9d61ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffff7d7dffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff619dffffffffff
-ffffffff7d7dffffffb650f6ffffffffffffffffffffffffffffffffffff
-ffffffffffffffff619dffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff40beffffffffffffffff
-7d7dffffffffffffffffffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffff20deffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff20deffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00fffffffffffffffff6
-50b6ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffde20ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffde20ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffee40ceffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff9d61ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7d2040404040404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-404040404040189dffffffffffffffffff7d7dffffb650f6ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff953c3c3c3c61beffffffffff0061ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff40beffffffffffffff7d7dffffffffffffffffffffffffffffffff
-ffffffffffffffffff40beffffffffffffffffffff20deffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff20deffffffffffffffffffffffffffffffffffffff
-ffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff00fffffffffffffff650b6ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffde20ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffde20ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffff
-ffffffffffee40ceffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff9d61ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffeebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebef6ffffffffffffffffff
-7d7dffb650f6ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff85000024242400a1ffffffff0061
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff40beffffffffffff7d7dffffffff
-ffffffffffffffffffffffffffffffffffffffffffff40beffffffffffff
-ffffffff20deffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff20deffffffffffff
-ffffffffffffffffffffffffffffffff00ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffff610f6ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff00fffffffffffff650b6ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffde20ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffde20ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffbe40ffffffffffffee40ceffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff9d61ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7db650f6ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-61ffffffffffffffffffffffffffffffffffffffffffffffffffffffff85
-00003cffe66124e6ffffff0061ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff40
-beffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff40beffffffffffffffffffff20deffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff20deffffffffffffffffffffffffffffffffffffffffffff00
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-fffffffffff650b6ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffde20ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffde20
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffee
-40ceffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff9d61ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d4050f6
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe858595ffffffb2ffffffff0061ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff40beffffffff7d7dffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff40beffffffffffffffffffff
-20deffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff20deffffffffffffffffffff
-ffffffffffffffffffffffff00ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff00fffffffff650b6ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffde20ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffde20ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffbe40ffffffffee40ceffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffbe40ffffffffffffffffffffd21c1c1c1c1c1c1c1c1c1c1c1c
-1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c
-1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c
-1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c
-1c1c1c1c1c1c85ffffffffffffffffffff9d61ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff8548f6ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff619dffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff40beffffff
-7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffff20deffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff20deffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00fffffff6
-50b6ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffde20ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffde20ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffee40ceffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-8d24bebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebe792cffffffffffffffffffff
-9d61ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffff6f6ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff619dffff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff40beffff7d7dffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffff20deffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff20deffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-fffffffff610f6ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00fffff650b6ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffde20ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffde20ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffee40ceffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffff8d34ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff9d2cffffffffffffffffffff9d61ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff619dffffffffffffffffffff0061ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffff40beffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff40beff7d7dffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff40beff
-ffffffffffffffffff20deffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff20deff
-ffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff
-ffffffffffffffffffffffffffffffffffff40beffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff00fff650b6ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffde20ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffde20ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffbe40ffee40ceffffffffffffffffffff
-ffffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffbe40ffffffffffffffffffff8d34ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff9d2cffffffffffffffffffff9d61ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7d
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff619dffffffffffff
-ffffffff0061ffffffffffffffffffffffffffffffffffffffffffffffff
-ffceffffffffffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffff40beffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff40be7d7dffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff40beffffffffffffffffffff20deffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff20deffffffffffffffffffffffffffffffffffff
-ffffffff00ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffff
-ff8d71ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff00f650b6ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffde20ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffe6bef6ffffffffffffffffffffffffffffffffffffffffff
-ffffffde20ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ee
-40ceffffffffffffffffffffffffffffffffffffffffffffffffffbe40ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ff
-ffffffffffffffffff8d34ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff9d2cff
-ffffffffffffffffff9d61ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff619dffffffffffffffffffff0061ffffffffffffffffffffff
-ffffda95f2ffffffffffff852424002450beffffffffffffffffffffff00
-61ffffffffffffffffffffffffffffffff40beffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff40487dffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff40beffffffffff
-ffffffffff20deffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff20deffffffffff
-ffffffffffffffffffffffffffffffffff00ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffff
-ffffffffffffffffffffffffffffce30ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0050b6ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffde20
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffce8d5040402000001840080000284040619dde
-ffffffffffffffffffffffffffffffffde20ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffbe3040ceffffffffffffffffffffffffffffffff
-ffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffbe40ffffffffffffffffffff8d34ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff9d2cffffffffffffffffffff9d61ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff619dffffffffffffffffffff
-0061ffffffffffffffffffffffda50000095ffffffffff3c000000000000
-0075ffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-40beffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-407dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff40beffffffffffffffffffff20deffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff20deffffffffffffffffffffffffffffffffffffffffffff
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff00ffffffffffffffffffffffffffffffffffffffffff10ee
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-08b6ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffde20ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffc68548103071aebebede
-ffffffffffffffd6bebe9d6120185995d6ffffffffffffffffffffffffde
-20ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffc610ceffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffff
-ffffffffff8d34ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff9d2cffffffffff
-ffffffffff9d61ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff619dffffffffffffffffffff0061ffffffffffffffffffffa124000000
-85ffffffff75000000243c2400000095ffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffe6ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ff20deffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff20deffffffffffffffffff
-ffffffffffffffffffffffff4c00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffff50aeffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffe6ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffde20ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-d669083879b6eeffffffffffffffffffffffffffffffffffffffe6a56928
-1885e6ffffffffffffffffffde20ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffe6ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffff8d34ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff9d2cffffffffffffffffffff9d61ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff619dffffffffffffffffffff0061ffff
-ffffffffffffffe62400002461beffffffe624000061ffffff95000024ff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffff20deffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff20defffffffffffffffffffffffffffffffffffffff6340800ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffff8d71ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffde20ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffa5402895f6ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffe6791861c6ffffffffffffffde20ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ff8d34ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff9d2cffffffffffffffffff
-ff9d61ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0061ffffffffffffffffff6100003cf2ffffffffff
-61000050ffffffffff85000095ffffffffffffffff0061ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff40beffffffffffffffffffff20deff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff20deffffffffffffffffffffffffff
-fffffffffff638040000ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffce30ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffde20ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffe6852059beffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d
-38309df6ffffffffde20ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffbe40ffffffffffffffffffff8d34ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff9d2cffffffffffffffffffff9d61ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff0061ffffffffffff
-ffffff24003cffffffffffffff240000beffffffffffff24003cffffffff
-ffffffff0061ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff40be
-ffffffffffffffffffff20deffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff20de
-fffffffffffffffffffffffffffffffffff63804000000ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff10eeffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffde20ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff9d2879deffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffce6130b6ffffffde20ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffbe40ffffffffffffffffffff8d34ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff9d2cffffffffffffffffffff9d61ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffce000095ffffffffffffda000024ff
-ffffffffffff3c0024ffffffffffffffff0061ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff40beffffffffffffffffffff20deffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff20deffffffffffffffffffffffffffffffffee
-2c0400000000ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff50aeffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffde20ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffd64061eeffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd6
-4861eeffde20ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40
-ffffffffffffffffffff8d34ffffffffffffffffffffffffffffff8524ce
-ff5024a1ffffce2485ff2424242424242485ff24242424242450ffce2424
-24242424a1ffff8524242424243cceffff2450ffffff8524ceffce242424
-242461ffce24242424242424ceffffffffffffffffffffffffffffff9d2c
-ffffffffffffffffffff9d61ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0061ffffffffffffffff8500
-00ceffffffffffff95000050ffffffffffffff610024ffffffffffffffff
-0061ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff40beffffffff
-ffffffffffff283840404040404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-40404040404040404040404040404040404040404040404008e6ffffffff
-ffffffffffffffffffffffee28000000000000ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff9569ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffde
-20ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffff68530beff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff9d209dde20ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffbe40ffffffffffffffffffff8d34ffffffffff
-ffffffffffffffffffff8500ceff3c0024f2ffce0085ff85857500248585
-beff24248585858595ffce00508585750024e6ff850075858561003cffff
-243cffffff8500ceffce005085853c0061f285855000508585f2ffffffff
-ffffffffffffffffffffff9d2cffffffffffffffffffff9d61ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff619dffffffffffffffffff
-ff0061ffffffffffffffff850000ceffffffffffff50000095ffffffffff
-ffff850000ceffffffffffffff0061ffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffffdebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebeceffffffffffffffffffffffffffffffee280000000000
-0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-de20ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffde20ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffc63079f6ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffee61
-3820ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffff8d34ffffffffffffffffffffffffffffff8500ceff3c0000
-61ffce0085ffffffce003cffffffff243cffffffffffffce0085ffffff3c
-00ceff8500ceffffff2424ffff243cffffff8500ceffce0085ffffe6243c
-ffffff850085ffffffffffffffffffffffffffffffffffff9d2cffffffff
-ffffffffffff9d61ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff619dffffffffffffffffffff0061ffffffffffffffff850000ceffff
-ffffffff240000daffffffffffffff610024ffffffffffffffff0061ffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffe6280000000000000000ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffff20deffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffff63879f6ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffee6938d6ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffb67dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffff8d34ffffffffffffffffff
-ffffffffffff8500ceff3c243c00bece0085ffffffce003cffffffff2424
-85858585beffce0075cecece2424e6ff8500a1ceceb2243cffff243cffff
-ff8500ceffce0085ffffa1003cffffff850085ffffffffffffffffffffff
-ffffffffffffff9d2cffffffffffffffffffff9d61ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff619dffffffffffffffffffff0061ff
-ffffffffffffff850000ceffffffffffda000024ffffffffffffffff3c00
-24ffffffffffffffff0061ffffffffffffffffffffffffffffffff40beff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff40beffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffde1c000000000000000000ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff00ffffffffffffffffffffffffffffffffffffffffffffff619dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffff68530b6ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-a52895ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffff
-ffff8d34ffffffffffffffffffffffffffffff8500ceff3c24be003cce00
-85ffffffce003cffffffff24000000000085ffce000000000024a1ffff85
-00000000003cceffff243cffffff8500ceffce00243c240000b2ffffff85
-0085ffffffffffffffffffffffffffffffffffff9d2cffffffffffffffff
-ffff9d61ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff619d
-ffffffffffffffffffff0061ffffffffffffffffce000095ffffffffff95
-000050ffffffffffffffff240024ffffffffffffffff0061ffffffffffff
-ffffffffffffffffffff40beffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff40beffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffde
-2000000000000000000000ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff00ffffffffffffffffffffffffff
-ffffffffffffffffffff9d61ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffd64861eeffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffe64859e6ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffbe40ffffffffffffffffffff8d34ffffffffffffffffffffffffff
-ffff8500ceff3c24ff6100500085ffffffce003cffffffff243ccececece
-f2ffce0075a13c0095ffffff8500a1952424ceffffff243cffffff8500ce
-ffce00243c3c50b2ffffffff850085ffffffffffffffffffffffffffffff
-ffffff9d2cffffffffffffffffffff9d61ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff619dffffffffffffffffffff0061ffffffffff
-ffffffff24003cffffffffff3c0000a1ffffffffffffff85000061ffffff
-ffffffffff0061ffffffffffffffffffffffffffffffff40beffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff40
-beffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffde200000000000000000000000ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-ffffffffffffffffffffffffffffffffffffffffffffffde20ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff9d2095ffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffff68520b6ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff8d34
-ffffffffffffffffffffffffffffff8500ceff3c24fff224000085ffffff
-ce003cffffffff243cffffffffffffce0085fff22400b2ffff8500ceffbe
-0024e6ffff2424ffffff7500ceffce0085ffffffffffffffff850085ffff
-ffffffffffffffffffffffffffffffff9d2cffffffffffffffffffff9d61
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff619dffffffff
-ffffffffffff0061ffffffffffffffffff61000061ffffff61000024ffff
-ffffffffffce240000beffffffffffffffff0061ffffffffffffffffffff
-ffffffffffff40beffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff40beffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffce140000000000
-00000000000000ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff00ffffffffffffffffffffffffffffffffff
-ffffffffffffff20deffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffee691885e6ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffde791879f6ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe
-40ffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe
-40ffffffffffffffffffff8d34ffffffffffffffffffffffffffffff8500
-ceff3c24ffffa1000085ffffffce003cffffffff243ccececececeffce00
-85ffffb20024ffff8500ceffff750050ffff3c0075ceb22424e6ffce0085
-ffffffffffffffff850085ffffffffffffffffffffffffffffffffffff9d
-2cffffffffffffffffffff9d61ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff619dffffffffffffffffffff0061ffffffffffffffffff
-e6240000243c2400000095ffffffffffff8524000050ffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffce1800000000000000000000000000ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffff619dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffe6791861c6ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffb6502085eeffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffff8d34ffffffff
-ffffffffffffffffffffff8500ceff3c24ffffff500085ffffffce003cff
-ffffff24000000000024ffce0085ffffff610075ff8500ceffffff3c00b2
-ffce240000002475ffffce0085ffffffffffffffff850085ffffffffffff
-ffffffffffffffffffffffff9d2cffffffffffffffffffff9d61ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff619dffffffffffffffff
-ffff0061ffffffffffffffffffffa12400000000000061ffffffffff6124
-00000024f2ffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffce180000000000000000000000
-000000ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffff9d61ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff9d383095d6ff
-ffffffffffffffffffffffffffffffffffffffffffffffffce8d2048aeff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffff8d34fffffffffffffffffffffffffffffff2ceffffdace
-ffffffffcef2ffffffffcedaffffffffcececececececeffffcef2ffffff
-ffcecefff2ceffffffffe6cedaffffffce85a1e6ffffffffcef2ffffffff
-fffffffff2cef2ffffffffffffffffffffffffffffffffffff9d2cffffff
-ffffffffffffff9d61ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff0061ffffffffffffffffffffffda50
-2400002485ffffffffffff3c0000003ce6ffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff40beffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb2
-18000000000000000000000000000000ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffe618ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffce692818508dceffffffffffffffffffffffffffff
-ffffffc68548083071deffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffbe40ffffffffffffffffffff8d34ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff9d2cffffffffffffffffffff9d61ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff0061
-ffffffffffffffffffffffffffffcedaffffffffffffffff502450a1ffff
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff40beffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffb21400000000000000000000000000000000ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-30ceffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffe6ae713010
-40487d7d7dbebebebeae7d7d7d4040083879b6f6ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffff
-ffffff8d34ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff9d2cffffffffffffff
-ffffff9d61ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff0061ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff40beffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffb2140000000000
-000000000000000000000000ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff718dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffeebeb67d7d7d40404040507d7d7dbebef6ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffbe40ffffffffffffffffffff8d34ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff9d2cffffffffffffffffffff9d61ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-40beffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffaa14000000000000000000000000000000000000ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffae50ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff8d
-34ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff9d2cffffffffffffffffffff9d
-61ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff619dffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff95100000000000000000000000
-0000000000000000ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffee10ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffff8d34ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-9d2cffffffffffffffffffff9d61ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff619dffffffffffffffffffff0061ffffffffffffffff
-da3c3c95ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff95
-100000000000000000000000000000000000000000ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffffffff30ceffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffff8d34ffffff
-ffffffffffffffffffcedaffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffdaceffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff9d2cffffffffffffffffffff9d61ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff619dffffffffffffff
-ffffff0061ffffffffffffffffce000085ffffffffffffffceceffffffff
-ffffffffffffffffffffffffffffff0061ffffffffffffffffffffffffff
-ffffff40beffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff40beffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff95100000000000000000000000000000000000
-00000000ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff
-ffffffffffff718dffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffff
-ffffffffffffffff8d34ffffffffffffffffffff6124000024b2ffff8524
-ceffffff2450ffff242424242424a1ffffce242424242424a1ffffffa124
-00002450e6ffffce2485ffffff5024ff8524242424242424ff8524ceff24
-24e6ffff8524ceffce24242424242485ffffffffffffffffffff9d2cffff
-ffffffffffffffff9d61ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff619dffffffffffffffffffff0061ffffffffffffffffce000085
-ffffffffffffce0000ceffffffffffffffffffffffffffffffffffff0061
-ffffffffffffffffffffffffffffffff40beffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff40beffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff6d100000000000
-0000000000000000000000000000000000ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffae50ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffbe40ffffffffffffffffffff8d34ffffffffffffff
-ffff850061be850024ffff8500ceffffff243cffff24248585852424e6ff
-ce00508585750024e6ffb200247585610024ffffce0085ffffff3c24ffbe
-85852400758585ff8500ceff240050ffff8500ceffce005085858585beff
-ffffffffffffffffff9d2cffffffffffffffffffff9d61ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff85f6ffffffffffffff
-fffffffffffffffffffffffffff685ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff619dffffffffffffffffffff00
-61ffffffffffffffffce000085ffffffffffffce0000ceffffffffffffff
-ffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff40
-beffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff40beffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff6d100000000000000000000000000000000000000000000000
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff00ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffee10ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffff
-ffffffff8d34ffffffffffffffffff3c24ceffff753ce6ff8500ceffffff
-243cffff243cffffff7500ceffce0085ffffff3c00ceff3c00beffffff75
-0095ffce0085ffffff3c24ffffffff3c00ceffffff8500ceff240000a1ff
-8500ceffce0085ffffffffffffffffffffffffffffff9d2cffffffffffff
-ffffffff9d61ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff20deffffffffffffffffffffffffffffffffffffffffde20ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-619dffffffffffffffffffff0061ffffffffffffffffce000085ffffffff
-ffffce0000ceffffffffffffffffffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffff40beffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff40beffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff6d100000000000000000000000
-00000000000000000000000000ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff00ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff40beffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffbe40ffffffffffffffffffff8d34ffffffffffffffffffa100
-245095e6ffffff8500ceffffff243cffff243ccece95243cffffce0075ce
-cece2424e6ff2424ffffffffce003cffce0085ffffff3c24ffffffff3c00
-ceffffff8500ceff24242424ff8500ceffce005085858585f2ffffffffff
-ffffffffff9d2cffffffffffffffffffff9d61ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff20deffffffffffffffffffffff
-ffffffffffffffffffde20ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff619dffffffffffffffffffff0061ffffff
-ffffffffffce000085ffffffffffffce0000ceffffffffffffffffffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff59
-1000000000000000000000000000000000000000000000000000ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff7d
-7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-8d34ffffffffffffffffffff852400002461ffff8500ceffffff243cffff
-24000000000075ffffce000000000024a1ffce003cffffffffff243cffce
-0085ffffff3c24ffffffff3c00ceffffff8500ceff243c8500758500ceff
-ce000000000000ceffffffffffffffffffff9d2cffffffffffffffffffff
-9d61ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-20deffffffffffffffffffffffffffffffffffffffffde20ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff619dffff
-ffffffffffffffff0061ffffffffffffffffce000085ffffffffffffce00
-00ceffffffffffffffffffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff4c080000000000000000000000000000000000
-000000000000000000ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffff8d34ffffffffffffffffffffffffce8524
-00a1ff8500ceffffff243cffff243ccecece610085ffce0075a13c0095ff
-ffe6243cffffffffda003cffce0085ffffff3c24ffffffff3c00ceffffff
-8500ceff243cff3c005000ceffce0075cecececeffffffffffffffffffff
-ff9d2cffffffffffffffffffff9d61ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff20deffffffffffffffffffffffffffffff
-ffffffffffde20ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff0061ffffffffffffff
-ffce000085ffffffffffffce0000ceffffffffffffffffffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff40beff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff4c080000000000
-00000000000000000000000000000000000000000000ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffff610f6ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffbe40ffffffffffffffffffff8d34ffff
-ffffffffffffff503cffffffa10085ff8500a1ffffff243cffff243cffff
-ffce003cffce0085fff22400b2ffff2424daffffff850075ffce0061ffff
-ff3c24ffffffff3c00ceffffff8500ceff243cffbe000000ceffce0085ff
-ffffffffffffffffffffffffffff9d2cffffffffffffffffffff9d61ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff20deffff
-ffffffffffffffffffffffffffffffffffffde20ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff0061ffffffffffffffffce000085ffffffffffffce0000ceffff
-ffffffffffffffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff40beffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffff64c080000000000000000000000000000000000000000000000
-0000000000ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff40beffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ff
-ffffffffffffffffff8d34ffffffffffffffffff500061cece3c00a1ffbe
-0024bece610061ffff243ccecebe610075ffce0085ffffb20024ffff8500
-24a1ce850024e6ffff2424a1ce95003cffffffff3c00ceffffff8500ceff
-243cffff610000ceffce0075cecececedaffffffffffffffffffff9d2cff
-ffffffffffffffffff9d61ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff20deffffffffffffffffffffffffffffffffffffff
-ffde20ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0061ffffffffffffffffce0000
-85ffffffffffffce0000ceffffffffffffffffffffffffffffffffffff00
-61ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff40beffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffff638080000000000000000000000
-000000000000000000000000000000000000ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffbe40ffffffffffffffffffff8d34ffffffffffff
-ffffffe63c0000000061ffffff61000000003ce6ffff2400000000003cff
-ffce0085ffffff610075ffff752400000024ceffffffa12400000024b2ff
-ffffff3c00ceffffff8500ceff243cfffff22400ceffce0000000000003c
-ffffffffffffffffffff9d2cffffffffffffffffffff9d61ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff20deffffffffffff
-ffffffffffffffffffffffffffffde20ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-0061ffffffffffffffffce000085ffffffffffffce0000ceffffffffffff
-ffffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff403040404040404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404010
-000404040404040404040404040404040404040404040404040404040404
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffff
-ffffffffff8d34ffffffffffffffffffffffce8595daffffffffffdaa185
-ceffffffffcececececedaffffffffcef2ffffffffceceffffffe6be85ce
-ffffffffffffe6be85beffffffffffffdacefffffffff2ceffffcedaffff
-ffe6ceffffffcecececececedaffffffffffffffffffff9d2cffffffffff
-ffffffffff9d61ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff20deffffffffffffffffffffffffffffffffffffffffde20ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff619dffffffffffffffffffff0061ffffffffffffffffce000085ffffff
-ffffffce0000ceffffffffffffffffffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffdebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebe998d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d
-8d8d8d8d8d8d8d8d8d8d8d8d8daaffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffff610f6ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffff8d34ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff9d2cffffffffffffffffffff9d61ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff20deffffffffffffffffffff
-ffffffffffffffffffffde20ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff619dffffffffffffffffffff0061ffff
-ffffffffffffce0000508585858585857500007585858585858585858595
-ffffffffffffffff0061ffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff40beffffffff8d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7ddeffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ff8d34ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff9d2cffffffffffffffffff
-ff9d61ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff20deffffffffffffffffffffffffffffffffffffffffde20ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff619dff
-ffffffffffffffffff0061ffffffffffffffffce00000000000000000000
-0000000000000000000000003cffffffffffffffff0061ffffffffffffff
-ffffffffffffffffff40beffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff00ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff8d71ffffffff007d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7deeffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffbe40ffffffffffffffffffff8d34ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff9d2cffffffffffffffffffff9d61ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff20deffffffffffffffffffffffffffff
-ffffffffffffde20ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff619dffffffffffffffffffff0061ffffffffffff
-ffffce000000000000000000000000000000000000000000003cffffffff
-ffffffff0061ffffffffffffffffffffffffffffffff40beffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffce30
-ffffffff00ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffbe40ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffbe40ffffffffffffffffffff8d34ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff9d2cffffffffffffffffffff9d61ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff20deff
-ffffffffffffffffffffffffffffffffffffffde20ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d
-7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff619dffffffffff
-ffffffffff0061ffffffffffffffffda3c3c3c3c3c3c3c3c3c3c3c3c3c3c
-3c3c3c3c3c3c3c3c61ffffffffffffffff0061ffffffffffffffffffffff
-ffffffffff40beffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff10eeffffff00ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40
-ffffffffffffffffffff8d34ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d2c
-ffffffffffffffffffff9d61ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff20deffffffffffffffffffffffffffffffffffff
-ffffde20ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff619dffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffff40beffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff00ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff50aeffffff
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffbe40ffffffffffffffffffff8d34ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff9d2cffffffffffffffffffff9d61ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff20deffffffffff
-ffffffffffffffffffffffffffffffde20ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff619dffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff8d71ffffff00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffff8d34ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff9d2cffffffff
-ffffffffffff9d61ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff20deffffffffffffffffffffffffffffffffffffffffde20
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff619dffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffce30ffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffbedaffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff95ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff2485ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff5050ffffe6b2ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffff8d34ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff9d2cffffffffffffffffffff9d61ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff20deffffffffffffffffff
-ffffffffffffffffffffffde20ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff10eeffff00ffffffffffffffffffffffffffffffffffffffff
-ffffce00ceffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff503cffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff5095ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff6161ffff2485ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffff
-ffff8d34ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff9d2cffffffffffffffff
-ffff9d61ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff20deffffffffffffffffffffffffffffffffffffffffde20ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff0061fffffffffffffffff2858585858585858585
-8585858585858585858585858595ffffffffffffffff0061ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff50aeffff00ffffffffffffff
-ffffffffffffffffffffffffffffffce00ceffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3c
-3cffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff2485ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffbe40ffffffffffffffffffff8d34ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff9d2cffffffffffffffffffff9d61ffffffffffffffffffffffffff
-ffffbe404040404040404040404040143840404040404040404040404040
-404040404040403814404040404040404040404040404040404040404040
-404040beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff0061ffffffffff
-ffffffce000000000000000000000000000000000000000000003cffffff
-ffffffffff0061ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff9569ffff00ffffffffffffffffffffffffffffffffff61955024613c00
-3c61ffff8524242495ffffff50ce50242485ff502424a1ffffe65024243c
-b2ffffffffffffffffffff6124243cdaffda50242450e6ffff956175243c
-da50ce3c243cbece3c243cceffff5095ffffda50242450e6ffffff752424
-2485ffffffffffffffffffffbe50ffffff9550ffffff8550ff50b23c24a1
-6161ff50002450ffffb23c242475ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff8d34
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff9d2cffffffffffffffffffff9d61
-ffffffffffffffffffffffffffffff7d61bebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebe617dffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff0061ffffffffffffffffce00000000000000000000000000
-0000000000000000003cffffffffffffffff0061ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffde20ffff00ffffffffffffffffffffff
-ffffffffffff3c245085b2a100a1daff7524a1ce950095ffff242485ce61
-002485ce6124e6ff3c50cece6124e6ffffffffffffffffffda3c3cceffe6
-2461cece3c3cffff85243c8585ce0024a1ce3c2424a1be3c3cffff2485ff
-da2461cece3c24f2ff7524bece9500a1ffffffffffffffffffff24a1ffff
-3c00a1ffff3c75ff24246175e63c3cffce2475ceffb20085ceb22461ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe
-40ffffffffffffffffffff95084040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404024
-2cffffffffffffffffffff9d61ffffffffffffffffffffffffffffff7d7d
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7d
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff619dffffffffffffffffffff0061ffffffffffffffffce
-0000002461858585858585858585858585858585858595ffffffffffffff
-ff0061ffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff20de
-ff00ffffffffffffffffffffffffffffffffff3c24ffffffce00ceffe624
-a1ffffff8524ffff2450ffffff2475ffffe624ceff2495ffffff85ffffff
-ffffffffffffffff3c3cffff6124fffffff22495ff8500daffffce0095ff
-ffbe00b2ffffa124ffff2485ff503cfffffff22475ff3c50ffffff95daff
-ffffffffffffffffff3c61ffff243c61ffe624daff2450ffffff3c3cffff
-2485ffff3c61ffffffbe00daffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffbe30bebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebe7559ffffffffffffffffffff9d61ffffffff
-ffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7d7dffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff619dffffffffffffffff
-ffff0061ffffffffffffffffe63c000000002475daffffffffffffffffff
-ffffffffffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff619dff00ffffffffffffffffffffffffffffff
-ffff3c3cffffffce00ceffbe00758585857500ceff2485ffffff2485ffff
-ff24ceff50003c95daffffffffffffffffffffffff3c3cffff3c24858585
-85243cff8524ffffffce00ceffffce00ceffffce24ffff2485ff2485ffff
-ffff3c3cff85003c75ceffffffffffffffffffffffff9524ffbe249524ff
-9524ffff2485ffffff3c3cffff2485ffff2450858585852485ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff9d61ffffff
-ffffffffffffff9d61ffffffffffffffffffffffffffffff7d7dffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffff
-ffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff619dffffffffffffffffffff0061ffffffffffffffffffffda7524
-000000003c95e6ffffffffffffffffffffffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffff40beffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff9d61ff00ffff
-ffffffffffffffffffffffffffffff3c3cffffffce00ceff85003c3c3c3c
-3c3cdaff2485ffffff2485ffffff24ceffff953c24003cffffffffffffff
-ffffffff3c3cffff24243c3c3c3c3c61ff8524ffffffce00ceffffce00ce
-ffffce24ffff2485ff2485ffffffff3c3cffffb250240024ceffffffffff
-ffffffffffe624da6161da24e65061ffff2485ffffff3c3cffff2485ffce
-003c3c3c3c3c3c95ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffbe40ffffffffffffffffffffbe40ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff9d61ffffffffffffffffffff9d61ffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffff7d7dffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff619dffffffffffffffffffff0061
-ffffffffffffffffffffffffffda7524000000243c95e6ffffffffffffff
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffff40be
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff00ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffde20ff00ffffffffffffffffffffffffffffffffff3c3c
-ffffffce00ceffce00daffffffffffffff2485ffffff2485ffffff24ceff
-ffffffffb22475ffffffffffffffffffff3c3cffff3c50ffffffffe6ffff
-8524ffffffce00ceffffce00ceffffce24ffff2485ff2461ffffffff3c3c
-fffff2ffffda3c3cffffffffffffffffffffff3c8524a1ff24a124beffff
-2485ffffff3c3cffff2485ffff2495ffffffffe6ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffff
-ffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff9d61ffffffffffffff
-ffffff9d61ffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61
-9dffffffffffffffffffff0061ffffffffffffffffffffffffffffffffda
-6124000000243ca1ffffffffffffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffff40beffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff00ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff20de00ffffffffffff
-ffffffffffffffffffffff3c3cffffffce00ceffff2461ffffff6124ffff
-2485ffffff2485ffffff24cee624a1ffffff2475ffffffffffffffffffff
-3c3cffff8524ceffffe62485ff8524ffffffce00ceffffce00ceffffce24
-ffff2485ff6124f2ffffce2495ff3c61ffffff613cffffffffffffffffff
-ffff752424ffff613c24ffffff2485ffffff3c3cffff2485ffff503cffff
-ffa124ceffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffbe40ffffffffffffffffffffbe40ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff9d61ffffffffffffffffffff9d61ffffffffffffffffffffffff
-ffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7d7dffffffffffffffffffffffffff7d7dffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff619dffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffffffffffbe61240000002450a1ffffffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffffff40beffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff619d00ffffffffffffffffffffffffffffffffff3c3cffffffff
-242461ffa10050856100a1ffff2485ffffff2485ffffff24ceff61247585
-5024daffffffffffffffffffff75003cdaff3c247585243cffff8524ffff
-ffce00ceffffce00ceffffce24ffff2485ffff3c3c8575243cffffa10061
-856100a1ffffffffffffffffffffffda003cffffa10061ffffff2485ffff
-ff3c3cffff3c2450ffda243c85752461ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffbe
-40ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff9d61ffffffffffffffffffff9d
-61ffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffb2616195ffffffffffffffff7d7dffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff619dffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffffffffffffff
-ffbe61240000002450beffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff9d6100ffffffffffffffffffff
-ffffffffffffff9595ffffffffb28595ffffbe753c75beffffff85beffff
-ff85beffffff85f2ffffa1613c85e6ffffffffffffffffffffffff8585f2
-ffff95505095ffffffbe85fffffff285f2fffff285f2fffff285ffff85be
-ffffff955050a1ffffffffbe753c75beffffffffffffffffffffffffff85
-b2fffff285beffffff85beffffff9595ffffda8585ffffe6853c61a1ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-9d61ffffffffffffffffffff9d61ffffffffffffffffffffffffffffff7d
-7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffb200002461ffffffffffffffff7d
-7dffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff619dffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffffffffffffffffffffffa1502400000050ffffffffffff
-ffff0061ffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-e61800ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff9d61ffffffffffffffffffff9d61ffffff
-ffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff85
-0050fff2ffffffffffffffff7d7dffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff952400003cffffffffffffffff0061ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff3000ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffcececececececececeffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffdacecececececececef2ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffff
-ffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff9d61ffff
-ffffffffffffffff9d61ffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffa18585daffffffffffda8585beffffffffe6a18585daff
-fffff2cef2ff9585daffffda750075ceffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffffffffffffffffffffa150240000000050ffffffffffffffff0061
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7100ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff503c3c3c3c
-3c3c3c3cdaffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff613c3c3c
-3c3c3c3c3c95ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffbe40ffffffffffffffffffffbe40ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff9d61ffffffffffffffffffff9d61ffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffda240024000061ffffff7500
-0000003cffffce240000000061ffff85006124000000a1ff3c00000000ce
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-61ffffffffffffffffffffffffffffffffffffffffffa150240000000024
-61beffffffffffffffffff0061ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffae00ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffff
-ffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff9d61ffffffffffff
-ffffffff9d61ffffffffffffffffffffffffffffff7d7dffffffffffffff
-ff500085ffbe2424e6ffb20024a1ce3c0061ff3c2475ce950024ffff8500
-0095ce500024ff9550005085f2ffffffffffffffff7d7dffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-ffffa15024000000002461beffffffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffee00ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffbe40ffffffffffffffffffffbe40ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff9d61ffffffffffffffffffff9d61ffffffffffffffffffffff
-ffffffff7d7dffffffffffffffff3c003c95daffffffff500075ffffda95
-ceffffe6ffffb22400ceff85003cffffce0024ffff850085ffffffffffff
-ffffffff7d7dffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff619dffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffa15024000000002461beffffffffffffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff9d61ffffffffffffffffffff
-9d61ffffffffffffffffffffffffffffff7d7dffffffffffffffffb22400
-00002485ffff3c0085ffffffffffffff753c24240000ceff850085ffffce
-0024ffff850085ffffffffffffffffffff7d7dffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff619dffff
-ffffffffffffffff0061ffffffffffffffffffffffffa150240000000024
-61beffffffffffffffffffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff9d61ffffffffffffffffffff9d61ffffffffffffffffffffffffffffff
-7d7dffffffffffffffffffe6953c24000095ff3c0085ffffffffffff3c00
-50a1e62424ffff850085ffffce0024ffff850085ffffffffffffffffffff
-7d7dffffffffffffffffffffffffff7d7dffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff619dffffffffffffffffffff0061ffffffffffffff
-ffffa15024000000002450a1ffffffffffffffffffffffffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffff40beffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffda3c75ffffffffffffffffffff6161ffffffffffffff
-6161ffffffffffffffffffffffffffffffffffffffffffff6161ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffdaffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffbe40ffffffffffffffffffffbe40ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff9d61ffffffffffffffffffff9d61ffff
-ffffffffffffffffffffffffff7d7dfffffffffffffff28561e6ffff5000
-85ff610050ffffa1243cda0024ffffe62424ffff850085ffffce0024ffff
-850085ffffffffffffffffffff7d7dffffffffffffffffffffffffff7d7d
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff619dffffffffffff
-ffffffff0061ffffffffffffffffce000000002450a1ffffffffffffffff
-ffffffffffffffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffff40beffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff00ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff612424ffffffffffff
-ffffffff3c3cffffffffffffff3c3cffffffffffffffffffffffffffffff
-ffffffffffffff3c3cffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff9524ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ff
-ffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff9d61ff
-ffffffffffffffffff9d61ffffffffffffffffffffffffffffff7d7dffff
-ffffffffffff50003c85852400a1ffe624003c61240085ff240061a13c00
-00ceff850085ffffce0024ffff850085ffffffffffffffffffff7d7dffff
-ffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff619dffffffffffffffffffff0061ffffffffffffffffce0000
-003c75858585858585858585858585858585858595ffffffffffffffff00
-61ffffffffffffffffffffffffffffffff40beffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff248524a1ffffffffffffffffff3c3cffffffffffffff3c3cffff
-ffffffffffffffffffffffffffffffffffffffff3c3cffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-8524ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffbe40ffffffffffffffffffffbe40ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff9d61ffffffffffffffffffff9d61ffffffffffff
-ffffffffffffffffff7d7dffffffffffffffffff502400002485ffffffb2
-3c00002475ffffa1240024755024a1ff852485ffffce2424ffff852485ff
-ffffffffffffffffff7d7dffffffffffffffffffffffffff7d7dffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff619dffffffffffffffffffff
-0061ffffffffffffffffce00000000000000000000000000000000000000
-0000003cffffffffffffffff0061ffffffffffffffffffffffffffffffff
-40beffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff00ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff00ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffa124e6613cffffffffffa1503cb2
-3c3cffffffa1503cb23c3cffffda613c50a1ffffffffffffffffe6753c50
-beffff3c3cbe503c85ffffffffbe613c3c95ffffff85da6150beffe6753c
-3c75e6ffffffe6753c50beffbe502485beffffa1503c75f2ffffbe95b23c
-75fff2753c3c95ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffff
-ffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff9d61ffffffffff
-ffffffffff9d61ffffffffffffffffffffffffffffff7d7dffffffffffff
-ffffffffffcedaffffffffffffffdaceffffffffffffceffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff619dffffffffffffffffffff0061ffffffffffffffffce000000000000
-000000000000000000000000000000003cffffffffffffffff0061ffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff50
-50ffbe00beffffff750075853c243cffff750075853c243cffda24618575
-0085ffffffffffffda2450856100a1ff3c243c85750050ffffb200618575
-2450ffff243c243cbee6245085853c24ffffda2450856100a1be502485be
-ff612475853c24f2ff8524243c50ff3c5085852450ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff9d61ffffffffffffffffffff9d61ffffffffffffffffffff
-ffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7d7dffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff619dffffffffffffffffffff0061ffff
-fffffffffffff28585858585858585858585858585858585858585858595
-ffffffffffffffff0061ffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffe624a1ffff2461ffffe62495fffff2243cffe6
-2495fffff2243cff853cffffff7575ffffffffffff5050ffffff613cff3c
-24f2ffff7524ffff5061ffffff8524ffff243cffffff853cffffffce00ce
-ff5050ffffff613cff8524ffffbe00beffffff3c61ff8500b2ffffce24e6
-ffffb250ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff9d61ffffffffffffffffff
-ff9d61ffffffffffffffffffffffffffffff7d7dffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff0061ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff8524f2ffff75
-24ffffa124ffffffff613cffa124ffffffff613cffa10061a1ffffffffff
-ffffffff2495ffffffffffff3c3cffffffce24ffffffffffffce6124ffff
-2485ffffffffffffffce9500ceff2495ffffffffffff8524ffff8524cece
-cece6124ff8524ffffffe6243c95e6ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffbe40ffffffffffffffffffffbe40ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff9d61ffffffffffffffffffff9d61ffffffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff0061ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff00ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff2400242424240095ff8524ffffffff853cff8524ffffff
-ff853cffff952424243ccefffffffffff224ceffffffffffff3c3cffffff
-ce24ffffda502424242424ffff2485ffffffff612424243c00cef224ceff
-ffffffffff8524ffff3c00242424242424ff8524ffffffffbe3c242424a1
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffbe40ffffffffffffffffffffbe40ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff9d61ffffffffffffffffffff9d61ff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0061ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff00ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe00a1cececece3c3cffa1
-24ffffffff753cffa124ffffffff753cffffffffe6a13c24ffffffffffff
-24a1ffffffffceff3c3cffffffce24ffff3c3cceffff8524ffff2485ffff
-ff6124b2e6ffce00ceff24a1ffffffffceff8524ffff7524ffffffffffff
-ff8524ffffffffffffffbe6100daffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40
-ffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d61
-ffffffffffffffffffff9d61ffffffffffffffffffffffffffffff7d7dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff6124ffffffffffa100bee624a1ffffff243cffe624a1ffffff243cff
-7550ffffffb224e6ffffffffff3c61ffffff8524ff3c3cffffffce24ffce
-00a1ffffff6124ffff2485ffffff2461ffffffa100ceff3c61ffffff8524
-ff8524ffffa124ceffffff5061ff8524ffffffb23cffffffff24a1ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffbe40ffffffffffffffffffffbe40ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff9d61ffffffffffffffffffff9d61ffffffffff
-ffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7d7dffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff619dffffffffffffffffff
-ff0061ffffffffffffffffffcececececececececececececececececece
-cecececedaffffffffffffffff0061ffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff2475ffffffffffff2450ff7524a1ce
-61243cffff7524a1ce61243cffb20085cebe3c3cffffffffffffb20085ce
-a12485ff3c3cffffffce24ffff243ccece752424ffff2485ffffff5024b2
-ce952400beffb20085cea12485ffa10075beff3c24a1ce7500b2ff8524ff
-ffffe62461cece6124e6ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff9d61ffffffff
-ffffffffffff9d61ffffffffffffffffffffffffffffff7d7dffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff619dffffffffffffffffffff0061ffffffffffffffffce0000000000
-00000000000000000000000000000000003cffffffffffffffff0061ffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffb23cda
-ffffffffffff753cf2ff852424759561ffffff852424759561ffffb23c24
-2461ffffffffffffffffb23c242495ffff6161ffffffda50ffffce3c2424
-85da3cbeff5095ffffffff50242461e65085ffffb23c242495ffffff503c
-95ffff6124243cb2ffff9550ffffffffda50242450daffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff9d61ffffffffffffffffffff9d61ffffffffffffffffff
-ffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7d7dffffffffffffffffffffffffff7d7dffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff619dffffffffffffffffffff0061ff
-ffffffffffffffce00000000000000000000000000000000000000000000
-3cffffffffffffffff0061ffffffffffffffffffffffffffffffff40beff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffff
-ffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff9d61ffffffffffffffff
-ffff9d61ffffffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff619d
-ffffffffffffffffffff0061ffffffffffffffffda3c3c3c3c3c3c3c3c3c
-3c3c3c3c3c3c3c3c3c3c3c3c3c61ffffffffffffffff0061ffffffffffff
-ffffffffffffffffffff40beffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff00ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffbe40ffffffffffffffffffffbe40ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff9d61ffffffffffffffffffff9d61ffffffffffffffffffffffffff
-ffff8d204040404040404040404040303c40404040404040404040404040
-404040404040403c30404040404040404040404040404040404040404040
-4040208dffffffffffffffffffffffffff7d7dffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff619dffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffff40beffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff00ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffbe40
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff9d61ffffffffffffffffffff9d61
-ffffffffffffffffffffffffffffffffbebebebebebebebebebebebe18a5
-bebebebebebebebebebebebebebebebebebebebea518bebebebebebebebe
-bebebebebebebebebebebebebebebebeffffffffffffffffffffffffffff
-7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff619dffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffff40beffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff00ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff00ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe
-40ffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe
-40ffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d
-61ffffffffffffffffffff9d61ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff20deffffffffffffffffffffffffffffffffff
-ffffffde20ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff619dffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff9d61ffffffffffffffffffff9d61ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff20deffffffff
-ffffffffffffffffffffffffffffffffde20ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff619dffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffffffffffffffffff858585ff
-ffffffffffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff9d61ffffff
-ffffffffffffff9d61ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff20deffffffffffffffffffffffffffffffffffffffffde
-20ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff0061ffffffffffffffffffffffffff
-ffffffffffffffffff240024ffffffffffffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffbe40ffffffffffffffffffffbe40ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff9d61ffffffffffffffffffff9d61ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff20deffffffffffffffff
-ffffffffffffffffffffffffde20ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff0061
-ffffffffffffffffffffffffffffffffffffffffffff240024ffffffffff
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff1000000000000000000000000000000000000000
-0000000000000000beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffff
-ffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff9d61ffffffffffffff
-ffffff9d61ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff20deffffffffffffffffffffffffffffffffffffffffde20ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff0061ffffffffffffffffffffffffffffffffff
-ffffffffff240024ffffffffffffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffbe40ffffffffffffffffffffbe40ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff9d61ffffffffffffffffffff9d61ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff20deffffffffffffffffffffffff
-ffffffffffffffffde20ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffffffffffffffff240024ffffffffffffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffbe
-40ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff9d61ffffffffffffffffffff9d
-61ffffffffffffffffffffffffffffffffffffffffffffffffffffffff20
-deffffffffffffffffffffffffffffffffffffffffde20ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff619dffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffffffffffffff
-ff240024ffffffffffffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-9d61ffffffffffffffffffff9d61ffffffffffffffffffffffffffffffbe
-404040404040404040404040143840404040404040404040404040404040
-404040403814404040404040404040404040404040404040404040404040
-beffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff619dffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffffffffffffffff240024ffffffffffffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff9d61ffffffffffffffffffff9d61ffffff
-ffffffffffffffffffffffff7d61bebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebe617dffffffffffffffffffffffffff7d7dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff619dffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffffffffffffffff240024
-ffffffffffffffffffffffffffffff0061ffffffffffffffffffffffffff
-ffffff40beffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffff
-ffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff9d61ffff
-ffffffffffffffff9d61ffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff619dffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffffffffffffffff240024ffffffffffffffffffffffffffffff0061
-ffffffffffffffffffffffffffffffff40beffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffbe40ffffffffffffffffffffbe40ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff9d61ffffffffffffffffffff9d61ffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffff7d7dffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff619dffffffffffffffffffff00
-61ffffffffffffffffffffffffffffffffffffffffffffcececeffffffff
-ffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff40
-beffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff00ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffff
-ffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff9d61ffffffffffff
-ffffffff9d61ffffffffffffffffffffffffffffff7d7dffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffff
-ffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-619dffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffff40beffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff00ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffbe40ffffffffffffffffffffbe40ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff9d61ffffffffffffffffffff9d61ffffffffffffffffffffff
-ffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7d7dffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff619dffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff9d61ffffffffffffffffffff
-9d61ffffffffffffffffffffffffffffff7d7dffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff619dffff
-ffffffffffffffff0061fffffffffffffffff2858585ffffff9585858585
-858585858585858585858595ffffffffffffffff0061ffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff9d61ffffffffffffffffffff9d61ffffffffffffffffffffffffffffff
-7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff0061ffffffffffffff
-ffce000024ffffff3c0000000000000000000000000000003cffffffffff
-ffffff0061ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffbe40ffffffffffffffffffffbe40ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff9d61ffffffffffffffffffff9d61ffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff0061ffffffffffffffffce000024ffffff3c0000000000000000
-000000000000003cffffffffffffffff0061ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ff
-ffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff9d61ff
-ffffffffffffffffff9d61ffffffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0061fffffffffffffffff28585
-85ffffff9585858585858585858585858585858595ffffffffffffffff00
-61ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffbe40ffffffffffffffffffffbe40ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff9d61ffffffffffffffffffff9d61ffffffffffff
-ffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffff
-ffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff9d61ffffffffff
-ffffffffff9d61ffffffffffffffffffffffffffffff7d7dffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff619dffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff9d61ffffffffffffffffffff9d61ffffffffffffffffffff
-ffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7d7dffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff619dffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff9d61ffffffffffffffffff
-ff9d61ffffffffffffffffffffffffffffff7d7dffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffff
-ffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff619dff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffffffffe6
-cecececececececececececedaffffffffffffffff0061ffffffffffffff
-ffffffffffffffffff40beffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff00ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffbe40ffffffffffffffffffffbe40ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff9d61ffffffffffffffffffff9d61ffffffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffff7d7dffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff619dffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffffda50240000000000000000000000003cffffffff
-ffffffff0061ffffffffffffffffffffffffffffffff40beffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffbe40ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffbe40ffffffffffffffffffffbe40ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff9d61ffffffffffffffffffff9d61ff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffff7d
-7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff619dffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffe624000000000000
-00000000000000003cffffffffffffffff0061ffffffffffffffffffffff
-ffffffffff40beffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40
-ffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d61
-ffffffffffffffffffff9d61ffffffffffffffffffffffffffffff7d7dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dff
-ffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff619dffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffff6100002450858585858585858585858595ffffffffffffffff
-0061ffffffffffffffffffffffffffffffff40beffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff00ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffbe40ffffffffffffffffffffbe40ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff9d61ffffffffffffffffffff9d61ffffffffff
-ffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffff
-ffffffffffcecefffff2cef2ffffceceffffffffffffffffffffffffffff
-ffffffffffffffffffff7d7dffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff619dffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffff240024ceffffffffffffffff
-ffffffffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff9d61ffffffff
-ffffffffffff9d61ffffffffffffffffffffffffffffff7d7dffffffffff
-ffffffffffffffffffffffffffffffffffff2424ffff850085ffff2424ff
-ffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff619dffffffffffffffffffff0061ffffffffffffffffffffffffffff
-da000085ffffffffffffffffffffffffffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff9d61ffffffffffffffffffff9d61ffffffffffffffffff
-ffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffff
-ff2424ffff852485ffff2424ffffffffffffffffffffffffffffffffffff
-ffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffce0000ceffffffffffffffffffffffffff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffff
-ffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff9d61ffffffffffffffff
-ffff9d61ffffffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffe62400ce
-ffffffffffffffffffffffffffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffbe40ffffffffffffffffffffbe40ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff9d61ffffffffffffffffffff9d61ffffffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffff240085ffffffffffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffbe40
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff9d61ffffffffffffffffffff9d61
-ffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffff850024f2ffffff
-ffffffffffffffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe
-40ffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d
-61ffffffffffffffffffff9d61ffffffffffffffffffffffffffffff7d7d
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7d
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff619dffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffff50003cbeffffffffffffffffffffffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff9d61ffffffffffffffffffff9d61ffffffff
-ffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7d7dffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff619dffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffff9585240000243c3c3c3c3c
-3c3c3c3c3c61ffffffffffffffff0061ffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff9d61ffffff
-ffffffffffffff9d61ffffffffffffffffffffffffffffff7d7dffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffff
-ffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff619dffffffffffffffffffff0061ffffffffffffffffffffffffff
-ffff3c0000000000000000000000000000003cffffffffffffffff0061ff
-ffffffffffffffffffffffffffffff40beffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffbe40ffffffffffffffffffffbe40ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff9d61ffffffffffffffffffff9d61ffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffff7d7dffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff619dffffffffffffffffffff0061
-ffffffffffffffffffffffffffffff3c0000000000000000000000000000
-003cffffffffffffffff0061ffffffffffffffffffffffffffffffff40be
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff00ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffff
-ffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff9d61ffffffffffffff
-ffffff9d61ffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61
-9dffffffffffffffffffff0061ffffffffffffffffffffffffffffffdace
-cecececececececececececececedaffffffffffffffff0061ffffffffff
-ffffffffffffffffffffff40beffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff00ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffbe40ffffffffffffffffffffbe40ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff9d61ffffffffffffffffffff9d61ffffffffffffffffffffffff
-ffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7d7dffffffffffffffffffffffffff7d7dffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff619dffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffffff40beffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffbe
-40ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff9d61ffffffffffffffffffff9d
-61ffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff619dffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-9d61ffffffffffffffffffff9d61ffffffffffffffffffffffffffffff8d
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-8dffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff619dffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff9d61ffffffffffffffffffff9d61ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff20deffffff
-ffffffffffffffffffffffffffffffffffde20ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff0061ffffffffffffffffda3c3c50ffffff613c3c3c3c3c3c3c3c3c
-3c3c3c3c3c3c61ffffffffffffffff0061ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffff
-ffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff9d61ffff
-ffffffffffffffff9d61ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff20deffffffffffffffffffffffffffffffffffffffff
-de20ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff0061ffffffffffffffffce000024
-ffffff3c0000000000000000000000000000003cffffffffffffffff0061
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffbe40ffffffffffffffffffffbe40ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff9d61ffffffffffffffffffff9d61ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff20deffffffffffffff
-ffffffffffffffffffffffffffde20ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-61ffffffffffffffffce000024ffffff3c00000000000000000000000000
-00003cffffffffffffffff0061ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffff
-ffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff9d61ffffffffffff
-ffffffff9d61ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff20deffffffffffffffffffffffffffffffffffffffffde20ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff0061ffffffffffffffffffcececeffffffda
-cececececececececececececececedaffffffffffffffff0061ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffbe40ffffffffffffffffffffbe40ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff9d61ffffffffffffffffffff9d61ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff20deffffffffffffffffffffff
-ffffffffffffffffffde20ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff619dffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff9d61ffffffffffffffffffff
-9d61ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-20deffffffffffffffffffffffffffffffffffffffffde20ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff619dffff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff9d61ffffffffffffffffffff9d61ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff20deffffffffffffffffffffffffffffff
-ffffffffffde20ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff619dffffffffffffffffffff0061ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffff40beffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffbe40ffffffffffffffffffffbe40ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff9d61ffffffffffffffffffff9d61ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff20deffff
-ffffffffffffffffffffffffffffffffffffde20ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7d
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff619dffffffffffff
-ffffffff0061ffffffffffffffffffffffffffffffffffe6a18585858585
-8585858585858595ffffffffffffffff0061ffffffffffffffffffffffff
-ffffffff40beffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ff
-ffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff9d61ff
-ffffffffffffffffff9d61ffffffffffffffffffffffffffffffae000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000aeffff
-ffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff619dffffffffffffffffffff0061ffffffffffffffffffffff
-ffffffffff8524000000000000000000000000003cffffffffffffffff00
-61ffffffffffffffffffffffffffffffff40beffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffbe40ffffffffffffffffffffbe40ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff9d61ffffffffffffffffffff9d61ffffffffffff
-ffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7d7dffffffffffffffffffffffffff7d7dffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff619dffffffffffffffffffff
-0061ffffffffffffffffffffffffffffff95000000000000000000000000
-0000003cffffffffffffffff0061ffffffffffffffffffffffffffffffff
-40beffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7d4040404040404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-50ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff00ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffff
-ffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff9d61ffffffffff
-ffffffffff9d61ffffffffffffffffffffffffffffff7d7dffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff619dffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-24000061becececececececececececedaffffffffffffffff0061ffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff408dbebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebe00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff9d61ffffffffffffffffffff9d61ffffffffffffffffffff
-ffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7d7dffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff619dffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffe6240061ffffffffffffffffffffffffffff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff9d61ffffffffffffffffff
-ff9d61ffffffffffffffffffffffffffffff7d7dffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffce0000beff
-ffffffffffffffffffffffffffffffffffffffffff0061ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff40beffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffbe40ffffffffffffffffffffbe40ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff9d61ffffffffffffffffffff9d61ffffffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffe62400ceffffffffffffffffffffffffffffffffffff
-ffffffff0061ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff40be
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffbe40ffffffffffffffffffffbe40ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff9d61ffffffffffffffffffff9d61ff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffff240095ffffffffff
-ffffffffffffffffffffffffffffffffff0061ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff40beffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff00ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40
-ffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d61
-ffffffffffffffffffff9d61ffffffffffffffffffffffffffffff7d7dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffff95003cffffffffffffffffffffffffffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff40beffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff00ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffbe40ffffffffffffffffffffbe40ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff9d61ffffffffffffffffffff9d61ffffffffff
-ffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7d7dffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff619dffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffff61003cbeffffffffffffff
-ffffffffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff9d61ffffffff
-ffffffffffff9d61ffffffffffffffffffffffffffffff7d7dffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe3cce
-ffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff619dffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffffff610000243c3c3c3c3c3c3c3c3c3c61ffffffffffffffff0061ffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff9d61ffffffffffffffffffff9d61ffffffffffffffffff
-ffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff2400ceffffffffffffffffffffffffffffffffff
-ffffffffffff7d7dffffffffffffffffffffffffff7d7dffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff619dffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffff610000000000000000000000000000
-3cffffffffffffffff0061ffffffffffffffffffffffffffffffff40beff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff40beffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffff
-ffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff9d61ffffffffffffffff
-ffff9d61ffffffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffe69585e6ffcedaffffffe68585daffffffce2400a1daffffff
-a18595e6ffffffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff619d
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffff850000
-0000242424242424242424242450ffffffffffffffff0061ffffffffffff
-ffffffffffffffffffff40beffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff40beffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff00ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffbe40ffffffffffffffffffffbe40ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff9d61ffffffffffffffffffff9d61ffffffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffce2400002475003cffffa12400
-000050ffff240000003cffda3c00000024a1ffffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffff7d7dffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff619dffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffff24000085daffffffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffff40beffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff40
-beffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffbe40
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff9d61ffffffffffffffffffff9d61
-ffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffff
-3c0061cea124003cffbe0024a1ce3c0085ff8524007595ff3c0061ce9500
-24e6ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffff
-7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff619dffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffda000075ffffffff
-ffffffffffffffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffff40beffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff40beffffffffffffffffffff300c0c0c0c0c
-0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c
-0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c
-0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c
-0c0c0c0c0c0c0c0c0c0c0c0c14eeffffffffffffffffffffffffffffffff
-ffffffffffff00ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff00ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffff6504040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-79ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe
-40ffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe
-40ffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d
-61ffffffffffffffffffff9d61ffffffffffffffffffffffffffffff7d7d
-ffffffffffffffffffffffffce0024ffffff75003cff750061ffffce003c
-ffff2400ceffda0024ffffff95bef2ffffffffffffffffffffffffff7d7d
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff619dffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffce0000ceffffffffffffffffffffffffffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffff0000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000c2ffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffde18bebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebea520ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff9d61ffffffffffffffffffff9d61ffffffff
-ffffffffffffffffffffff7d7dffffffffffffffffffffffffce0024ffff
-ff85003cff3c00243c3c3c0024ffff2400ceffce0024ffffffffffffffff
-ffffffffffffffffffffff7d7dffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff619dffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffe62400ceffffffffffffffff
-ffffffffffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffff00000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000c2ffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffde20ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffde20ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff9d61ffffff
-ffffffffffffff9d61ffffffffffffffffffffffffffffff7d7dffffffff
-ffffffffffffffffce0024ffffff85003cff3c00508585858585ffff2400
-ceffce0024ffffffe6ffffffffffffffffffffffffffffff7d7dffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff0061ffffffffffffffffffffffffff
-ffff3c0075ffffffffffffffffffffffffffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff40beffffffffffffff
-ffffff000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-00000000000000000000000000000000000000000000c2ffffffffffffff
-ffffffffffffffffffffffffffffff00ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffde20ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffde20ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffbe40ffffffffffffffffffffbe40ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff9d61ffffffffffffffffffff9d61ffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffe6240095fff23c003c
-ff850050ffffbe85beffff2400ceffe62400beffff2424a1ffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff0061
-ffffffffffffffffffffffffffffffb20024ceffffffffffffffffffffff
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff40beffffffffffffffffffff0000000000000000000000000030
-000000000000000000002424000000000000000000000000000000000000
-000000242400000000000000000000301800000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-0000000000c2ffffffffffffffffffffffffffffffffffffffffffff00ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffde20ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffde20ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffff
-ffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff9d61ffffffffffffff
-ffffff9d61ffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffff7500003c2424003cffe624006185240085ffff24003c61ff61
-0024613c0024ffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff61
-002485e6ffffffffffffffffffffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff40beffffffffffffffffffff00
-0000000000000000005dc2daffdaae240000000018aedaffffda9d180000
-0079dada00000000aeda790000009ddaffffda9d000000000040c2daffda
-da7900000000aec22400000000000030dadadadadadadada300000000000
-000000000000000000000000000000000000c2ffffffffffffffffffffff
-ffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffde20ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffde20ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffbe40ffffffffffffffffffffbe40ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff9d61ffffffffffffffffffff9d61ffffffffffffffffffffffff
-ffffff7d7dffffffffffffffffffffffffffff7524246175003cffffce3c
-24002475ffffff75240050ffff612400243cceffffffffffffffffffffff
-ffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffff613c240000242424242424242424242450ffff
-ffffffffffff0061ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-40beffffffffffffffffffff0000000000000000009dffffdac2daffda24
-000024daffdadadadaffda24000079ffff89000000c2ff790000c2ffdac2
-c2ffffae0000005dffffdac2daffffc2000000daff3000000000000030ff
-ffdadadadadada3000000000000000000000000000000000000000000000
-00c2ffffffffffffffffffffffffffffffffffffffffffff00ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffde
-20ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffde20ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffa520ffffffffffffffffffffbe
-40ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff9d61ffffffffffffffffffff9d
-61ffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffff
-ffa1cee6ffff85003cffffffffe6ceffffffffffffe6ceffffffffffcee6
-ffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff619dffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffff3c0000000000
-000000000000000000003cffffffffffffffff0061ffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffff0000000000
-00000040ffff69000030daffae0000c2ffda30000024daffc2000079ffff
-da240000c2ff790024ffda18000069ffff240018daffc20c00004cdaff89
-0000daff3000000000000030ffda00000000000000000000000000000000
-0000000000000000000000000000c2ffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffde20ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff613c95ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-de20ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-8d006dffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-9d61ffffffffffffffffffff9d61ffffffffffffffffffffffffffffff7d
-7dffffffffffffffffffffffffff24003cbea1240095ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d
-7dffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff619dffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffff5024242424242424242424242424242450ffffffffffff
-ffff0061ffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffff0000000000000000aeffae000000004c89400024ffff
-400000000040ffff240079ffdaffc20000c2ff790030ffda400000007930
-000069ffda0c0000000079ffda0000daff3000000000000030ffda000000
-000000000000000000000000000000000000000000000000000000c2ffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffde20ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff3c0085ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffa124ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffde20ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff8d04106dffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff9d61ffffffffffffffffffff9d61ffffff
-ffffffffffffffffffffffff7d7dffffffffffffffffffffffffffa12400
-00000050ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7d7dffffffffffffffffffffffffff7d7dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff619dffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff0061ffffffffffffffffffffffffff
-ffffff40beffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff40beffffffffffffffffffff0000000000000000da
-ff79000000000000000079ffda000000000000daff790079ff9ddaff6900
-c2ff790000c2ffffda9d5d00000000c2ffc2000000000024ffff3000daff
-3000000000000030ffda7979797979690000000000000000000000000000
-00000000000000000000c2ffffffffffffffffffffffffffffffffffffff
-ffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffde20ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff613c95ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff2424ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffde20ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff8d040010
-6dffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff9d61ffff
-ffffffffffffffff9d61ffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffcececedaffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff619dffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff0061
-ffffffffffffffffffffffffffffffff40beffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff40beffffffffffff
-ffffffff0000000000000000daff79000000000000000079ffc200000000
-0000c2ff790079ff7979ffda0cc2ff79000024aeffffffffda5d0000c2ff
-79000000000000daff3000daff3000000000000030ffffffffffffffc200
-0000000000000000000000000000000000000000000000c2ffffffffffff
-ffffffffffffffffffffffffffffffff00ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffde20ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff2424ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffde20ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff8d0400000c85ffffffffffffbe40ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff9d61ffffffffffffffffffff9d61ffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffff7d7dffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff619dffffffffffffffffffff00
-61ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff40
-beffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff40beffffffffffffffffffff0000000000000000daff790000
-00000000000079ffda000000000000daff790079ff7900c2ff9dc2ff7900
-0000002479c2daffff4000c2ff9d000000000018daff3000daff30000000
-00000030ffda797979797969000000000000000000000000000000000000
-000000000000c2ffffffffffffffffffffffffffffffffffffffffffff00
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff00ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffde20ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffdacee6ffffffffffffffffffffe6ceda
-ffffffffffffffffffffffffffffffffffffffff2424ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffde20ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff8d040000001095ff
-ffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff9d61ffffffffffff
-ffffffff9d61ffffffffffffffffffffffffffffff7d7dffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffff
-ffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-619dffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffff40beffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff40beffffffffffffffffffff
-0000000000000000c2ff8900000000306918005dffda000000000000daff
-5d0079ff790040ffffdaff790024404c00000018daff89009dffc2000000
-000040ffda1800daff3000000000000030ffda0000000000000000000000
-00000000000000000000000000000000000000c2ffffffffffffffffffff
-ffffffffffffffffffffffff00ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff00ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffde20ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff502485ffff852485b23c000024
-3cceffffffff2424f2502400003cb2ffffffff502485ffffffffff502485
-ff852400002424ceffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffde20ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff8d04000000001095ffffffffbe40ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff9d61ffffffffffffffffffff9d61ffffffffffffffffffffff
-ffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7d7dffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff619dffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffff000000000000000089ffda0c000000aeff
-c20018daff9d0000000089ffda180079ff7900009dffffff790079ffda00
-000000c2ff9d005dffff5d00000000c2ffc20000daff3000000000000030
-ffda00000000000000000000000000000000000000000000000000000000
-0000c2ffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-de20ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-3c0085ffff85005000246161240024e6ffffff24243c246185610000a1ff
-ffff3c0085ffffffffff3c0085ff953c00003c3cdaffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffde20ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff8d0400000000001095ffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff9d61ffffffffffffffffffff
-9d61ffffffffffffffffffffffffffffff7d7dffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff619dffff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffff00000000
-000000000cdaffc25d309dffff5d000089ffff9d40409dffff89000079ff
-7900000cdaffff790018daff9d403089ffff5d0000c2ffff89305dc2ffff
-4c0000daff8979797979790030ffda797979797979400000000000000000
-000000000000000000000000000000c2ffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffde20ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff3c0085ffff85000061fffffff23c0085ff
-ffff240024ceffffffa10024e6ffff3c0085ffffffffff3c0085ffffff24
-24ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffde20ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff8d0400000000000010b2ffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff9d61ffffffffffffffffffff9d61ffffffffffffffffffffffffffffff
-7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff0061ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff40beff
-ffffffffffffffffff00000000000000000030daffffffffff9d00000000
-9dffffffffffff9d00000079ff7900000069ffff7900005dffffffffffff
-9d00000000c2ffffffffffda5d000000daffffffffffffda0030ffffffff
-ffffffff790000000000000000000000000000000000000000000000c2ff
-ffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffde20ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff3c0085ff
-ff850024ffffffffff85003cffffff240085ffffffffff500095ffff3c00
-85ffffffffff3c0085ffffff2424ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffde20ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff8d040000000000000014b2ffbe40ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff9d61ffffffffffffffffffff9d61ffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff0061ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff40beffffffffffffffffffff0000000000000000
-00000069aec289400000000000002479c2c2792400000000407940000000
-006979400000002479c2c289400000000000004089c2ae69180000000079
-79797979797979000c797979797979797940000000000000000000000000
-0000000000000000000000c2ffffffffffffffffffffffffffffffffffff
-ffffffff00ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffde20ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff3c0085ffff85003cffffffffff85003cffffff2400
-daffffffffff95003cffff3c0085ffffffffff3c0085ffffff2424ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffde20ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff8d0400
-0000000000000014b2be40ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff9d61ff
-ffffffffffffffffff9d61ffffffffffffffffffffffffffffff8d000000
-000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000008dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0061ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-61ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff40beffffffffff
-ffffffffff00000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000c2ffffffffff
-ffffffffffffffffffffffffffffffffff00ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffde20ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff3c0085ffff85003c
-ffffffffff85003cffffff2424ffffffffffffce003cffff3c0085ffffff
-ffff3c0085ffffff2424ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffde20ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff8d04000000000000000000148540ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff9d61ffffffffffffffffffff9d61ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff20deffffffffffff
-ffffffffffffffffffffffffffffde20ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7dceffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff40beffffffffffffffffffff000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-00000000000000c2ffffffffffffffffffffffffffffffffffffffffffff
-00fffffffffffffffffffffffffffffffffffffffffffffffffffffffff6
-71ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffde20ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff3c0085ffff85003cffffffffff85003cffffff2424ffffffff
-ffffce0024ffff3c0085ffffffffff3c0085ffffff2424ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffde20ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffde85ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff8d040000000000
-0000000000100c4040404040404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404040404040
-40404040404040404040404040404040404040404040402871ffffffffff
-ffffffffff9d61ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff20deffffffffffffffffffffffffffffffffffffffffde20ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff619dffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff4020ceffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ff0000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000c2ffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-fffffffffffffffffffffff65000ffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffde20ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff3c0085ffff85003cffffffff
-ff85003cffffff2424ffffffffffffbe003cffff3c0085ffffffffff3c00
-85ffffff2424ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffde20ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffde2840ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff8d0400000000000000000000001099bebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebef6ffffffffffffffffffff9d61ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff20deffffffffffffffffffff
-ffffffffffffffffffffde20ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff619dffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff40ae40ce
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffff00000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000c2ffffffffffffffffffffffffffffffffffffffffffff00ffffff
-fffffffffffffffffffffffffffffffffffffffffffffff650b600ffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffde20ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff3c0085ffff85003cffffffffff85003cffffff2400beffffffffff7500
-61ffff3c0085ffffffffff240085ffffff2424ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffde20ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffde409d40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff8d04000000000000000000
-00000018ceffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff9d61ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff20deffffffffffffffffffffffffffffffffffffffffde20ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff619dff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff0061ffffffffffffff
-ffffffffffffffffff40beffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff40beee40ceffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff40beffffffffffffffffffff000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-00000000000000000000000000000000c2ffffffffffffffffffffffffff
-ffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff
-fffffffffff650b6ff00ffffffffff00ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffde20ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff3c0085ffff85003cffffffffff85003c
-ffffff240061fffffffff22400beffff610061ffffffffbe000085ffffff
-2424ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffde20ffffffffffffffffffffffffffffffffffffffffffffffffffde
-40debe40ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff8d040000000000000000000000000014d6ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff9d61ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff20deffffffffffffffffffffffffffff
-ffffffffffffde20ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffaeb6ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff619dffffffffffffffffffff0061ffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffff2cecececee6ffff
-ffffffff0061ffffffffffffffffffffffffffffffff40beffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff40beffee40ceffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff40be
-ffffffffffffffffffff0000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000c2
-ffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffff
-fffffffffffffffffffffffffffffffffff650b6ffff00ffffffffff00ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffde20ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff3c0085
-ffff85003cffffffffff85003cffffff24000061ffffbe3c0050ffffffa1
-000095ffffa124240085ffffff240075cef2ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffde20ffffffffffffffffffffffffff
-ffffffffffffffffffffffde40deffbe40ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffbe40ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff8d0400000000000000000000000000
-0020deffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff9d61ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff20deff
-ffffffffffffffffffffffffffffffffffffffde20ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d
-7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d10b6ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff619dffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff85000000002450ffffffffff0061ffffffffffffffffffffff
-ffffffffff40beffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff40beffffee40ceffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff40beffffffffffffffffffff00000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000c2ffffffffffffffffffffffffffffffffff
-ffffffffff00fffffffffffffffffffffffffffffffffffffffffffffff6
-50b6ffffff00ffffffffff00ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffde20ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff3c0085ffff85003cffffffffff85003cffffff24
-003c002424000050ffffffffff50000024240050750085ffffff61000000
-beffffffffffffffffffffffffffffffffffffffffffffffffffffffde20
-ffffffffffffffffffffffffffffffffffffffffffffffde40deffffbe40
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff8d04
-00000000000000000000000000000020deffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff9d61ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff20deffffffffffffffffffffffffffffffffffff
-ffffde20ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7950b6ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff619dffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff8500003ca161243cffffffff
-0061ffffffffffffffffffffffffffffffff40beffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff40beffffffee40ceffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff40beffffffff
-ffffffffffff000000000000000079dadadadadadac24c000000dadadada
-dadadada790000000024dada9d0000000000aedadadadadac24c00000000
-000000000000000000000000000000000000000000000000000000000000
-00000000000000000000000000000000000000000000000000c2ffffffff
-ffffffffffffffffffffffffffffffffffff00ffffffffffffffffffffff
-fffffffffffffffffffffff650b6ffffffff00ffffffffff00ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffde20ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff9585beffffbe85
-95ffffffffffbe8595ffffff2400cebe503c50a1ffffffffffffffa1503c
-50a1ffbe85beffffffff955050beffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffde20ffffffffffffffffffffffffffffffffff
-ffffffffffde40deffffffbe40ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff8d040000000000000000000000000000000020
-deffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff9d61ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff20deffffffffff
-ffffffffffffffffffffffffffffffde20ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7d7df650b6ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff619dffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff85242450ffffbe3cf2ffffff0061ffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff40beffffffffee40ceffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffff000000000000000079ffff
-dadadadaffff4c0000daffdadadadadada79000000009dffffda00000000
-00c2ffdadadadaffff5d0000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-0000000000000000c2ffffffffffffffffffffffffffffffffffffffffff
-ff00fffffffffffffffffffffffffffffffffffffffffff650b6ffffffff
-ff00ffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffde20ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff2400ceffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffde20ffffffff
-ffffffffffffffffffffffffffffffffffde40deffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff8d0400000000
-0000000000000000000000000018eeffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff9d61ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff20deffffffffffffffffffffffffffffffffffffffffde20
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffae000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000008c6ffffffffffffffffff7d7d
-fff650b6ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff619dffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff40beffffffffffee40ceffffffffffff
-ffffffffffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffff000000000000000079ffc200000018c2ffae0000daff300000000000
-0000000000daffdaff5d00000000c2ff790000189dffda18000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000c2ffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-fffffffffff650b6ffffffffffff00ffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffde20ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff2400ceffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffde20ffffffffffffffffffffffffffffffffffffffffde
-40deffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff8d0400000000000000000000000000000000000028eeff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff9d61ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff20deffffffffffffffffff
-ffffffffffffffffffffffde20ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-619dffffffffffffffffff7d7dfffff650b6ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff40beff
-ffffffffffee40ceffffffffffffffffffffffffffffffffffffffffffff
-ffffff40beffffffffffffffffffff000000000000000079ffc200000000
-89ffc20000daff300000000000000000005dffda89ffc200000000c2ff79
-00000000daff690000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-00000000c2ffffffffffffffffffffffffffffffffffffffffffff00ffff
-fffffffffffffffffffffffffffffffffff650b6ffffffffffffff00ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffde20ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff2400ceffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffde20ffffffffffffffff
-ffffffffffffffffffffffde40deffffffffffffbe40ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff8d040000000000000000
-000000000000000000000028eeffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff9d61ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff20deffffffffffffffffffffffffffffffffffffffffde20ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff619dffffffffffffffffff7d7dfffffff6
-50b6ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff40beffffffffffffffee40ceffffffffffffffff
-ffffffffffffffffffffffffffffffff40beffffffffffffffffffff0000
-00000000000079ffc20000184cdaff9d0000daff89797979797900000000
-aeff7924ffff24000000c2ff7900000000c2ffc200000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000c2ffffffffffffffffffffffff
-ffffffffffffffffffff00fffffffffffffffffffffffffffffffffffff6
-50b6ffffffffffffffff00ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffde20ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff2400ceffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffde20ffffffffffffffffffffffffffffffffffffde40deffffffff
-ffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff8d04000000000000000000000000000000000000000028eeffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff9d61ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff20deffffffffffffffffffffffffff
-ffffffffffffffde18bebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebe5d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff5d75bebe
-bebebebebebebe617dfffffffff650b6ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff40beffffffffff
-ffffffee40ceffffffffffffffffffffffffffffffffffffffffffffff40
-beffffffffffffffffffff000000000000000079ffffdadadaffffc20000
-00daffffffffffffda00000018dada1800c2ff9d000000c2ff7900000000
-c2ffc2000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-c2ffffffffffffffffffffffffffffffffffffffffffff00ffffffffffff
-fffffffffffffffffffffff650b6ffffffffffffffffff00ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffde20
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffceceffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffde20ffffffffffffffffffffffff
-ffffffffffde40deffffffffffffffffbe40ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff8d04000000000000000000000000
-0000000000000000002cf6ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d61
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff20de
-fffffffffffffffffffffffffffffffffffffffff6504040404040404040
-404040404040404040404040404040404040404040404040404040404040
-404040404040404040207dffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff552840404040404040404040befffffffffff650b6
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffffffffffffffffff
-ffa1753c85daffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff40beffffffffffffffffffee40ceffffffffffffffffffff
-ffffffffffffffffffffffff40beffffffffffffffffffff000000000000
-000079ffdac2daffda5d00000000daff89797979797900000089ffc20000
-79ffda000000c2ff7900000000c2ffc20000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-00000000000000000000000000c2ffffffffffffffffffffffffffffffff
-ffffffffffff00fffffffffffffffffffffffffffffffff650b6ffffffff
-ffffffffffff00ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffde20ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffde
-20ffffffffffffffffffffffffffffffffde40deffffffffffffffffffbe
-40ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8d
-040000000000000000000000000000000000000000000438f6ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff9d61ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff20deffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffff7d7dffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff619dffffffffffff
-fffffffffffffffffffffff650b6ffffffffffffffffffffffffffffffff
-ffffffffffffff619dffffffffffffffffffff0061ffffffffffffffffff
-ffffffbe5024beffffffffffb224000000000050e6ffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ffee40ceffffffffffffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffff000000000000000079ffc20000c2ffda24000000daff30
-0000000000000000daffffdadadaffff5d0000c2ff7900000000c2ff9d00
-000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000c2ffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-fffffffffff650b6ffffffffffffffffffffff00ffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffde20ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffde20ffffffffffffffffffffffffffffffde
-40deffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff8d0400000000000000000000000000000000
-0000000000000438f6ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff9d61ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff20deffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff619dfffffffffffffffffffffffffffffffffffff650b6ffff
-ffffffffffffffffffffffffffffffffffffffff619dffffffffffffffff
-ffff0061ffffffffffffffffffffff6100000085ffffffffbe0000000000
-00000024e6ffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffee40ceffffffffffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffff000000000000000079ff
-c2000018daffc2000000daff30000000000000005dffffdadadadadaffc2
-0000c2ff7900000018daff5d000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000c2ffffffffffffffffffffffffffffffffffffffff
-ffff00fffffffffffffffffffffffffffff650b6ffffffffffffffffffff
-ffff00ffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffde20ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffde20ffffff
-ffffffffffffffffffffffde40deffffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff8d04000000
-00000000000000000000000000000000000000000438f6ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff9d61ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff20deffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7d7dffffffffffffff7d7dffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff619dffffffffffffffffffff
-fffffffffffffffffff650b6ffffffffffffffffffffffffffffffffffff
-ffffff619dffffffffffffffffffff0061ffffffffffffffffffff500000
-002485ffffffff3c00002495cea13c000050ffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffff40beffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff40beffffffffffffffffffffffffee
-40ceffffffffffffffffffffffffffffffffffffff40beffffffffffffff
-ffffff000000000000000079ffc200000069ffff790000daff8979797979
-796900aeffae000000004cffff2400c2ffae797989daffc2000000000000
-000000000000000000000000000000000000000000000000000000000000
-00000000000000000000000000000000000000000000c2ffffffffffffff
-ffffffffffffffffffffffffffffff00fffffffffffffffffffffffffff6
-50b6ffffffffffffffffffffffffff00ffffffffff00ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffde20ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffde20ffffffffffffffffffffffffffde40deffffffff
-ffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff8d040000000000000000000000000000000000000000
-000000000444ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff9d61ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff20deffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff8585f2ffffffffffffffffffffffff
-ff619dfffffffffffffffffffffffffffffffffffffffff650b6ffffffff
-ffffffffffffffffffffffffffffffff619dffffffffffffffffffff0061
-ffffffffffffffffffa100000085e6ffffffffa1000024ceffffffff3c00
-00beffffffffffffffff0061ffffffffffffffffffffffffffffffff40be
-ffffffff6100000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000008d6
-ffffffffffffffffffffffffffee40ceffffffffffffffffffffffffffff
-ffffffff40beffffffffffffffffffff000000000000000079ffc2000000
-00aeffda1800daffffffffffffffc218daff400000000000daff9d00c2ff
-ffffffffffc2240000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-0000000000c2ffffffffffffffffffffffffffffffffffffffffffff00ff
-fffffffffffffffffffffff650b6ffffffffffffffffffffffffffff2000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000020ffffffffffffff
-ffffffde20ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffde20ffffffffffffff
-ffffffffffde40deffffffffffffffffffffffffffd60800000000000000
-000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000061ffffffffbe40ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff8d0400000000000000
-000000000000000000000000000000000000084cffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff9d61ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff20deffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7d7dffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff2400
-ceffffffffffffffffffffffffff619dffffffffffffffffffffffffffff
-fffffffffffffff650b6ffffffffffffffffffffffffffffffffffffff61
-9dffffffffffffffffffff0061ffffffffffffffffff3c0000a1ffffffff
-ffff3c000085ffffffffffbe000061ffffffffffffffff0061ffffffffff
-ffffffffffffffffffffff40beffffffff40beffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffee40ce
-ffffffffffffffffffffffffffffffffff40beffffffffffffffffffff00
-00000000000000407969000000001879794c007979797979797979692479
-790000000000004c79790069797979797930000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000c2ffffffffffffffffffffff
-ffffffffffffffffffffff00fffffffffffffffffffffff650b6ffffffff
-ffffffffffffffffffffffffffffffffff00ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff00ffffffffffffffffffffde20ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffdacee6ffffffffceceffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffde20ffffffffffffffffffffffde40deffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40
-ffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff8d04000000000000000000000000000000000000000000000000
-0000084cffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff9d61ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff20deffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7d7dffffffffffffff7d7dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff2400ceffffffffffffffffffffffffff619dff
-fffffffffffffffffffffffffffffffffffffffffff650b6ffffffffffff
-ffffffffffffffffffffffff619dffffffffffffffffffff0061ffffffff
-ffffffffda000061ffffffffffffff240024e6ffffffffffff240024ffff
-ffffffffffff0061ffffffffffffffffffffffffffffffff40beffffffff
-40beffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffee40ceffffffffffffffffffffffffffffffff
-40beffffffffffffffffffff000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-00c2ffffffffffffffffffffffffffffffffffffffffffff00ffffffffff
-fffffffffff650b6ffffffffffffffffffffffffffffffffffffffffffff
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff00ffffffffffffffffffffde
-20ffffffffffffffffffffffffffffffffffffffffffffffce2424ffffff
-ffffffffffffffffffffffffffffffffffffffffffffce3c000024daffa1
-24000024ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffde20ffffffffffffffffffffde
-40deffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffbe40ffffffffbe40ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff8d040000000000000000000000
-00000000000000000000000000000000084cffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d
-61ffffffffffffffffffffffffffffffffffffffffffffffffffffffff20
-deffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d7dffffffffffffff7d7dfffffffffffffffffffffffff2cef2da85be
-ffffe68585daffffffffffbe8585beffffffffffbe85a1ff2400ceffffff
-ffffffffffffffffffff619dffffffffffffffffffffffffffffffffffff
-fffffffffff650b6ffffffffffffffffffffffffffffffffff619dffffff
-ffffffffffffff0061ffffffffffffffffa10000beffffffffffffbe0000
-3cffffffffffffff3c0024ffffffffffffffff0061ffffffffffffffffff
-ffffffffffffff40beffffffff40beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffee40ceffff
-ffffffffffffffffffffffffff40beffffffffffffffffffff0000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000c2ffffffffffffffffffffffffffffff
-ffffffffffffff00fffffffffffffffffff650b6ffffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffde20ffffffffffffffffffffffffffffffff
-ffffffffffffffce0024ffffffffffffffffffffffffffffffffffffffff
-ffffffffff3c00243c50ffe62400243c61ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-de20ffffffffffffffffffde40deffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-8d0400000000000000000000000000000000000000000000000000000000
-106dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff9d61ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff20deffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffff7d7dffffffffff
-ffffffffffffff850061240050ffa12400000050ffffff3c000000003cff
-ffff610000003c2400ceffffffffffffffffffffffffff619dffffffffff
-fffffffffffffffffffffffffffffffffffffff650b6ffffffffffffffff
-ffffffffffffffff619dffffffffffffffffffff0061ffffffffffffffff
-850000ceffffffffffff75000075ffffffffffffff850000daffffffffff
-ffff0061ffffffffffffffffffffffffffffffff40beffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffee40ceffffffffffffffffffffffffffff40beffff
-ffffffffffffffff00000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000c2ffff
-ffffffffffffffffffffffffffffffffffffffff00fffffffffffffffff6
-50b6ffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffde20ffffff
-ffffffffffffffffffffffffffffffffffffffffce0024ffffffffffffff
-ffffffffffffffffffffffffffffffffffe62424e6ffffffa10024ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffde20ffffffffffffffffde40deffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff8d04000000000000000000000000000000
-0000000000000000000000000000106dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff9d61ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff20deffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7d7dffffffffffffffffffffffff8500006175b2be0024a1
-ce3c0085ff752450ceb22400ceffa10024a1ce500000ceffffffffffffff
-ffffffffffff619dffffffffffffffffffffffffffffffffffffffffffff
-fffffff650b6ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff0061ffffffffffffffff850000ceffffffffffff3c0000beffffff
-ffffffff850024e6ffffffffffffff0061ffffffffffffffffffffffffff
-ffffffffffffffffff40beffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffee40ceffffffff
-ffffffffffffffffff40beffffffffffffffffffff000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-00000000000000000000c2ffffffffffffffffffffffffffffffffffffff
-ffffff00fffffffffffffff650b6ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff
-ffffffffffffffffde20ffffffffffffffffffffffffffffffffffffffff
-ffffffce0024ffffffffffffffffffffffffffffffffffffffffffffffff
-ce0024ffffffff85003cffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffde20ffff
-ffffffffffde40deffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff8d040000
-00000000000000000000000000000000000000000000000000000000106d
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff9d61ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff20deffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffff850024ffffff750061ffffce003cffffffffffda240085ff3c0075
-ffffe62400ceffffffffffffffffffffffffff619dffffffffffffffffff
-fffffffffffffffffffffffffffffffffff650b6ffffffffffffffffffff
-ffffffffffffffffffffffffffffffff0061ffffffffffffffff850000ce
-ffffffffffff240024ffffffffffffffff3c0024ffffffffffffffff0061
-ffffffffffffffffffffffffffffffffffffffffffff40beffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffee40ceffffffffffffffffffffffff40beffffffffffff
-ffffffff0000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000c2ffffffffffff
-ffffffffffffffffffffffffffffffff00fffffffffffff650b6ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff00ffffffffffffffffffffde20ffffffffffffff
-ffffffffffffffffffffffffffffffffce0024ffe69585a1ffffffffffff
-ceceffffffffffffceceffffcea10024ceceffce75003cceceffffffffff
-be8585beffffffffffffceceffe685a1ffffffffffffffffffffffffffff
-ffffffffffffffffffde20ffffffffffffde40deffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff8d0400000000000000000000000000000000000000
-0000000000000000000000000c79ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff9d61ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff20deffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffff85003cffffff3c00243c3c3c0024
-ffff953c2400000085ff3c0085ffffff2400ceffffffffffffffffffffff
-ffff619dffffffffffffffffffffffffffffffffffffffffffffffffffff
-fff630d6ffffffffffffffffffffffffffffffffffffffffffffffffff00
-61ffffffffffffffffa10000beffffffffffbe00003cffffffffffffffff
-240024ffffffffffffffff0061ffffffffffffffffffffffffffffffffff
-ffffffffff40beffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffee40ceffffffffffff
-ffffffffff40beffffffffffffffffffff00000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000c2ffffffffffffffffffffffffffffffffffffffffffff00
-fffffffffff650b6ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffff
-ffffffffde20ffffffffffffffffffffffffffffffffffffffffffffffce
-0024952400000024a1ffffffff2400ceffffffffff2400ceff2400000000
-00ce000000000024ffffffa124000000003cb2ffffffff2424be24000050
-ffffffffffffffffffffffffffffffffffffffffffffde20ffffffffffde
-40deffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff8d04000000000000
-00000000000000000000000000000000000000000000000000001095ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff9d61ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff20deffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffff85
-003cffffff3c00508585858585ff75003c95da3c00ceff3c0085ffffff24
-00ceffffffffffffffffffffffffff619dffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffff0061ffffffffffffffffda000061ffffffff
-ff61000075ffffffffffffffbe00003cffffffffffffffff0061ffffffff
-ffffffffffffffffffffffffffffffffffff40beffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffee20eeffffffffffffffffffff40beffffffffffffffffffff
-040000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-00000000000000000000000000000000000000caffffffffffffffffffff
-ffffffffffffffffffffffff00ffffffffff40a5ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff00ffffffffffffffffffffde20ffffffffffffffffffffff
-ffffffffffffffffffffffffce00000050bece610000b2ffffff2400ceff
-ffffffff2400ceff857500248585f2855000248585ffff95000075cece61
-0000beffffff242424243c24a1ffffffffffffffffffffffffffffffffff
-ffffffffffde20fffffffff630d6ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe
-40ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffaa000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-00000000000000000000000000000000000071ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff20deffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d7dffffffffffffff7d7d
-ffffffffffffffffffffffff85003cffffff850050ffffbe85beff2400ce
-ffff2400ceff610050ffffbe0000ceffffffffffffffffffffffffff619d
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffff619dffffffffffffffffffff0061ffffff
-ffffffffffff3c0024ceffffffce240000daffffffffffffff3c000095ff
-ffffffffffffff0061ffffffffffffffffffffffffffffffff40beffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff619dffffffffffffffffffff
-ff40beffffffffffffffffffff20deffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff20deffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffce40eeffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-de20ffffffffffffffffffffffffffffffffffffffffffffffce000061ff
-ffffff95003cffffff2400ceffffffffff2400ceffffce0024ffffffff85
-003cffffffe62400a1ffffffff95003cffffff24003cf2ffffffffffffff
-ffffffffffffffffffffffffffffffffffffde20ffffffffffb650f6ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-20deffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffffffffffff7d7dffffffffffffffffffffffff85003cffff
-ffe624006185240085ff3c003ca161240085ffbe00005075240000ceffff
-ffffffffffffffffffffff619dffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffff619dffff
-ffffffffffffffff0061ffffffffffffffffffa100002495cea124000050
-ffffffffffffff61000024ffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffff40beffffffff40beffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-619dffffffffffffffffffffffff40beffffffffffffffffffff20deffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff20deffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffce40eeffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffde20ffffffffffffffffffffffffffffff
-ffffffffffffffffce0024e6ffffffffff2400beffff2400ceffffffffff
-2400ceffffce0024ffffffff85003cffffff750050ffffffffffff2400be
-ffff240095ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffde20ffffffffffffb650f6ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff20deffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7d7dffffffffffffff7d7dffffffff
-ffffffffffffffff852450ffffffffce3c24002475ffffce240024508524
-61ffffa1240024755024ceffffffffffffffffffffffffff619dffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffff619dffffffffffffffffffff0061ffffffffffffff
-ffffff3c0000000000000024e6ffffffffbe7524000000a1ffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffff40beffffffff40beff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff619dffffffffffffffffffffffffff40beff
-ffffffffffffffffff20deffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff20deff
-ffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffce
-40eeffffffffffffffffffffffffffffffffffffffffffffffffff00ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff00ffffffffffffffffffffde20ffff
-ffffffffffffffffffffffffffffffffffffffffffce0024ffffffffffff
-500085ffff2400ceffffffffff2400ceffffce0024ffffffff85003cffff
-ff3c0075cececececece3c0085ffff2400ceffffffffffffffffffffffff
-ffffffffffffffffffffffffffffde20ffffffffffffffb650f6ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffbe40ffffffffbe40ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff20deffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7d
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-e6ceffffffffffffcee6ffffffffffffffffceffffffffffffffffffffff
-ffffffffffffff619dffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffff619dffffffffffff
-ffffffff0061ffffffffffffffffffffff61000000000024ceffffffffff
-3c0000000075ffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffff40beffffffff40beffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff619dffffffff
-ffffffffffffffffffff40beffffffffffffffffffff20deffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff20deffffffffffffffffffffffffffffffffffff
-ffffffff00ffffffffffffffffce40eeffffffffffffffffffffffffffff
-ffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff
-ffffffffffffffffffde20ffffffffffffffffffffffffffffffffffffff
-ffffffffce003cffffffffffff850085ffff2400ceffffffffff2400ceff
-ffce0024ffffffff85003cffffff3c0000000000000000000085ffff2400
-ceffffffffffffffffffffffffffffffffffffffffffffffffffffde20ff
-ffffffffffffffb650f6ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffbe40ffffffffbe40ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff20deffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7d7dffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff619dffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffff619dffffffffffffffffffff0061ffffffffffffffffffffff
-ffda853c5095ffffffffffffff3c00003cb2ffffffffffffffffffffff00
-61ffffffffffffffffffffffffffffffff40beffffffff40beffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff619dffffffffffffffffffffffffffffff40beffffffffff
-ffffffffff20deffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff20deffffffffff
-ffffffffffffffffffffffffffffffffff00ffffffffffffffffffce40ee
-ffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff00ffffffffffffffffffffde20ffffffffffff
-ffffffffffffffffffffffffffffffffffce003cffffffffffff850085ff
-ff2400ceffffffffff2400ceffffce0024ffffffff85003cffffff3c0075
-8585858585858585beffff2400ceffffffffffffffffffffffffffffffff
-ffffffffffffffffffffde20ffffffffffffffffffb650f6ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffbe40ffffffffbe40ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff20deffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffff
-ffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff619dffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffff619dffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffffffffffffffffffff9585daff
-ffffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-40beffffffff40beffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff619dffffffffffffffffffff
-ffffffffffff40beffffffffffffffffffff20deffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff20deffffffffffffffffffffffffffffffffffffffffffff
-00ffffffffffffffffffffce40eeffffffffffffffffffffffffffffffff
-ffffffffffff00ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff00ffffffffff
-ffffffffffde20ffffffffffffffffffffffffffffffffffffffffffffff
-ce003cffffffffffff500085ffff2400ceffffffffff2400ceffffce0024
-ffffffff85003cffffff3c0095ffffffffffffffffffffff2400ceffffff
-ffffffffffffffffffffffffffffffffffffffffffffffde20ffffffffff
-ffffffffffb650f6ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffbe40ffffffffbe40ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb6
-85ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff20deffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffff7d7dffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff619dffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ff619dffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffff40beffffffff40beffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-619dffffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ff20deffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff20deffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffce40eeffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffde20ffffffffffffffffffff
-ffffffffffffffffffffffffffce0024ffffffffffff2400ceffff2400ce
-ffffffffda0000ceffffce0024ffffffff85003cffffff750050ffffffff
-ffff6161beffff2400ceffffffffffffffffffffffffffffffffffffffff
-ffffffffffffde20ffffffffffffffffffffffb650f6ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffb6401879ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff20deffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffff7d
-7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61
-9dffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffff619dffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffff40beffff
-ffff48304040404040404040404040404040404040404040404040404040
-404040404040404040404040404040404040404040404040404050eeffff
-ffffffffffffffffffffffff619dffffffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffff20deffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff20deffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffce40eeffffffffffffffffffffffffffff71404040
-4040004040404040404040404040404040404040243c4040404040404040
-404040404040404040404040404040404040404040404040404040404040
-404040404040404040404040404040404040404008ffffffffffffffffff
-ffde20ffffffffffffffffffffffffffffffffffffffffffffffce000061
-ffffffff85003cffffff3c0085ffffffff610000ceffffce0024ffffffff
-85003cffffffda0000a1ffffffffb20024e6ffff2400ceffffffffffffff
-ffffffffffffffffffffffffffffffffffffffde20ffffffffffffffffff
-ffffffb650f6ffffffffffffffffffffffffffee50404040404040404040
-404040404040404040404040404040404040403c28404040404040404040
-404040404040404040404040403048ffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffb64014be7d7dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff20deffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff619dffffffffffffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0061fffffffffffffffff28585beffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff0061ffffffffffffff
-ffffffffffffffffffffffffffffffe6bebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebe30beffffffffffffffffffffffffff619dffffffff
-ffffffffffffffffffffffffffffff40beffffffffffffffffffff20deff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff20deffffffffffffffffffffffffff
-ffffffffffffffffff00ffffffffffffffffffffffffffce40eeffffffff
-ffffffffffffffffff00bebebebebebebebebebebebebebebebebebebebe
-bebebe2499bebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebed6ffffffffffffffffffffde20ffffffffffffffffffffffffffff
-ffffffffffffffffffce00240061cece610000beffffff85000075cea150
-242400ceffffce0024ffffffff85003cffffffff75000075cece85240075
-ffffff2400ceffffffffffffffffffffffffffffffffffffffffffffffff
-ffffde20ffffffffffffffffffffffffffb650f6ffffffffffffffffffff
-ffffbe30bebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebe7548bebebebebebebebebebebebebebebebebebebebebebebee6ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffb64014beffff7d7dffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff20717d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d3c7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff594c7d7d7d
-7d7d7d7d7d7d7ddeffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff0061ffffffffffff
-ffffce000085ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff0061ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff40beffffffffffff
-ffffffffffff619dffffffffffffffffffffffffffffffffffffffff40be
-ffffffffffffffffffff20deffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff20de
-ffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffff
-ffffffffffffffce40eeffffffffffffffffffffffff00ffffffffffffff
-ffffffffffffffffffffffffffffffff6995ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffde20ff
-ffffffffffffffffffffffffffffffffffffffffffffce003c7524000000
-24b2ffffffffff610000000024b23c00ceffffce0024ffffffff85003cff
-ffffffff8524000000002475ffffffff2400ceffffffffffffffffffffff
-ffffffffffffffffffffffffffffffde20ffffffffffffffffffffffffff
-ffb650f6ffffffffffffffffffffffbe40ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff619dffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffb64014beffffffff7d79ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d3c7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff594c7d7d7d7d7d7d7d7d7d407dffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffce000085ffffffffffffce2424ceff
-ffffffffffffffffffffffffffffffffff0061ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff40beffffffffffffffffffffff619dffffffffffffffffffff
-ffffffffffffffffffffff40beffffffffffffffffffff20deffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff20deffffffffffffffffffffffffffffffffff
-ffffffffff00ffffffffffffffffffffffffffffffce40eeffffffffffff
-ffffffffff00ffffffffffffffffffffffffffffffffffffffffffffff9d
-61ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffde20ffffffffffffffffffffffffffffffffffff
-ffffffffffffcedaffe68585a1ffffffffffffffffda8585a1ffffdaceff
-ffffffcecefffffffff2cedaffffffffffffffa18585a1e6ffffffffffce
-ceffffffffffffffffffffffffffffffffffffffffffffffffffffffde20
-ffffffffffffffffffffffffffffffb650f6ffffffffffffffffffffbe40
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff20de
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb6
-4014beffffffffffbe1879ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff619dffffffffffffff
-ffff7d7dffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0061ffffffffffffffffce00
-0085ffffffffffffce0000ceffffffffffffffffffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff40beffffffffffffffffffff
-619dffffffffffffffffffffffffffffffffffffffffffff40beffffffff
-ffffffffffff20deffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff20deffffffff
-ffffffffffffffffffffffffffffffffffff00ffffffffffffffffffffff
-ffffffffffce40eeffffffffffffffffffff00ffffffffffffffffffffff
-ffffffffffffffffffffffffce30ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffde20ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffde20ffffffffffffffffffffffffffffffffb6
-50f6ffffffffffffffffffbe40ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffd628ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffb64014beffffffffffbe14be7d7dffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffff
-ffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff619dffffffffffffffffff7d7dffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff619dffffffffffffffffff
-ff0061ffffffffffffffffce000085ffffffffffffce0000ceffffffffff
-ffffffffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff40beffffffffffffffffff619dffffffffffffffffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffff20deffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff20deffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffce40eeffffffffffffffff
-ff00ffffffffff00ffffffffffffffffffffffffffffffffffff08f6ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffde20ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffde20ffffffff
-ffffffffffffffffffffffffffb650f6ffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff8d71ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffb64014beffffff
-ffffbe14beffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffff8d000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000aeffffffffffffffffff7d7d
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff619dffffffffffffffffffff0061ffffffffffffffffce000085ffff
-ffffffffce0000ceffffffffffffffffffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff40beffffffffffffffff619dffffffff
-ffffffffffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffff20deffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff20deffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffce40eeffffffffffffffff00ffffffffff00ffffffffffffffffff
-ffffffffffffffffff38c6ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffde20ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffde20ffffffffffffffffffffffffffffffffffffb650f6
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff50aeffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffb64014beffffffffffbe14beffffffff7d79ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7d7dff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff619dffffffffffffffffffff0061ff
-ffffffffffffffce000085ffffffffffffce0000ceffffffffffffffffff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffff40beff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff40beff
-ffffffffffff619dffffffffffffffffffffffffffffffffffffffffffff
-ffffff40beffffffffffffffffffff20deffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff20deffffffffffffffffffffffffffffffffffffffffffff00ffff
-ffffffffffffffffffffffffffffffffffce40eeffffffffffffff00ffff
-ffffff00ffffffffffffffffffffffffffffffffffff718dffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffde20ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffde20ffffffffffffffff
-ffffffffffffffffffffffb650f6ffffffffffffbe40ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff10eeffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffb64014beffffffffffbe14beff
-ffffffffbe1879ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7d7d7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff619d
-ffffffffffffffffffff0061ffffffffffffffffce000085ffffffffffff
-ce0000ceffffffffffffffffffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffff40beffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff40beffffffffffff619dffffffffffffffffffff
-ffffffffffffffffffffffffffffffff40beffffffffffffffffffff20de
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff20deffffffffffffffffffffffff
-ffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffff
-ffce40eeffffffffffff00ffffffffff00ffffffffffffffffffffffffff
-ffffffffff9d61ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffde20ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffde20ffffffffffffffffffffffffffffffffffffffffb650f6ffff
-ffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffce30ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb6
-4014beffffffffffbe14beffffffffffbe14be7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d207dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff619dffffffffffffffffffff0061ffffffffff
-ffffffce000085ffffffffffffce0000ceffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffff40beffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff40beffffffffff
-619dffffffffffffffffffffffffffffffffffffffffffffffffffffff40
-beffffffffffffffffffff20deffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff20
-deffffffffffffffffffffffffffffffffffffffffffff00ffffffffffff
-ffffffffffffffffffffffffffffffce40eeffffffffff00ffffffffff00
-ffffffffffffffffffffffffffffffffffffd628ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffde20
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffde20ffffffffffffffffffffffff
-ffffffffffffffffffb650f6ffffffffbe40ffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffb64014beffffffffffbe14beffffffffffbe14
-beffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff9d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff619dffffffff
-ffffffffffff0061ffffffffffffffffce000085ffffffffffffce0000ce
-ffffffffffffffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffff40beffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff40beffffffff619dffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff40beffffffffffffffffffff20deffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff20deffffffffffffffffffffffffffffffff
-ffffffffffff00ffffffffffffffffffffffffffffffffffffffffffffce
-40eeffffffff00ffffffffff00ffffffffffffffffffffffffffffffffff
-ffff10eeffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffde20ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffde
-20ffffffffffffffffffffffffffffffffffffffffffffb650f6ffffffbe
-40ffffffffffffffffffffffffffffffffffffffffffffffffffff40beff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe
-40ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffb64014beffffff
-ffffbe14beffffffffffbe14beffffffff7d79ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff619dffffffffffffffffffff0061ffffffffffffffffce
-000085ffffffffffffce0000ceffffffffffffffffffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff40beffffff619dffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffff20deffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff20deffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffce40eeffffff00ffffffffff00ffffffff
-ffffffffffffffffffffffffffffff40beffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffde20ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffde20ffffffffffffffffffffffffffffffff
-ffffffffffffffb650f6ffffbe40ffffffffffffffffffffffffffffffff
-fffffffffffffffffff610f6ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffb64014beffffffffffbe14beffffffffffbe14beffffffffff
-be1879ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff619dffffffffffffffff
-ffff0061ffffffffffffffffce000085ffffffffffffce0000ceffffffff
-ffffffffffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff40beffff619dffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffff20deffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff20deffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffce40ee
-ffff00ffffffffff00ffffffffffffffffffffffffffffffffffffff718d
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffde20ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffde20ffffff
-ffffffffffffffffffffffffffffffffffffffffffb650f6ffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffb64014beffffffffffbe14beff
-ffffffffbe14beffffffffffbe14be7d7dffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff0061ffffffffffffffffce000075ce
-cececececea10000a1cececececececececedaffffffffffffffff0061ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff40beff619dffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff40beffffffffffffff
-ffffff20deffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff20deffffffffffffff
-ffffffffffffffffffffffffffffff00ffffffffffffffffffffffffffff
-ffffffffffffffffffffffce40eeff00ffffffffffffffffffffffffffff
-ffffffffffffffffffffffa559ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffde20ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffdebe857d7d504040404040617d7d8dbeeeffffffffffffffffff
-ffffffffffffffffde20ffffffffffffffffffffffffffffffffffffffff
-ffffffffffb650f6be40ffffffffffffffffffffffffffffffffffffffff
-ffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb6
-4014beffffffffffbe14beffffffffffbe14beffffffffffbe14beffff7d
-7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff0061
-ffffffffffffffffce000000000000000000000000000000000000000000
-003cffffffffffffffff0061ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff40be
-619dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff40beffffffffffffffffffff20deffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff20deffffffffffffffffffffffffffffffffffffffffffff00ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffce40ee00ff
-ffffffffffffffffffffffffffffffffffffffffffffffffd628ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffde20ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffd69561202040797d7daebebebebebe9d7d
-7d7140103069a5e6ffffffffffffffffffffffffffde20ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffb650b640ffffffffffffff
-ffffffffffffffffffffffffffffffffffff30ceffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffb64014beffffffffffbe14beffffffffffbe14
-beffffffffffbe14beffffffff7d79ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff0061ffffffffffffffffce0000000000000000
-00000000000000000000000000003cffffffffffffffff0061ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff40309dffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff40beffffffffffffffffffff20
-deffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff20deffffffffffffffffffffff
-ffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffce4000ffffffffffffffffffffffffffffffffffff
-ffffffffffffffff10eeffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffde20ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffb6501828699dde
-ffffffffffffffffffffffffffffffffffce9559182869d6ffffffffffff
-ffffffffde20ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffb62840ffffffffffffffffffffffffffffffffffffffffffffffff
-ee10ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffb64014beffffff
-ffffbe14beffffffffffbe14beffffffffffbe14beffffffffffbe1879ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff0061ffffffff
-ffffffffce2424242424242424242424242424242424242424242450ffff
-ffffffffffff0061ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff509dffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-40beffffffffffffffffffff20deffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-20deffffffffffffffffffffffffffffffffffffffffffee00ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffce20ffffffffff
-ffffffffffffffffffffffffffffffffffffffffff48b6ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffde
-20ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffee952048aee6ffffffffffffffffffffffffffffffffffffffffff
-ffffffffd6952838a5ffffffffffffffffde20ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffae50ffffffffffffffffffffff
-ffffffffffffffffffffffffffae50ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffb64014beffffffffffbe14beffffffffffbe14beffffffffff
-be14beffffffffffbe14be7d7dffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff619dffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffff20deffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff20deffffffffffffffffffffffffffffff
-ffffffffffee2800ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-ffffffff7985ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffde20ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffd6692069deffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffc659187de6ffffffffff
-de20ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff718dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffb64014beffffffffffbe14beff
-ffffffffbe14beffffffffffbe14beffffffffffbe14beffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff619dffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffff20deffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff20deffff
-ffffffffffffffffffffffffffffffffffee280000ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffae50ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffde20ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffe6502895ee
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffe67d1871eeffffffde20ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff28d6ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb6
-4014beffffffffffbe14beffffffffffbe14beffffffffffbe14beffffff
-ffffbe14beffffffff7d79ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff619dffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff0061ffffffffffffffffffffffffff
-ffffff40beffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff40beffffffffffffffffffff20deffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff20deffffffffffffffffffffffffffffffffffffde
-28000000ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff
-de20ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffde20ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff8528aeffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff8d28b6ffffde20ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffde20ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffb64014beffffffffffbe14beffffffffffbe14
-beffffffffffbe14beffffffffffbe14beffffffffffbe1879ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff619dffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff0061
-ffffffffffffffffffffffffffffffff40beffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff40beffffffffffff
-ffffffff20deffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff20deffffffffffff
-ffffffffffffffffffffffde2000000000ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffff
-ffffffffffffffffffffffffffff10eeffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffde20ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffce3879eeffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffe64848e6de20ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff9d61ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffb64014beffffff
-ffffbe14beffffffffffbe14beffffffffffbe14beffffffffffbe14beff
-ffffffffbe14be7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff619dffffffffffffffffffff00
-61ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff40
-beffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff40beffffffffffffffffffff20deffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff20deffffffffffffffffffffffffffffffffde200000000000
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff00ffffffffffffffffffffffffffffffffffffffffff50aeff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffde20ffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6
-7930c6ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffb6287920ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff619dffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffb64014beffffffffffbe14beffffffffffbe14beffffffffff
-be14beffffffffffbe14beffffffffffbe14beffff7d7dffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-619dffffffffffffffffffff0061ffffffffffffffffce24242424242424
-24242424242424242424242424242450ffffffffffffffff0061ffffffff
-ffffffffffffffffffffffff40beffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff40beffffffffffffffffffff
-300000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-00000000000000000000000000000000000008e6ffffffffffffffffffff
-ffffffffffd620000000000000ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff00ffffffffffffffffffffff
-ffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffe618c6ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffb62085ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffee7130ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-20deffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffd6040000000000000000000000
-000000008114beffffffffffbe14beffffffffde0c000000000000000000
-0000000000009dffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff619dffffffffffffffffffff0061ffffff
-ffffffffffce000000000000000000000000000000000000000000003cff
-ffffffffffffff0061ffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffce1400000000000000ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffae50ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffce3871eeffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffe65948e6ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffd628ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7d08beffffffffffbe14beffffff
-ffff8d30ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff619dffff
-ffffffffffffffff0061ffffffffffffffffce0000000024242424242424
-242424242424242424242450ffffffffffffffff0061ffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffce
-180000000000000000ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffe618ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff8d28b6ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff9d28a5ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff8d71ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d
-5dffffffffffbe14beffffffffffbe103cffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff0061ffffffffffffff
-ffce0000000050a1f2ffffffffffffffffffffffffffffffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff40beff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffce18000000000000000000ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff18e6ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-e64848e6ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffd63861eeffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff50aeffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7d7dffffffffbe14beffffffffffbe148d40
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff0061ffffffffffffffffffbe50240000002450a1ffffffffffff
-ffffffffffffffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff40beffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffb2100000000000
-0000000000ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff50aeffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffb62069d6ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffc66128c6
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff10eeffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffff
-be14beffffffffffbe14bebe40ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0061ffffffffffffffffffffff
-ffa150240000002461beffffffffffffffffffffffffffffffffffffff00
-61ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff40beffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffb2140000000000000000000000ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff8579ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6
-952840a5ffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffff69d30389dffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffce30ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffbe14beffffffffffbe14beffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffa150240000002461beffffffff
-ffffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff40beffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffb2140000000000000000000000
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb6
-48ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffbe591885e6ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffde791861ceffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff8579ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7d7dffbe14beffffff
-ffffbe14beffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff619dffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ffffe6953c240000002475daffffffffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa1
-1400000000000000000000000000ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffee10ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-e6791828699ddeffffffffffffffffffffffffffffffffffffffd6956120
-2085eeffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff40
-beffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7d7dbe14beffffffffffbe14beffffffbe40ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff619dffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffffffffffffe6953c240000002475daffff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff95100000000000000000000000000000ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffff20deffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffd695612020617db6bebeeeffffff
-ffffe6bebeae7d591828699ddeffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffff610f6ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7d5d14beffffffffffbe14beff
-ffffffbe3cffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff619dff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffffffffff
-ffffffffe68524000000003c95ffffffffffffffff0061ffffffffffffff
-ffffffffffffffffff40beffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff40beffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff95100000000000
-00000000000000000000ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff00ffffffffffffffffffffffffffff
-ffffffffffffffffff50aeffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffde9d7d484040100000000000184040507da5e6ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7d08beffffffffffbe14beffffffffff8d30ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff619dffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffda752400003cffffffff
-ffffffff0061ffffffffffffffffffffffffffffffff40beffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff40be
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff8d1000000000000000000000000000000000ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff
-ffffffffffffffffffffffffffffffffffffffffffff8d71ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffbe40ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d5dffffffffffbe14beffffffffffbe10
-3cffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d
-7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff619dffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffffffffffffffffff
-ffffda75240000003cffffffffffffffff0061ffffffffffffffffffffff
-ffffffffff40beffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff40beffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff6d100000000000000000000000
-000000000000ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffff
-ffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff38c6ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffbe14beffffffffffbe148d40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff619dffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffffffffffffffffda752400000000243c95ffffffffffffffff
-0061ffffffffffffffffffffffffffffffff40beffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff40beffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6d
-10000000000000000000000000000000000000ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff00ffffffffff
-ffffffffffffffffffffffffffffffffffffee10ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffee10ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7d7dffffffbe14beffffffffffbe14bebe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff619dffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffffffffffda75240000000024
-3c95e6ffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff6d100000000000000000000000000000000000
-0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffff28d6ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffae50ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7d7dffffbe14beff
-ffffffffbe14beffbe40ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff619dffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffffda752400000000243c95e6ffffffffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff4c100000000000
-000000000000000000000000000000ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffff59a5ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff718d
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7d7dffbe14beffffffffffbe14beffffbe40ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff0061ff
-ffffffffffffffffffffffffda752400000000243c95e6ffffffffffffff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff40beffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff4c08000000000000000000000000000000000000000000ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff8d71
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff30ceffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7d7dbe14beffffffffffbe14
-beffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff0061ffffffffffffffffffffda75240000000000
-2485e6ffffffffffffffffffffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff40beffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff4c080000000000000000000000
-0000000000000000000000ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffc638ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffde20ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d5d14beffffffffffbe14beffffffffbe3cffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff0061ffffffffff
-ffffffda2400000000002475daffffffffffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff40
-beffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffff644
-080000000000000000000000000000000000000000000000ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffff608ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff9d61ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d08beffffffffffbe14beffffffffff
-8d30ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff0061ffffffffffffffffce0000002475ceffffffffffffff
-ffffffffffffffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff40beffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffff638040000000000000000000000000000000000
-00000000000000ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff30ceffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff619dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7d5dff
-ffffffffbe14beffffffffffbe103cffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff619dffffffffffffffffffff0061ffffffffffffffffce
-0000002424242424242424242424242424242424242450ffffffffffffff
-ff0061ffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffff638040000000000
-0000000000000000000000000000000000000000ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffff619dffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff20deffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7d7dffffffffbe14beffffffffffbe148d40ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff619dffffffffffffffff
-ffff0061ffffffffffffffffce0000000000000000000000000000000000
-00000000003cffffffffffffffff0061ffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffee38040000000000000000000000000000000000000000000000
-000000ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffff8d71ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffde20ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffbe14
-beffffffffffbe14bebe40ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff619dffffffffffffffffffff0061ffffffffffffffffce24242424
-24242424242424242424242424242424242450ffffffffffffffff0061ff
-ffffffffffffffffffffffffffffff40beffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff40beffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffee28040000000000000000000000
-00000000000000000000000000000000ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff
-ffffffffffffffffffffffffffffffffffce30ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff8d71ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7d7dffffbe14beffffffffffbe14beffbe40ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff619dffffffffffffffffffff0061
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffff40be
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff40beffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffee28
-0000000000000000000000000000000000000000000000000000000000ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff00ffffffffffffffffffffffffffffffffffffffffffffffffff
-f610f6ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff50aeffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d7dffbe14beffffffffff
-be14beffffbe40ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61
-9dffffffffffffffffffff0061ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffff40beffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff40beffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffee28000000000000000000000000000000000000
-000000000000000000000000ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff00ffffffffffffffffffffffff
-ffffffffffffffffffffffffffff30ceffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff10eeffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dbe14beffffffffffbe14beffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff619dffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffffff40beffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-500000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-00000000000000000000000000000000000000000000000000ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-00ffffffffffffffffffffffffffffffffffffffffffffffffffff6995ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffce30ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7d5d14beffffffffffbe14beffffff
-ffbe3cffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff619dffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffff9569ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff8579ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d08
-beffffffffffbe14beffffffffff8d30ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff619dffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffce30ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7d5dffffffffffbe14beffffffffffbe103cff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff0061ffffffffffffffffce24242424242424242424242424242424
-24242424242450ffffffffffffffff0061ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff08f6ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffff610f6ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffff
-be14beffffffffffbe148d40ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff0061ffffffffffffffffce000000
-000000000000000000000000000000000000003cffffffffffffffff0061
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff38c6ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffbe14beffffffffffbe14bebe40ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-61ffffffffffffffffce2424242424242424242424242424242424242424
-242450ffffffffffffffff0061ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff718dffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffbe14beffffff
-ffffbe14beffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff9d61ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff38c6ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7d7dffbe14beffffffffffbe14beffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff619dffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffce
-30ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffee10ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7d7dbe14beffffffffffbe14beff
-ffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff619dffff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff10eeffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffae50ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d
-5d14beffffffffffbe14beffffffffbe3cffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff619dffffffffffffffffffff0061ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffff40beffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-718dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7d08beffffffffffbe14beffffffffff8d30
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7d
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff619dffffffffffff
-ffffffff0061ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffff40beffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff718dffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff30ceffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d5dffffff
-ffffbe14beffffffffffbe103cffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff619dffffffffffffffffffff0061ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-61ffffffffffffffffffffffffffffffff40beffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffa559ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffde20ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffbe14beffffffffffbe148d40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff619dffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-40beffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff00ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffd628ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff9d61ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7d7dffffffbe14beff
-ffffffffbe14bebe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff619dffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff10eeffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff619dffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7d7dffffbe14beffffffffffbe14beffbe40ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff619dffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff20deffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7d7dffbe14beffffffffffbe14
-beffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff0061ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7985ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffde20ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7d7dbe14beffffffffffbe14beffffffbe40ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff0061ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffae50
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8d
-71ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d5d14beffffffffffbe14beffffffffbe
-3cffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0061ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffde20ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff50aeffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d08beff
-ffffffffbe14beffffffffff8d30ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff10eeffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff10eeffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7d5dffffffffffbe14beffffffffffbe103cffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff619dffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff48b6ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffce30ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffbe14
-beffffffffffbe148d40ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff619dffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7d7dffffff50404040
-404040404040404040404040404040404040404040404071ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff8579ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7d7dffffffbe14beffffffffffbe14bebe40ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff619dffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffff40beff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffae50ffffff00bebebebebebebebebebebebebebebebebebebebe
-bebebebebebedeffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff40beffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7d7dffffbe14beffffffffff
-be14beffbe40ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff619d
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffff40beffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff00ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffe618ffffff00ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffff610f6ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d7dffbe14beffffffffffbe14beffffbe40ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff619dffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffff40beffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff18e6ffff00ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dbe14beffffffffffbe14beffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff619dffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffff40beffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff00ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff50aeffff00ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe
-40ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7d5d14
-beffffffffffbe14beffffffffbe3cffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff619dffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffdadaffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffcef2ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff40beffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7d08beffffffffffbe14beffffffffff8d30ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff619dffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffb648ffff00ffffffffffffffffffffffffffffff
-ffffffffffffffa195ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffe661ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff3c3cffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff2485ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffee10ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7d5dffffffffff
-be14beffffffffffbe103cffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff0061ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffee10ffff00ffff
-ffffffffffffffffffffffffffffffffffffffff2485ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff8524ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff9595ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff2485ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffae50ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7d7dffffffffbe14beffffffffffbe148d40ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff0061
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff20deff00ffffffffffffffffffffffffffffffffffffff
-ceffff2485ffffffffffcedaffffffffffffffdaceffffffdaceffffffff
-ffdacee6ffffffffffffffffffffffff8524ffffffffffdaceffffffffff
-ffffdae6ffffffffcedaffffffcedaffffffffffffffffffdaceffffffff
-ffffe6cedaffffffffffffffffffffffffffffffdae6ffffffe6cee6ffff
-ffffffffcecee6ffffffffffffcedaff2485ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff718dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d7dffffffbe14beffffff
-ffffbe14bebe40ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff0061ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff50aeff00ffffffffffff
-ffffffffffffffffffff855050002424002424ffff752424243cdaffff50
-753c24243ce63c24003cffffe63c24242450ffffffffffffffffffff8524
-002485ffce3c24242485ffffce24750024da249524240050ce24240061ff
-ff5050ffffbe3c24242485ffffff612424243cdaffffffffffffffffffff
-ce24750024daff5024242461ffffffa12424242450ffffffa12424246124
-85ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff30ceffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffbe14beffffffffffbe14beffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff8579ff00ffffffffffffffffffffffffffffffff850061cebeff24
-85ffff8524befff23c3cffff3c2495ffce242495ffbe2495ff5050ffffce
-2495ffffffffffffffffffff8524ffffff2461ffffa100b2ffce003cbeb2
-ff2424beff950024beff9500daff3c3cffe62461ffffa10095ff9524e6ff
-f23c50ffffffffffffffffffffce003cbeb2ff503ce6ffce2475ffe62495
-ffffbe2495ffe62461ffff610085ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffe618ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7d7dffbe14beffffffffffbe14beff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff619dffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffbe40ff00ffffffffffffffffffff
-ffffffffffff8524e6ffffff2485ffff2475ffffffe624beff3c24ffffff
-3c3cffffff3c85ff3c3cf2ffffdaffffffffffffffffffffff8524ffff95
-24ffffffff613cffce00a1ffffff2461ffffff2485ffffff24ceff3c3cff
-8524ffffffff6124ff8524ceffffe6e6ffffffffffffffffffffce00a1ff
-ffda00beffffffa124fff285ffffffff2485ff8524ffffffff2485ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff9d61ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7d
-be14beffffffffffbe14beffffffbe40ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff619dffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee
-10ff00ffffffffffffffffffffffffffffffff8524ffffffff2485ffe624
-243c3c3c3c0085ff3c3cffffff3c3cffffff3c85ffb224243c85daffffff
-ffffffffffffffff8524ffff61003c3c3c3c2424ffce00ceffffff2485ff
-ffff2485ffffff24ceff3c3cff3c3cffffffff8524ffe63c242475beffff
-ffffffffffffffffffce00ceffffa1003c3c3c3c3c00ceffffa185503c00
-85ff3c3cffffffff3c85ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff619dffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7d5d14beffffffffffbe14beffffffffbe3cff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff619dffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff0061ffffffffffffffffffffffffff
-ffffff40beffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff28d600ffffffffffffffffffffffffffff
-ffff8524ffffffff2485ffda00618585858585beff3c3cffffff3c3cffff
-ff3c85ffffe695502400a1ffffffffffffffffffff8524ffff5024858585
-858585ffce00ceffffff2485ffffff2485ffffff24ceff3c3cff3c3cffff
-ffff8524ffffffa161240061ffffffffffffffffffffce00ceffff952485
-8585858585f2e624245085be2485ff3c3cffffffff3c85ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff20deffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7d08beffffff
-ffffbe14beffffffffff8d30ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff619dffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff0061
-ffffffffffffffffffffffffffffffff40beffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff59a500ff
-ffffffffffffffffffffffffffffff8524ffffffff2485ffff2485ffffff
-ffa1f2ff3c3cffffff3c3cffffff3c85ffcebeffffff6124ffffffffffff
-ffffffff8524ffff8524ffffffffb2ceffce00ceffffff2485ffffff2485
-ffffff24ceff3c3cff7524ffffffff7524ffdab2ffffff9524e6ffffffff
-ffffffffffce00ceffffce00ceffffffdabeff6124f2ffffff2485ff8524
-ffffffff2485ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffde20ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d5dffffffffffbe14beffffffffffbe103cffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff619dffffffffffffffffffff00
-61ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff40
-beffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff00ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff8d7100ffffffffffffffffffffffffffffffff8524
-ffffffff2475ffff6124ceffff7524e6ff3c3cffffff3c3cffffff3c85ff
-3c50ffffff503cffffffffffffffffffff8524f2ffe62461ffffe62461ff
-ce00ceffffff2485ffffff2485ffffff24ceff3c3cffbe0095ffffce2475
-ff7524f2ffff8524ffffffffffffffffffffce00ceffffff3c3cf2ffff50
-3cff6124f2ffff950085ffe62495ffff950085ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff9569ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffbe14beff
-ffffffffbe148d40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-619dffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffff40beffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff00ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffbe4000ffffffffff
-ffffffffffffffffffffff8524ffffffff500024ffff3c243c3c24a1ffff
-3c3cffffff3c3cffffff3c85ffce24243c2424ceffffffffffffffffffff
-da002485ffa124243c243cffffce00ceffffff2485ffffff2485ffffff24
-ceff3c3cffffa1243c3c2450ffffff3c243c3c24a1ffffffffffffffffff
-ffce00ceffffffce24243c2424ceffda24243c3c503c50ffffa1243c3c3c
-3c85ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff50aeffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7d7dffffffbe14beffffffffffbe14bebe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff619dffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffff60800fffffffffffffffffffffffffffffffff2ceffffffff
-ffceceffffffce85a1e6ffffffdadaffffffdadaffffffdaf2ffffffbe85
-beffffffffffffffffffffffffffdacef2ffffe6a185ceffffffffceffff
-ffffcef2ffffffcef2ffffffceffffdadaffffffe6a185daffffffffffce
-85a1e6ffffffffffffffffffffffffceffffffffffffbe85beffffffffe6
-a185daffe6ceffffffe695a1ffdaf2ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff10eeff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7d7dffffbe14beffffffffffbe14
-beffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff619dffff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff3000ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffce30ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d
-7dffbe14beffffffffffbe14beffffbe40ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff0061ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff6100ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff95
-8585858585858585beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be858585858585858595ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff8d71ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7d7dbe14beffffffffffbe14beffffffbe40
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff0061ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff8d00ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff958585858585858585beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe858585858585858595ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff40beffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d5d14beff
-ffffffffbe14beffffffffbe3cffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0061ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-61ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffc600
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffff610f6ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d08beffffffffffbe14beffffffffff8d30ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffff600ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff8d0000000000000000
-00000000000000004cffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff619dffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff619dffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff619dff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff0061ffffffffffffff
-ffffffffffffffffff40beffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff00ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff
-ffffffffffff852424242424243cb2ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff5050ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffa1ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffee10ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff619dffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff0061ffffffffffffffffffffffffffffffff40beffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff00ffffffffffffffffffffffffffff8524cecececea13c00beff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff3c3cffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff8524ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffae50ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffbe40ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d
-7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff619dffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0061ffffffffffffffffffffff
-ffffffffff40beffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff00ffffffffffffffffffffffff
-ffff8524fffffffffff22461ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff3c3cffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff8524ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff718dffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff619dffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffff40beffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff00ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-00ffffffffffffffffffffffffffff8524ffffffffffff2450ffffff6124
-243cbeffffda50ce3c243cbece3c243cceffffff8524242495ffff7561ff
-ffffff6175ffff8524242495ffffff9524242461ffffffffffffffffb23c
-242485ffff3c3c85242450daffffff6124242461ffffff50b23c24a1ff85
-24242450daffffffb23c242485ff9524003c95ffff6124243cbeffff9561
-75243cff9524242461ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff30ceffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffe6200000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000a5ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff619dffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffff8524
-ffffffffff9500a1ffff3c3cbece6124daffce0024a1ce3c2424a1be3c3c
-ffff6124a1ce950085ffbe24e6ffffe624beff7524a1ce950095ffb224a1
-ceb22461ffffffffffffb20085cea12475ff3c0061ceb2243cffff503cbe
-cea12461ffff24246175e68524a1cebe3c3cffffb20085cea12475f27524
-cef2ff3c3cbece6124daff85243c8585b224a1ceb22461ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe6
-18ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff6995ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffe628eeffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff619dffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffff850024242424242475ffffa124e6ffffff5050
-ffce0095ffffbe00b2ffffa124ffda00a1ffffff8524ffff2475ffff9524
-ffe624a1ffffff8524ff8524ffffffb2b2ffffffffffff3c61ffffff8550
-ff3c24ffffff9524fff250beffffff3c3cffff2450ffffff6185ffffff85
-24ffff3c61ffffff8550ff8524ffffa124e6ffffff5050ff8500daffff85
-24ffffffb2b2ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff9d61ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffce30ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff8d71ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff00ffffffffffffffffffffffffffff85248585853c
-3cceffffff7524858585855024ffce00ceffffce00ceffffce24ff9524ff
-ffffffce00ceff7524ffff3c75ffbe00758585857500cebe242461beffff
-ffffffffffff24a1ffffffffffff3c3cffffffce24ffffffffcea185243c
-ffff2485ffffffffffcebe853c24ffff24a1ffffffffffff8524ffff7524
-858585855024ff8524ffffffbe242461beffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff619dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff38c6ffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffff630d6ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffff
-ffffffffffffff8524ffffffff3c3cffffff3c243c3c3c3c3c50ffce00ce
-ffffce00ceffffce24ff8524ffffffffce00ceffe624dada00daff85003c
-3c3c3c3c3cdaffda61242424a1fffffffffff224ceffffffffffff3c3cff
-ffffce24ffff7524243c75243cffff2485ffffffa124243c615024fff224
-ceffffffffffff8524ffff3c243c3c3c3c3c50ff8524ffffffffda612424
-24a1ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff20deffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffae50ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffae50ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff00ffffffffffffffffffffffffffff8524ffffffffbe0061ff
-ff8524ffffffffe6ffffce00ceffffce00ceffffce24ffa124e6ffffffce
-00ceffff3c61753cffffce00daffffffffffffffe6ffffe66124ffffffff
-ffff2495ffffffe685ff3c3cffffffce24ffbe0095ffffff3c3cffff2485
-ffffff2461ffffff8524ffff2495ffffffe685ff8524ffff8524ffffffff
-e6ffff8524ffffffffe6ffffe66124ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffde20ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffff620
-e6ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff50aeffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff00ffffffffffffffffffffff
-ffffff8524ffffffffff7500b2ffbe00a1ffffff3c50ffce00ceffffce00
-ceffffce24ffe62485ffffff6124ffffffa1242495ffffff2461ffffff61
-24ff6124ffffffa124ffffffffffff5050ffffff613cff3c3cffffffce24
-ff9524e6fffff2243cffff2485ffffda00a1ffffff5024ffff5050ffffff
-613cff8524ffffbe00a1ffffff3c50ff8524ffffff6124ffffffa124ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff9569ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd6
-30f6ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff619dffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffff8524ffffffffffff3c24ffff6100
-61853c24daffce00ceffffce00ceffffce24ffffa10061855024b2ffffff
-ff2424ffffffffa10050856100a1ffda245085752461ffffffffffffda24
-50856124b2ff3c3cffffffce24ffe6243c8585243c24ffff2485ffffff3c
-2485853c3c24e6ffda2450856124b2ffbe003c95ff610061853c24daff85
-24ffffffda245085752461ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff50aeffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffe620f6ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff718dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff619dffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffbe
-85ffffffffffffbe85daffffa1613c85e6fffff285f2fffff285f2fffff2
-85ffffffbe753c75e6ffffffffff9595ffffffffffbe753c75beffffffe6
-853c61a1ffffffffffffffffe6853c61daffff9595fffffff285ffffda75
-3c75e6da85f2ff85beffffffff853c61beff85daffffe6853c61daffffff
-9585beffffa1613c85e6ffffbe85ffffffffe6853c61a1ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff10
-eeffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff50aeffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffee28e6ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff619dffffffffffffffffffff0061ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffff40beffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffce30ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffc638ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff9569ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff619dffffffffffffffffffff0061
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffff40be
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff00ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff8d71ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff30ceffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff30ceffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61
-9dffffffffffffffffffff0061ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffff40beffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff00ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff9569ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff619dffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffffff40beffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff00ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffff610f6ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffee28e6ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff4c8dcecececeeeffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff619dffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff718dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffe61cc6cececed6ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff619dffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffd630f6ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff756dcecececee2ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff0061ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff00bebebebebebebebebebebebebebe
-bebebebebebebebebebebebedeffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff40be
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff50aeffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fff61cbacecececef6ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff0061
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff5040
-4040404040404040404040404040404040404040404040404061ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffee10ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffae50ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffa548cecececedeffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-61ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff0061ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffae50ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffff630d6
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2c
-a5cecececeeeffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff718dffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff8d71ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffce28cecececed6ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff619dffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff30ceffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffe620f6ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff5d81cece
-ceceeaffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff619dffff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffe618ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff6995ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffe61cc6cecececefaffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff619dffffffffffffffffffff0061ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffff40beffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff9d61ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffce30ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff8561cecececee2
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7d
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff619dffffffffffff
-ffffffff0061ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffff40beffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff619dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-38c6ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffff624b2cecececef6ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff619dffffffffffffffffffff0061ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-61ffffffffffffffffffffffffffffffff40beffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff20deffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffa559ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffae40cecececedaffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff619dffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-40beffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff00ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffde20ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffff620e6ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff3c99cecececeeeffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff619dffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff9d61ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffce28cecececed2ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff619dffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff50aeffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffe620f6ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff6d75cecececee6ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff0061ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff10eeffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff50aeffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffe628bacecececefaffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff0061ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffce30ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffff
-be613c3c50a1ffffffffffbe85beffffffffffffffffffffffffffffffff
-ffffffffffffffffff8595ffffffffffffffffffffffffffffffffff8d5d
-cecececedeffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0061ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff8d71ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff30ceff
-ffffffffffffffffffffffce3c0024242424003cceffffff850085ffffff
-ffffffffffffffffffffffffffffffffffffffffffff243cffffffffffff
-fffffffffffffffffffffff634a5cecececef6ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff48b6ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff9569ffffffffffffffffffffffffce240075e6ffff
-e6610024e6ffff850085ffffffffffffffffffffffffffffffffffffffff
-ffffffffff243cffffffffffffffffffffffffffffffffffffb63ccecece
-ced6ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff619dffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffff610f6ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffee28e6ffffffffffff
-ffffffffffff3c00a1ffffffffffff610061ffff850085ffffffffffffff
-ffffffffffffffffffffffffffffffffffff243cffffffffffffffffffff
-ffffffffffffffffff4c8dcecececeeeffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff619dffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff718dffffffffffffffffffffffffa10050ffffffffffffffe624
-50ffff850085ffffffffe6855075a1ffffffffffffffe6855075a1ffffff
-ff243cffffffff8585daffffffffffffffffffffffffd628c6cececed2ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff619dffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffff40beff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffce38f6ffffffffffffffffffffff
-ff500095ffffffffffffffffffffffff850085ffffff7524242424003cce
-ffffffff8524242424003cffffff243cffffff3c0061ffffffffffffffff
-ffffffffffff6d75cecececee6ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff619d
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffff40beffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff00ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-40beffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff50
-aeffffffffffffffffffffffffff2400ceffffffffffffffffffffffff85
-0085ffff95003cdaffff950024ffffffb2003cdaffff750050ffff243cff
-ff3c0061fffffffffffffffffffffffffffffff61cbacecececefaffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff619dffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffff40beffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffee18f6ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffae50ffffffffffffffffffffffffffff2424ff
-ffffffffffffffffffffffff850085ffff2424e6ffffffff850085ffff3c
-24daffffffff3c24ffff243cff610061ffffffffffffffffffffffffffff
-ffffff9555cecececedeffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff619dffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffff40beffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff00ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffae50ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe
-40ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff50aeffffffff
-ffffffffffffffffffff2424ffffffffffffffffffffffffff850085ffda
-003cffffffffffda003cffff2424ffffffffffffffffff243c610075ffff
-ffffffffffffffffffffffffffffffffff0cc2cecececef2ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff619dffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff718dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffae50ffffffffffffffffffffffffffff3c00ceffffffff
-ffffffffffffffff850085ffce0075ffffffffffff2424ffce003cffffff
-ffffffffffff240000003cffffffffffffffffffffffffffffffffffff95
-55cececececed6ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff619dffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff30ceffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff50aeffffffffffffff
-ffffffffffff610095ffffffffffffffff6185ffff850085ffce0075ffff
-ffffffff2424ffce003cffffffffffffffffff2400a1750075ffffffffff
-fffffffffffffffffffffff61cbacecececececeeaffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff0061ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffee10ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffce38f6ffffffffffffffffffffffffbe0050fffffffffffffff2
-2424e6ff850085ffda003cffffffffffe6243cffff243cffffffffffbebe
-ffff243cffff3c00beffffffffffffffffffffffffffffff6d75cececece
-cecececefaffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff0061
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff9d61ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff718dffffffffffffffffffff
-ffffff3c0095ffffffffffff610061ffff850085ffff2424f2ffffffff85
-0075ffff3c24e6ffffffff3c24e6ff243cffffb2003cffffffffffffffff
-ffffffffffffd628c6cecececececececee2ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff0061ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61
-9dffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffee28e6ffffffffffffffffffffffffce240061daffffda610024e6ffff
-850085ffff85003cf2ffffbe2424e6ffffa1003cf2ffffa10050ffff243c
-ffffff610075ffffffffffffffffffffffffff4c8dcecececececececece
-cef6ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff20deffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff8d71ffffffffffffffffffffffffff
-be240000242400003cdaffffff850085ffffff6100243c3c0024b2ffffff
-ff6100243c24003cffffff243cfffffff22400beffffffffffffffffffff
-ffb63ccececececececececececedaffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff619dffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffde20ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff30
-ceffffffffffffffffffffffffffffa1613c3c61a1ffffffffffbe85beff
-ffffffbe613c3c95ffffffffffffffbe613c3c95ffffffff8595ffffffff
-be85a1fffffffffffffffffffff634a5cecececececececececececeeeff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff619dffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff30000000000000000000000000000000000000000000000000000000
-000040ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff9d61ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff8d5dcece
-cececececececececececed6ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff619dffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff0061ffffffffffffffffffffffffff
-ffffff40beffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff00ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff50aeffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff50aeffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffe628bacecececececececececececececeeaffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff619dffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff0061
-ffffffffffffffffffffffffffffffff40beffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff10eeffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffe620f6ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff6d75cecececececece
-cececececececececefaffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff619dffffffffffffffffffff00
-61ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff40
-beffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff00ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffce30ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7985ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffce30c6cecececececececececececececececee2ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-619dffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffff40beffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff00ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff00ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff8d71
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffff620e6ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff4491cececececececececececece
-cecececececeffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff619dffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffff2ceffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff48b6ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffa559ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffae40
-cecececececececececececececececececee2ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff619dffff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-be61ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff85ceffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff8524ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffff610f6ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff30ceffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffff62caececececececececececececececececece
-d2faffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff0061ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff00ffffffffffffffffff3c3cffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffce00ceff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe85
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffce30ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff8d5dcecececece
-cececececececececececececeeaffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff0061ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff00ffffffffffffceffff3c3cffff
-ffffffceceffffffffffffffdaceffffffdaceffffffffffdacee6ffffff
-ffffffffffffffffffce00ceffffffffe6cee6ffffffffffffdae6ffffff
-ffcedaffffffcedaffffffffffffffffffe6cee6ffffffffffffceceffff
-ffffffffffffffffffffffffffdaceffffffffffffffffcedaffffffffff
-ffcee6ffffffffffffffffffffffffffffffffcedaffffffffffffffffff
-ffffffffffffe6cee6ffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff619dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffe61cc6cececececececececececececececececed6ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0061ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-61ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-ffffff855050002450000024ceffa124242424b2ffff50753c24243ce63c
-24003cffffe63c24242450ffffffffffffffffffffce24002450ffff5024
-242461ffffce24750024da249524240050ce24240061ffff8524ffffe650
-24242461ffffff8524242424a1ffffffffffffffffffffffce3c24242485
-ffffce249524240050ffffff752424248524ceff8524ffffffce24ceffff
-752424243cdaffff5050ffffff8524ffffff5024242461ffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffe620f6ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff6579cececececececececece
-cecececececececeeeffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff00ffffff850061cebeff3c3cffffbe0095ff
-ff6124e6ff3c2495ffce242495ffbe2495ff5050ffffce2495ffffffffff
-ffffffffffce00ceffff503ce6ffce2475ffce003cbeb2ff2424beff9500
-24beff9500daff8524ffff3c3ce6ffce2461ffda00b2ffff6124ffffffff
-ffffffffffffff2461ffffa100b2ffce003ce6ffa100a1ffa100a1fff23c
-00ceff8524ffffffce00ceff8524befff23c3cffff3c3cffffff8524ffff
-503ce6ffce2475ffffffffffffffee18f6ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff8d71
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ce28cecececececececececececececececececedaffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff619dffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff85
-24e6ffffff3c3cffff503cffffffff2475ff3c24ffffff3c3cffffff3c85
-ff3c3cf2ffffdaffffffffffffffffffffffce00ceffda00beffffffa124
-ffce00a1ffffff2461ffffff2485ffffff24ceff8524ffce00beffffffa1
-24e6ce00a1ffffffdaffffffffffffffffffff9524ffffffff613cffce00
-a1ffffff2485ff3c50ffffffbe00ceff8524ffffffce00ceff2475ffffff
-e624beff3c3cffffff8524ffda00beffffffa124ffffffffffffffae50ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffff628deffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff34a1cecececececececececececececece
-cececef6ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff619dffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00ffffff8524ffffffff3c3cffff24243c3c3c3c243c
-ff3c3cffffff3c3cffffff3c85ffb224243c85daffffffffffffffffffff
-ffce00ceffa1003c3c3c3c3c00cece00ceffffff2485ffffff2485ffffff
-24ceff8524ff8524ffffffffce00ceff50002461a1ffffffffffffffffff
-ffff61003c3c3c3c2424ffce00ceffffff3c85ff2485ffffffff24ceff85
-24ffffffce00cee624243c3c3c3c0085ff3c3cffffff8524ffa1003c3c3c
-3c3c00ceffffffffffff718dffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffae50ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffae40cecece
-cececececececececececececececee2ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff619dff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff0061ffffffffffffff
-ffffffffffffffffff40beffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff00ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff00ffffff8524ffffff
-ff3c3cffff2450858585858595ff3c3cffffff3c3cffffff3c85ffffe695
-502400a1ffffffffffffffffffffce00ceff9524858585858585f2ce00ce
-ffffff2485ffffff2485ffffff24ceff8524ff8524ffffffffce00ceffff
-be753c243cffffffffffffffffffff5024858585858585ffce00ceffffff
-3c85ff2485ffffffff24ceff8524ffffffce00ceda00618585858585beff
-3c3cffffff8524ff9524858585858585f2ffffffffffff30ceffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff48b6ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffff61cbacececececececececececececececececed6faff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff619dffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff0061ffffffffffffffffffffffffffffffff40beffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff00ffffff8524ffffffff3c3cffff3c3cffffffffa1daff3c3cff
-ffff3c3cffffff3c85ffcebeffffff6124ffffffffffffffffffffce00ce
-ffce00ceffffffdabeffce00ceffffff2485ffffff2485ffffff24ceff85
-24ffbe00daffffffbe00daf2a1ffffffce24a1ffffffffffffffffff8524
-ffffffffb2ceffce00ceffffff3c85ff3c50ffffffda00ceff8524ffffff
-ce00ceff2485ffffffffa1f2ff3c3cffffff8524ffce00ceffffffdabeff
-ffffffffffee10ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffbe40ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffce30ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d69cececececececece
-cecececececececececeeaffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d
-7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff619dffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0061ffffffffffffffffffffff
-ffffffffff40beffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff00ffffff8524ffffffff3c3cff
-ffa100a1ffffb200a1ff3c3cffffff3c3cffffff3c85ff3c50ffffff503c
-ffffffffffffffffffffce00b2ffff3c3cf2ffff503cffce00ceffffff24
-85ffffff2485ffffff24ceff8524ffff2461fffff23c3cffbe00beffffbe
-00ceffffffffffffffffffe62461ffffe62461ffce00ceffffff3c85ffa1
-24ceffff6100ceffa100beffff6100ceff6124ceffff7524e6ff6124f2ff
-f23c24ffff3c3cf2ffff503cffffffffffff9d61ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff718dffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffe61cc6cececececececececececececececececed6ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff619dffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffff40beffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff00ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-00ffffff8524ffffffff950024ceff61003c3c0061ffff3c3cffffff3c3c
-ffffff3c85ffce24243c2424ceffffffffffffffffffffff242450ffce24
-243c2424ceffce00ceffffff2485ffffff2485ffffff24ceff8524ffffce
-24243c243cdaffff61243c3c2461ffffffffffffffffffffffa124243c24
-3cffffce00ceffffff3c85ffff61243c243c00ceffff3c243c246124ceff
-ff3c243c3c24a1ffffda24243c247524ffffce24243c2424ceffffffffff
-ff619dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffe630e6ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff5589cecececececececececececece
-cececececef2ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff619dffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00fffffff2ceffffffffffceceffffffda
-9595daffffffdadaffffffdadaffffffdaf2ffffffbe85beffffffffffff
-ffffffffffffffe6cedaffffffbe85beffffffffceffffffffcef2ffffff
-cef2ffffffcefffff2ceffffffffbe85beffffffffffda9595daffffffff
-ffffffffffffffffffe6a185ceffffffffceffffffffdaf2ffffffda85be
-ce00ceffffffbe85daffceffffffffce85a1e6ffffffffffa195e6ffceff
-ffffffbe85beffffffffffffffff20deffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff8d71ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffc630ce
-cececececececececececececececececedeffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff619dffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffce00ceffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffde20ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff30ceffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff2ca5cececececececececececececececececed6
-faffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff9585858585858585
-85beffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffbe858585858585
-858595ffffffffffffffffffffffffffffffffffffffffffffffce00ceff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff9d61ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-b648ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff9d50cececececece
-cecececececececececececee6ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff958585858585858585beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe858585858585858595ffffffffffffffffffffffffffff
-fffffffffffffffffff285f2ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff50aeffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff50aeffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffff61cbacececececececececececececececececed2ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff00ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff10eeffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffde28f6
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff756dcecececececececececece
-cececececececeeeffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff00ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffe659ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff718dffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffde
-20c6cececececececececececececececececed6ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff619dffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffff620e6ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff4c8dcececececececececececececececece
-cecef6ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff619dffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff9d61ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe34cececece
-cecececececececececececececedeffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff619dffffffffffffffffffff0061ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffff40beffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff5050ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffa1ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff30ceffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff2ca5cececececececececececececececececed2faffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff619dffffffffffffffffffff0061
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffff40be
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff00ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff3c3cffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff8524ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffce30ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff8d5dcecececececececece
-cececececececececee6ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61
-9dffffffffffffffffffff0061ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffff40beffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff00ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff3c3cffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff8524ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff59a5ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffee24bacececececececececececececececececed2ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff619dffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffffff40beffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff00ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff956175243cffff6124242461fff2
-3cbeffffda3cbeffffbe3cf2ffffffffffffffffffffb23c242485ffff3c
-3c85242450daffffff8524242450daffff50b23c24a1ff8524242450daff
-ffffb23c242485ff9524003c95ffff6124243cbeffff956175243cffbe3c
-242450daffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffe6100000000000000000000000000000000000000000000000000000
-00000000000000000000000000000089cececececececececececececece
-cecececeeeffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff619dffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff85
-243c8585ff503cbecea12461ff3c61ffff750061ffff753cffffffffffff
-ffffffffb20085cea12475ff3c0061ceb2243cffff8524a1cebe3c3cffff
-24246175e68524a1cebe3c3cffffb20085cea12475f27524cef2ff3c3cbe
-ce6124daff85243c8585e62475cece3c3cffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffeacececececececece
-cececececececececececececececececececececececececececececece
-cecececececececececececececececedaffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff619dffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff8500dafffff250beffffff3c3cff8524ffff
-3c3c24ffff2495ffffffffffffffffffff3c61ffffff8550ff3c24ffffff
-9524ffff6185ffffff8524ffff2450ffffff6185ffffff8524ffff3c61ff
-ffff8550ff8524ffffa124e6ffffff5050ff8500daffffce24ceffffda95
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffd6cececececececececececececececececececececececece
-cececececececececececececececececececececececececececececef6
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff0061ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff00ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff8524ffffff
-ffffffcea185243cffda00daff24b224e6da24e6ffffffffffffffffffff
-24a1ffffffffffff3c3cffffffce24ffffffffcebe853c24ffff2485ffff
-ffffffcebe853c24ffff24a1ffffffffffff8524ffff7524858585855024
-ff8524ffffffff242450a1e6ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffff6cecececececececececece
-cececececececececececececececececececececececececececececece
-cececececececececececee2ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff0061
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff8524ffffffff7524243c75243cffff2495a124ff24a1
-9524fffffffffffffffffffff224ceffffffffffff3c3cffffffce24ffff
-a124243c615024ffff2485ffffffa124243c615024fff224ceffffffffff
-ff8524ffff3c243c3c3c3c3c50ff8524fffffffff2753c242461ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffdececececececececececececececececececececececececececece
-cececececececececececececececececececececececed6faffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-61ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff0061ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff8524ffffffbe0095ff
-ffff3c3cffff75506161ff50613c75ffffffffffffffffffffff2495ffff
-ffe685ff3c3cffffffce24ffff2461ffffff8524ffff2485ffffff2461ff
-ffff8524ffff2495ffffffe685ff8524ffff8524ffffffffe6ffff8524ff
-ffffffe6ffffff9500beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffacececececececececececececece
-cececececececececececececececececececececececececececececece
-cecececececeeaffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff0061ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff00ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff8524ffffff9524e6fffff2243cffffbe2424beffa12424daffff
-ffffffffffffffffff5050ffffff613cff3c3cffffffce24ffda00a1ffff
-ff5024ffff2485ffffda00a1ffffff5024ffff5050ffffff613cff8524ff
-ffbe00a1ffffff3c50ff8524ffffffa124e6ffffe624beffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe6
-cececececececececececececececececececececececececececececece
-cecececececececececececececececececed6ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff619dffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff0061ffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff8524ffffffe6243c8585243c24
-ffffff2424ffffe62424ffffffffffffffffffffffffda2450856124b2ff
-3c3cffffffce24ffff3c2485853c3c24e6ff2485ffffff3c2485853c3c24
-e6ffda2450856124b2ffbe003c95ff610061853c24daff8524ffffffff3c
-3c85853c3cffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffd2cececececececececececececececece
-cececececececececececececececececececececececececececececece
-ceeeffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff619dffff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff0061ffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be85ffffffffda753c75e6da85f2ffff9595ffffff8595ffffffffffffff
-ffffffffffffe6853c61daffff9595fffffff285ffffff853c61beff85da
-ff85beffffffff853c61beff85daffffe6853c61daffffff9585beffffa1
-613c85e6ffffbe85ffffffffff95505095ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffeececece
-cececececececececececececececececececececececececececececece
-cececececececececececececedeffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff619dffffffffffffffffffff0061ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff0061ffffffffffffffffffffffffffffffff40beffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffdacecececececececececececececececececece
-cececececececececececececececececececececececececed6f6ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7d
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff619dffffffffffff
-ffffffff0061ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff0061ffffffffffffffffffffffff
-ffffffff40beffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff00ffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffff2cecececececececedaffffffff
-ffffffffffffffffffffffffffffffffffffffffffcecececececececece
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffff6cececececece
-cececececececececececececececececececececececececececececece
-cecececececececee2ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff619dffffffffffffffffffff0061ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-61ffffffffffffffffffffffffffffffff40beffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff95
-3c3c3c3c3c3c3c3c61ffffffffffffffffffffffffffffffffffffffffff
-ffffffff503c3c3c3c3c3c3c3cdaffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffe2cececececececececececececececececececececece
-cecececececececececececececececececececed6ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff619dffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff0061ffffffffffffffffffffffffffffffff
-40beffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff00ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff00ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffad2cececececececece
-cececececececececececececececececececececececececececececece
-cececeeeffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff619dffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff0061ffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff619dffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff0061ffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff0061ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff00bebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebedeffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff0061ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff5040404040404040404040404040404040404040404040404040
-4040404071ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0061ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff50daffffffffffffffda3cdaffffff
-ffffffffffffffffdaffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffceffffffffffffffda3c
-2461ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-0061ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff6100ce
-ffffffffffffffce24ceffffffffffffffffffff9524ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff613cffffffffffffff502485beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff619dffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff0061ffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffe6502400ceffffffffffffffffffffffffffffffffff
-ffffff8524ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff3c3cffffffffffffff3c85ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff619dffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff0061ffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff2450b200ceffffffff
-fffffff285f2ff95bebe503c85ffffbe502485beffff953c3c95ffffffbe
-95b23c75f285da5061f285beffffff9595ffff85f2853c50beffff952424
-85f2ffffffff85245085f295be853c95ffff953c3c95ffffffbe95da613c
-85ffda613c85ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff619dffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0061ffffffffffffffffffffffffffffffff40beff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffceffce00ceffffffffffffffce00ceff3c3c3c85750061ffbe50
-2485beff3c3c85852450ffff8524243c50ce243c3c3cff2485ffffff3c3c
-ffff243c50a16100b2ff95242485f2ffffffff85245085f23c3c243c85f2
-3c3c8585243cffff852424757500502475610085ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff619d
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff0061ffffffffffff
-ffffffffffffffffffff40beffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff00ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffce00ceffffffffffffffce
-00ceff3c24f2ffff7524ffff8524ffff8524f2ffffce24a1ff8500b2ffff
-ce0075ffffff2485ffffff3c3cffff243cffffff613cffff3c3cffffffff
-ffffff3c85ffff3c24f2ffff6124f2ffffce2495ff8500b2ffff6124ceff
-ff503cffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff619dffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff0061ffffffffffffffffffffffffffffffff40beffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffce00ceffffffffffffffce00ceff3c3cffffffbe24ffff8524ffff3c
-3ccececece3c50ff8524ffffffce00ceffffff2485ffffff3c3cffff2495
-ffffffce00daff3c3cffffffffffffff3c85ffff3c3cffffff2475ffffff
-ff3c3cff8524ffffff8524ffffff853cffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff619dffffffff
-ffffffffffff0061ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0061ffffffffffffffffffff
-ffffffffffff40beffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff00ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe
-40ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffce00ceffffffffffffffce00ceff3c
-3cffffffce24ffff8524ffff2424242424242450ff8524ffffffce00ceff
-ffff2485ffffff3c3cffff24ceffffffce00ceff3c3cffffffffffffff3c
-85ffff3c3cffffff2485ffffffff3c3cff8524ffffff8524ffffff853cff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff619dffffffffffffffffffff0061ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff0061ffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffce00
-ceffffffffffffffce00ceff3c3cffffffce24ffff8524ffff3c61ffffff
-ffffffff8524ffffffce00ceffffff2485ffffff3c3cffff24a1ffffffce
-00daff3c3cffffffffffffff3c85ffff3c3cffffff2475ffffffff3c3cff
-8524ffffff8524ffffff853cffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff619dffffffffffffffff
-ffff0061ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff0061ffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffce00ceffffffffffffffce00ceff3c3cffffff
-ce24ffff8524ffff6124ffffffff3c85ff8524ffffffce00ceffffff2475
-ffffff243cffff2461ffffff7524ffff3c3cffffffffffffff3c85ffff3c
-3cffffff5024fffffff22475ff8524ffffff8524ffffff853cffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff0061ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff0061ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffce00ceffffff
-ffffffffce00ceff3c3cffffffce24ffffa10075bee6243cbece5024e6ff
-8524ffffffce00ceffffff5024a1be61243cffff242485ce8500a1ffff61
-2485f2ffffffffff3c85ffff3c3cffffffda2461cebe3c24f2ff8524ffff
-ff8524ffffff853cffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff0061
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff0061ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffda3cdaffffffffffffffda3cdaff6161ffffffda50ffff
-ff503c95ffda50242450daffff9550ffffffda3cdaffffffff6124248595
-61ffff247550243cb2ffffffda3c3cdaffffffffff6195ffff6161ffffff
-ffda50242461e6ffff9550ffffff9550ffffff9561ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff0061ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff0061ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff2485ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff1869ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff1879ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff24
-85ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff619dffffff
-ffffffffffffffe6f6ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffdef6ffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff2485ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff619dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff619dffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff40beffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff619dffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff40beffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff619dffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff40
-beffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff00ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-619dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff40beffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff00ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffff285f2ff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffff2ff
-fffffffffffffffffffffffffffffffff2ffff9595ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff619dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffbe3cffffce00ceffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff8550ffffffffffffffffffffffffffffffff6185
-ffff3c3cffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffff250ceffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff619dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff8524ffffffceffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff3c3cffffffffff
-ffffffffffffffffffffff2485ffffdadaffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffce00ceffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-f27524cef2ffceffffdaf2e69585e6ffe69585e6ffffffffe69585beffff
-ffffffffffda3c3cceffffffda8585daffffffffffffffce2475ceffdada
-ffffceffbe85a1ffffbe85a1ffffffffffa185a1ffffffffffffffffa100
-a1daffffe69585beffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff9524003c95ce00ceff3c61243c2424a124
-3c2424e6ffffa1243c3c2450ffffffffffff6124243cdaff61243c3c0075
-ffffffffffff50002450ff3c3cffce2461243c006161243c0075ffffce24
-243c243ce6ffffffffffda3c003c61ff85243c3c2450ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff8524ff
-ffce00ceff3c24cefff22424cefff22485ffe62495ffffce2485ffffffff
-ffff3c3cffff8524ceffffa100b2ffffffffffff2485ffff3c3cffce0061
-ffff850061ffff7524ffff3c61ffffff3c50ffffffffffffce00ceffbe00
-95ffffce2475ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff8524ffffce00ceff3c3cffffff3c3cffffff3c85
-ff8524ffffffff7524ffffffffffff3c3cffff3c61ffffffff3c50ffffff
-ffffff2485ffff3c3cffce00beffffce00ceffffce24ffce00beffffffb2
-24e6ffffffffffce00ceff7524ffffffff7524ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff619dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff8524ffffce00ce
-ff3c3cffffff3c3cffffff3c85ff5000242424242424ffffffffffff3c3c
-ffff2485ffffffff3c3cffffffffffff2485ffff3c3cffce00ceffffce00
-ceffffce24ff9500242424242400ceffffffffffce00ceff3c3cffffffff
-8524ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff619dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff8524ffffce00ceff3c3cffffff3c3cffffff3c85ff613cce
-cececececeffffffffffff3c3cffff2485ffffffff3c3cffffffffffff24
-85ffff3c3cffce00ceffffce00ceffffce24ffa124becececececeffffff
-ffffffce00ceff3c3cffffffff8524ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff619dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff40beffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff00ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff8524ffffce00ceff3c3cff
-ffff3c3cffffff3c85ff9524f2ffffff7585ffffffffffff3c3cffff3c3c
-ffffffff2461ffffffffffff2485ffff3c3cffce00ceffffce00ceffffce
-24ffda00b2ffffffb275f2ffffffffffce00ceff8524ffffffff6124ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff619dffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff40beffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffbe40ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff9524b2f2ce00ceff3c3cffffff3c3cffffff3c85ffff243ce6ffb224
-85ffffffffffff5024ceffb20095ffff6124daffffffffffff2461ceff3c
-3cffce00ceffffce00ceffffce24ffff5024beffda2450ffffffffffffda
-0095dae62461ffff950095ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d
-7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff619dffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff40beffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffe6242485ce24ceff5050ffffff5050
-ffffff5085ffffce3c24242475ffffffffffffffb22424ceffa12424243c
-b2ffffffffffffff752424ff5050ffce24ceffffce24ceffffce24ffffff
-5024242450ffffffffffffffff3c2450ffce3c24242485ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff619dffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff40beffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff00ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffe6ceffffffffffff
-ffffffffffffffffffffdadaffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffceffffffffffffffffffffffffffff
-ffffe6ceffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff619dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff619dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff619dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffff2ceffffffffffffffffff
-ffffffffffffffffffffffffffffffdadaffffffffffffffffffffffffff
-ffffffffffffffffffdadaffffffffffffffffffffffffffffffffffffff
-fff2ceffffffffffffffffffffffffffffffffffffffffffffffffffffce
-f2ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff619dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff8524ffffffffffffffffffffffffffffffffffffffffffffffff3c3c
-ffffffffffffffffffffffffffffffffffffffffffff3c3cffffffffffff
-ffffffffffffffffffffbe61ffff8524ffffffffffffffffffffffffffff
-ffffffffffffffffffffffff2485ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff619dffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff40beffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff8524ffffffffffffffffffffffffff
-ffffffffffffffffffffff3c3cffffffffffffffffffffffffffffffffff
-ffffffffff3c3cffffffffffffffffffffffffffffffff3c3cffff8524ff
-ffffffffffffffffffffffffffffffffffffffffffffffffff2485ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff619dffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff40be
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff00ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffceceffffff8524
-ffe6cee6ffffffffffffceceffffffffffffffcedaffffff3c3cffffffff
-ffffffffffffffffffffffffffffffffffff3c3cffdaceffffffffffffff
-cedaffffffff3c3cffff8524ffe6cee6ffffffffffffceceffffffffffff
-ffceffffffffffff2485ffffffffdaceffffffffffffdacee6ffffffffff
-dacee6ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61
-9dffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff40beffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff00ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffa12424243cceff85246124242475ffffffa124242424b2ffffff
-7524242450ffff3c3cffffa124a1ffffffffff24a1ffffbe24a1ffffa124
-ff3c3c50242424a1ffffff752424243cdaff50000024ce85246124242475
-ffffffa124242424b2ffff5075240050ffffffffff2485ffffce3c242424
-85ffffe63c24242450ffffe63c24242450ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff619dffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff40beffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffbe0095ffff6124ff850061ffff61
-24e6ffbe0095ffff6124e6ff8524beffe63c50ff3c3cffa100a1ffffffff
-ffff5050ffff610050ffff6150ff3c0095fff23c24ffff8524befff23c3c
-ffff3c3cffff850061ffff6124e6ffbe0095ffff6124e6ff3c2485cedaff
-ffffffff2485ffff2461ffffa100b2ff5050ffffce2495ff5050ffffce24
-95ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff619dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffff50
-3cffffffe685f28524e6ffffe624ceff503cffffffff2475ff2475ffffff
-be85ff3c3ca124b2ffffffffffffff9524ffff246124ffff24a1ff3c24ff
-ffffa124ffff2475ffffffe624beff3c3cffff8524e6ffffe624ceff503c
-ffffffff2475ff3c24ffffffffffffffff2485ff9524ffffffff613cff3c
-3cf2ffffdaffff3c3cf2ffffdaffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff619dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff3c75ffffffffffff8524ffffffff24ceff24
-243c3c3c3c243cff24beffffffffffff3c242424f2ffffffffffffffe624
-cee624da24dace24ffff3c3cffffffce24ffe624243c3c3c3c0085ff3c3c
-ffff8524ffffffff24ceff24243c3c3c3c243cff3c3cffffffffffffffff
-2485ff61003c3c3c3c2424ffb224243c85daffffb224243c85daffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff3c85ffffff
-ffffff8524ffffffff24ceff2450858585858595ff24ceffffffffffff3c
-24be2461ffffffffffffffff3c85953cff2495753cffff3c3cffffffce24
-ffda00618585858585beff3c3cffff8524ffffffff24ceff245085858585
-8595ff3c3cffffffffffffffff2485ff5024858585858585ffffe6955024
-00a1ffffe695502400a1ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff3c3cffffffff50da8524ffffffff24ceff3c3cffffff
-ffa1daff2485ffffffbe50ff3c3cffb200b2ffffffffffffff853c5075ff
-61503c95ffff3c3cffffffce24ffff2485ffffffffa1f2ff3c3cffff8524
-ffffffff24ceff3c3cffffffffa1daff3c3cffffffffffffffff2485ff85
-24ffffffffb2ceffcebeffffff6124ffcebeffffff6124ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffa124ceffff8524ff85
-24ffffffff24ceffa100a1ffffb200a1ff613cf2ffff5050ff3c3cffff61
-24f2ffffffffffffda0024ceffbe2424e6ffff3c3cffffffce24ffff6124
-ceffff7524e6ff3c3cffff8524ffffffff24ceffa100a1ffffb200a1ff3c
-3cffffffffffffffff2485ffe62461ffffe62461ff3c50ffffff503cff3c
-50ffffff503cffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff61243c3c24a1ff8524ffffffff24ceffff61003c3c0061ffff
-ff3c243c243cdaff3c3cfffff22461ffffffffffffff2424ffffff243cff
-ffff3c3cffffffce24ffffff3c243c3c24a1ffff950024ce8524ffffffff
-24ceffff61003c3c0061ffff3c3cffffffffffffffff2485ffffa124243c
-243cffffce24243c2424ceffce24243c2424ceffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff619dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffda9595e6fffff2ceffffff
-ffceffffffffda9595daffffffffffce85a1ffffffdadaffffffdaceffff
-ffffffffffdadaffffffcedaffffffdadaffffffffceffffffffce85a1e6
-ffffffffcecefff2ceffffffffceffffffffda9595daffffffdadaffffff
-ffffffffffcef2ffffffe6a185ceffffffffffbe85beffffffffffbe85be
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff619dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff619dffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff40beffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7d
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff619dffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff40beffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff619dffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff40beffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff619dffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-40beffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff00ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff619dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff40beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff619dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffda
-daffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffceffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffa195ffff3c3cffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffce00ceffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffa195ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff2485ffff3c3cffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffce00ceffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff2485
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff2485ffff3c3cffdaceffffffffffffe6ceceffffffffffffffce
-ceffffffffffffffffffffffdaceffffffffffffffffffffffdaceffffff
-ce00ceffcedaffffffffffffceceffffffffffffffceffffffffcecee6ff
-ffffffffffdaceffffffff2485ffffffffe6cee6ffffffffffffe6daffff
-ffceceffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff24002424ff3c3c50242424a1ffff
-ff5024242424a1ffff24953c24243ce6ffffffffffff507550242424b2ff
-ffffffffffffce3c242424a1ffce007524240050ffffff752424242475ff
-ff8550500024ffa12424242450ffffffce3c242424a1ff24002424ffff50
-24242461ffffff2495240095be2424242475ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffceffffffffffffffffceffffff
-cececececeffffffffffffffffffbe85ceffffffffffffffffffffffbeb2
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff619dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffce
-cecececee6ffffffffffffffffffffffffffffffffffffffffffffdadaff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-2485ffff3c0095fff23c24ffff613ce6ffff6124ffff2424beffce2461ff
-ffffffffff3c2495fff23c3cffffffffffffff2461ffff9500dace003ce6
-ffa100a1ffa124beffff9500daff850061cebee62495ffffbe2495ffff24
-61ffff9500daff2485ffff503ce6ffce2475ffff2424a1beff2475ffff95
-00daffffffffffffffffffffffffffffffffffffffffffffffffffffffce
-00ceffffffffffffce00ceffff24000000002450ffffffffff7524242424
-24a1ffffffffffffffffff5095ffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffa150242450b2ffffffffffffffffffffffffffffffff
-ffffffffdaffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff619dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff40beffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff2400000000243cb2ffffffffffffffffffff
-ffffffffffffffffffff3c3cffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff2485ffff3c24ffffffa124ffffa1beffff
-ff8524ffff2461ffffff503cffffffffffff3c24ffffff9524ffffffffff
-ff9524ffffffff85bece00a1ffffff2485ffce95ffffffce00ceff8524e6
-fffff285ffffffff2485ff9524ffffffff85beff2485ffda00beffffffa1
-24ffff2461ffffff2461ffffffceffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffce00ceffffffffffffce00ceffff2475cece
-ceb22450ffffff5024a1ffffff6100b2ffffffffffffffff24daffffffff
-ffffffffffffffffffffffffffffffffffffffffff7d7dffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff8500618585500085ffff
-ffffffffffffffffffffffffffffffff9524ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff619dffffffffffffffffffffffffff
-ffffffffffffffffff8524242424242424ceff2485ffce24ceffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff40beff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff2475cecece
-be5000b2ffffffffffffffffffffffffffffffffffffff9595ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff2485ffff
-3c3cffffffce24ffffffda85753c2424ffff2485ffffff853cffffffffff
-ff3c3cffffffce24ffffffffffff853cffffffffffffce00ceffffff3c85
-ffffe695853c2400ceff8524ffffffffffa185503c0085ff853cffffffff
-ffffff2485ffa1003c3c3c3c3c00ceff2485ffffff7500245095e6ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffce00ceffff
-ffffffffce00ceffff2485ffffffff8524ffffa100b2ffffffffff3c3cff
-ffffffffffffce24ffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff2475ffffffff6124ffffffffffffffffffffffffffffffffffff85
-24ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff619d
-ffffffffffffffffffffffffffffffffffffffffffff8524858585858585
-f2ff5095ffce00ceffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff40beffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff2485ffffffffff3c3cffffffffffcedaffffffffffff
-ffffffffffffffffffffffffdaceffffffffffffdaceffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff00ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff2485ffff3c3cffffffce24ffff75003c75a17524ff
-ff2485ffffff853cffffffffffff3c3cffffffce24ffffffffffff753cff
-ffffffffffce00ceffffff3c85ffb2243c6195a100ceff8524ffffffe624
-245085be2485ff753cffffffffffffff2485ff9524858585858585f2ff24
-85ffffffffda853c2424daffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffce00ceffffffffffffce00ceffff2485ffffffff753c
-ffff5024ffffffffffffe6ffffffffffffffff8561ffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff2485ffffffffe685f2da85ffffff
-ffda85ffff953c3c75e6ffbe502485beffffa1503c75f2fffff285f2753c
-61e6ff753c61ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff619dffffffffffffffffffffffffffffffffff
-ffffffffff8524ffffffffffffffffffffffce00ceffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff40beffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff2485ffffffffffa100
-ceffff752424243cdaffa124e6ffffff753cff5050ffffce3c242424a1ff
-ffce3c24242485ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff953c
-3c3c3c3c3c3c3c61ff953c3c3c3c3c3c3c61ffff503c3c3c3c3c61a1ffff
-ff953c61ffffffffffff613c95ffff6161ffffffffbe6124243c95ffffff
-ffffff953c243c61daffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffbe40ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff2485ffff3c3cffff
-ffce24ffe62485ffffff8524ffff2485ffffff853cffffffffffff3c3cff
-ffffce24ffffffffffff8524ffffffff6195ce00ceffffff3c85ff3c50ff
-ffffce00ceff8524ffffff6124f2ffffff2485ff8524ffffffff6195ff24
-85ffce00ceffffffdabeffff2485ffffffbef2fffff22461ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffce00ceffffffffffff
-ce00ceffff24508585856124b2ffff243cffffffffffffffffffffffffff
-ffff3cbeffffffffffffffffffffffffffffffffffffffffffffffffffff
-7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff50
-2485daffffffffffe624a1ffffff5050ff612485853c24ffbe502485beff
-612475853c24f2ffce243c6185243c3c61752450ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff619dffffffff
-ffffffffffffffffffffffffffffffffffff8524ffffffffffffffff5095
-ffce00ceffffb23c242475ffffffffffffffffffffffffffffffffffffff
-ffffffffffff40beffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff2485ffffffffffda0095ff8524befff23c3cffff2485ffffff24
-95ff3c3cffff2461ffff9500daff2461ffffa100b2ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff00ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff953c3c3c24003c3c3c61ff85003c3c3c3c3c3c
-61ffff2450858585853c0075ffff850024e6ffffffffe6240085ffff3c3c
-ffffffa1003c858561243cffffffff50247585853c24beffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe
-40ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff2475ffff3c3cffffffce24ffe62485ffffe63c24ffff2485ff
-ffff853cffffffffffff3c3cffffffce24ffffffffffffe62495ffffbe00
-bece00ceffffff3c85ff2450ffffff6100ceff8524ffffff6124f2ffff95
-0085ffe62495ffffbe00beff2475ffff3c3cf2ffff503cffff2485ffffff
-2485fffff22485ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffce00ceffffffffffffce00ceffff24242424242424b2ffff2475
-ffffffffffffffffffffffffffffff24ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff5024002450a1ffffff503cffffff24a1ff
-24a1ffffe650e6ff8524ffffbe00beffffff3c61ffce0075ffffa10095ff
-ff9524ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff619dffffffffffffffffffffffffffffffffffffffffff
-ff8524ffffffffffffffff2485ffce00ceffb20085ceb22461ffffffffff
-ffffffffffffffffffffffffffffffffffffff40beffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff2485ffffffffffff2485ff2475
-ffffffe624beff6124ffffbe24e6ff3c3cff9524ffffffff85be9524ffff
-ffff613cffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff8524
-ffffffffff8524ffffffffffffffffff2485ffffffffff6124ffff850024
-95ffffffff953c2485ffff3c3cffffb20061ffffffffce243cffffda00b2
-ffffffff3c3cffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff500024ff3c3cffffffce24ff
-ff61003c3c247500daff2485ffffff853cffffffffffff3c3cffffffce24
-ffffffffffffffa1243c3c2475ffce00ceffffff3c85ffa1003c3c3c6124
-95ff8524ffffffda24243c3c503c50ffffa1243c3c2475ffff500024ffce
-24243c2424ceffff2485ffffffa1243c3c243cffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffce00ceffffffffffffce00ceff
-ff2485ffffffff6100beff243cffffffffffffffffffffffffffffa13cff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffe6a161
-240050ffffa124e6ffa124ffff3c2485daffffffff8524ffff8524cecece
-ce6124ffce00ceffffce00ceffffce24ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff619dffffffffffffffff
-ffffffffffffffffffffffffffff8500242424242485ffff2485ffce00ce
-ff3c61ffffffbe00daffffffffffffffffffffffffffffffffffffffffff
-ffff40beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-2485ffffffffffce0095e624243c3c3c3c0085ffda00daff6150ffff3c3c
-ff853cffffffffffff61003c3c3c3c2424ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff8524ffffffffff8524ffffffffffffffffff24
-85ffffffffff8500ceff8524613cffffffff3c852485ffff3c3cffff3c3c
-ffffffffffffa100beffce00ceffffffffbe85ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffceceffdadaffffffffceffffffce85a1ffffcef2ffcef2fffffff2da
-ffffffffffffdadaffffffffceffffffffffffffffe6a185daffffffceff
-ffffffdaf2ffffda9595e6ffdadafff2ceffffffffe6a185daffe6ceffff
-ffe6a185daffffffffceceffffffbe85beffffffffcef2ffffffffe6a185
-ceffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ce00ceffffffffffffce00ceffff2485ffffffffff2485ff5024ffffffff
-ffff9575f2ffffffffff6185ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff950095ffff2495ff3c61ffffe6502400
-2475ffff8524ffff3c00242424242424ffce00ceffffce00ceffffce24ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff8524ce
-cecececef2ffff2485ffce00ceff2450858585852485ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff2485ffffffffffa100dada006185858585
-85beffff3c75ff24a1ffff3c3cff753cffffffffffff5024858585858585
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff8524ffffffff
-ff8524ffffffffffffffffff2485ffffffffff5024ffff8524ce24e6ffff
-e624e62485ffff3c3cffff2485ffffffffffffff2475ffff243ca1e6ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffce00ceffffffffffffce00ceffff2485ff
-ffffffff2485ffa100beffffffffff503cffffffffffff24daffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff8524ffffffffffff2485
-ffff753ce624daffffffffffce750095ff8524ffff7524ffffffffffffff
-ce00ceffffce00ceffffce24ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff8524ffffffffffffffff2485ffce00cece003c3c
-3c3c3c3c95ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff2485ffff
-ffffff503cffff2485ffffffffa1f2ffff9524a124ffffff3c3cff8524ff
-ffffff61958524ffffffffb2ceffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff8524ffffffffff85003c3c3c3c3c3c95ffff24243c3c3c
-3c2424a1ffff8524ff2495ffff9550ff2485ffff3c3cffce00a1ffffffff
-ffffff3c3cffffce3c00242461beffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffce00ceff
-ffffffffffce00ceffff2485ffffffce6100daffff3c24a1ffffff6100b2
-ffffffffffda24ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffda0075ffffffffce2495ffffda00613cffffe63cbeffffff3c61ff
-8524ffffa124ceffffff5061ffce00ceffffce00ceffffce24ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff8524ffffffffff
-ffffff2485ffce00ceff2495ffffffffe6ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff2485ffffe6ce6100b2ffff6124ceffff7524e6ffff
-ff242461ffffff3c3cffe62495ffffbe00bee62461ffffe62461ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff8524ffffffffff852485
-8585858585beffff24243c3c242475e6ffffff8524ff753cffff3ca1ff24
-85ffff3c3cffce00beffffffffffffff3c3cffffffffda9550240075ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffce00242424242450ffce00ceffff24242424240024
-a1ffffffff5000243c2424a1ffffffffffff8561ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff61003c858575243cffffffff3c
-2495ffffff3c3cbece8500b2ffa10075beff3c24a1ce7500b2ffce00ceff
-ffce00ceffffce24ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff8524ffffffffffffffff2485ffce00ceff503cffffffa124
-ceffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff2424242424003cb2
-ffffffff3c243c3c24a1ffffffff5000daffffff3c3cffffa1243c3c2475
-ffffa124243c243cffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff8524ffffffffff8524ffffffffffffffffff2485ffffff6124beff
-ffff8524ffda24e6e624ffff2485ffff3c3cffff2485ffffffffffffff24
-75ffffffffffffffff6100daffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffcecececececeda
-ffffceffffffcececececedaffffffffffffffda9585a1ffffffffffffff
-ffa1beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffa13c24243c85ffffffffff8524e6ffffffff6124243cb2ffffff503c95
-ffff6124243cb2ffffda3cdaffffda3cdaffffda50ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff619dffffff
-ffffffffffffffffffffffffffffffffffffff8524ffffffffffffffff24
-85ffce00ceffda243c85752461ffffffffffffffffffffffffffffffffff
-ffffffffffffff40beffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffcececececedaffffffffffffffce85a1e6fffffffffff2ceff
-ffffffdadaffffffe6a185daffffffffe6a185ceffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff8524ffffffffff8524ffffffffff
-ffffffff2485ffffffff3c24f2ffff8524ffff24959550ffff2485ffff3c
-3cffff3c3cffffffffffffb200beff503cffffffffffce00ceffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-be40ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7d7dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff6150ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff619dffffffffffffffffffffffffffffffffffffffff
-ffffbe85ffffffffffffffff85befff285f2ffffe6853c61a1ffffffffff
-ffffffffffffffffffffffffffffffffffffffff40beffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff85
-24ffffffffff8524ffffffffffffffffff2485ffffffffbe0061ffff8524
-ffff753c3ca1ffff2485ffff3c3cffffb20075ffffffffe6243cffff9500
-b2ffffffff9500daffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffbe40ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7d7dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffcea124beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff619dffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff40beffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff8524ffffffffff852485858585858585ffff
-2485ffffffffff7500b2ff8524ffffda0024ffffff2485ffff3c3cffffff
-a1005095be75243cdaffffff3c00508585610061ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffbe40ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7d7dffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff502461ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff619dffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff40beffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff9550ffffff
-ffff953c3c3c3c3c3c3c50ffff5095ffffffffffff5061ff9550ffffff50
-75ffffff5095ffff6161ffffffffbe5024243c85ffffffffffff853c2424
-3ca1ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffbe40ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff2485ffffffffffffff2485ffffffffffffffff
-ffffffffffffffffffff5050ffffffffffffffffffffffffffffffffffff
-ffff8524ffffffffffff8524ffffffffffffffffffffffffffffffffbeda
-ffce24ceffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7d7dffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff619dffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff40
-beffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff00ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffbe40ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff2485ffffffff
-ffffff2485ffffffffffffffffffffffffffffffffffff3c3cffffffffff
-ffffffffffffffffffffffffffffff8524ffffffffffff9550ffffffffff
-ffffffffffffffffffffce00ceffce00ceffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-619dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff40beffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff00ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff2485ffffffffffffff2485ffffffffffffffffffffffff
-ffffffffffff3c3cffffffffffffffffffffffffffffffffffffffff8524
-ffffffffffffffffffffffffffffffffffffffffffffffce00ceffce00ce
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7d7dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff619dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff40beffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffb23c24243cb2ff
-ff6195502461ffff6124243cbeffffffffffffff247550242485ffffff24
-85ffffda50242450e6ffffffb23c242485ffff3c3cffffce3c95ffffb23c
-242475ffffffff852424507524ffffffffffff9550ffff50ce61242461ff
-ffffffffffda3c003c61ce00a150242485ffffffff6124243cbeffffffff
-ffffffffffffffffffffffffffffffdadaffffffffffffceffffffcecece
-cececececefff2ceffffffffffcedaffffffffffcefff2ceffffffffffff
-ffffceffffffcececececeffffffffffffffffffffffffffffffffffffff
-ffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff619dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff40beffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffff2cefffffffffffffff2ceffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffbe0085cece6124e6ff3c245085b2ff3c3cbece6124daffffff
-ffffff242485ce950085ffff2485ffda2461cece3c24f2ffb20085cea124
-75ff3c3cffce2461ffffb20085ceb22461ffff850095ce852424ffffffff
-ffff8524ffff242485ce950085ffffffffffffa100a1dace0024a1ce6100
-beffff3c3cbece6124daffffffffffffffffffffffffffffffffffff3c00
-beffffffffce00ceffce0000000000000024ffa100daffffffbe0024ffff
-ffff8524ff8524ffffffffffffffce00ceffce00000000002475ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffda853c75a1
-ffffffffffffffffffffffffff85beffbe85ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffceffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff8524
-ffffffffffffff8524ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff9561ffffffce00ceff3c24ff
-ffffa124e6ffffff5050ffffffffffff2461ffffff8524ffff2485ff503c
-fffffff22475ff3c61ffffff8550ff3c3cce2475ffffff3c61ffffffbe00
-daff2475ffffff6124ffffffffffff8524ffff2450ffffff3c3cffffffff
-ffffce00ceffce0095ffffff2485ffa124e6ffffff5050ffffffffffffff
-ffffffffffffffffffffff3c003cffffffffce00ceffce00a1cecececece
-ceffe624a1ffffff752424ceffffff3c50ff8524ffffffffffffffce00ce
-ffce00a1cecece950085ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff61003c3c3c243cffffffffffffffffffffffff2485ff85
-24ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffda502400242495ffffffffffffffffffffffffffffffffffffffff
-a1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff8524ffffffffffffffbe85ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffdace856100ceff3c3cffffff7524858585855024ffffffffffff24
-95ffffffce00ceff2485ff2485ffffffff3c3cff24a1ffffffffffff3c24
-2424ffffffff2450858585852485da00ceffffffbe24ffffffffffff8524
-ffff2485ffffff853cffffffffffffce00ceffce00ceffffff3c85ff7524
-858585855024ffffffffffffffffffffffffffffffffffff3c242475ffff
-ffce00ceffce00ceffffffffffffffff3c61ffffff3c852485ffffff2495
-ff8524ffffffffffffffce00ceffce00ceffffffff3c3cffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff6124beffffffce2450ffff
-ffffffffffffffffff2485ff8524ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff3c3cbecece610095ffffffffffff
-ffffffffffffffffffffffff8524ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffe6ceff8524ffffffff
-e6daffffffffffffffffffffffffffffffe6cee6ffffffffffffdae6ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffda3c2424507500ceff3c3cffffff3c24
-3c3c3c3c3c50ffffffffffff24ceffffffce00ceff2485ff2485ffffffff
-3c3cf224ceffffffffffff3c00852485ffffce003c3c3c3c3c3c95ce00ce
-ffffffce24ffffffffffff8524ffff2485ffffff853cffffffffffffce00
-ceffce00ceffffff3c85ff3c243c3c3c3c3c50ffffffffffffffffffffff
-ffffffffffffff3c3c8500beffffce00ceffce00ceffffffffffffffff75
-24ffffe624da753cffffce24e6ff8524ffffffffffffffce00ceffce00ce
-ffffffff3c61ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffda0095ffffffffff8524e6ffffe6958595e6ffffff2485ff8524ffffff
-be8585daffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffce00
-ceffffffff5024ffffffffffffffffffffffffffffffffffff8524ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff502424246124ffff24952400958524ff613cffffffff3c61ffff50
-24242461ffffce24750024daffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff503cf2
-ffffce00ceff3c3cffffff8524ffffffffe6ffffffffffffff2485ffffff
-be24e6ff2485ff2461ffffffff3c3cff2495ffffffe685ff3c3cff8524da
-ffff2495ffffffffe6ffff24a1ffffffa124ffffffffffff8524ffff2485
-ffffff853cffffffffffffce00ceffce00ceffffff3c85ff8524ffffffff
-e6ffffffffffffffffffffffffffffffffffffff3c3cff3c3cffffce00ce
-ffce00a1cececececedaffffbe24e6ffa124ffbe24ffff8524ffff8524ff
-ffffffffffffce00ceffce00758585855024e6ffffffffffffffffffffff
-ffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff8524ffffffffffffffffffffa1243c3c
-2424b2ffff2485ff8524ffff50243c3c0075ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff619dffffffffffffffffce00b2fffffffff2ceffbe3ce6ffffffb250ff
-e65024243cb2ff9524003c95ffff6124243cbeffff9561a1242450e6a124
-2450ffffffffffffffffffffff40beffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff6124ceffbe2424ffff2424a1beff85
-24ffda00beffffda00daff503ce6ffce2475ffce003cbeb2ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffbe40ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff2461ffffff8500ceff3c3cffffffbe00a1ffffff
-3c50ffffffffffff2450ffffff613cffff2485ff6124f2ffffce2495ff50
-50ffffff613cff3c3cffff3c3cffff503cffffffa124ceff5050ffffff50
-24ffffffffffff8524ffff2485ffffff853cffffffffffffce00ceffce00
-ceffffff3c85ffbe00a1ffffff3c50ffffffffffffffffffffffffffffff
-ffffff3c3cffda2475ffce00ceffce0024242424242450ffffff24beff50
-61ffff24a1ff3c61ffff8524ffffffffffffffce00ceffce002424242424
-3cdaffffffffffffffffffffffffffffffffffff7d7dffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff3c24ff
-ffffffffffffffffff2485ffffff3c3cffff2485ff8524ffce24e6ffff85
-24ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff619dffffffffffffffffff3c2461a1e6
-ffffffffff2485ffffff3c61ff3c50cece6124e6f27524cef2ff3c3cbece
-6124daff85243cbeb224243cbea12461ffffffffffffffffffff40beffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff2495
-ffffff7524ffff2461ffffff8524ffff3c61ffff753cffda00beffffffa1
-24ffce00a1ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffbe40ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff75007585613c24
-a1ff3c3cffffffff610061853c24daffffffffffff243c50855024ceffff
-2485ffff3c3c8575243cffffda2450856124b2ff3c3cffffda2485ffda24
-3c85752461ffffda245085503c24ffffffffffff8524ffff2485ffffff85
-3cffffffffffffff242461ce00ceffffff3c85ffff610061853c24daffff
-ffffffffffffffffffffffffffffffff3c3cffff8500bece00ceffce00ce
-ffffffffffffffffff3c75ff24a1ffff3c61ff24beffff8524ffffffffff
-ffffce00ceffce00ceffffffe63c24ffffffffffffffffffffffffffffff
-ffffff7d7dffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff3c3cffffffffffffffffffffdaffffffff3c3cff
-ff2485ff8524ffda0061daffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff619dff
-ffffffffffffffffff612400242485ffffff6124ffffe624beff2495ffff
-ff85ffff8524ffffa124e6ffffff5050ff8500daffff7524f2ffff613cff
-ffffffffffffffffff40beffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffce00ceffffffce24ffff2485ffffff8524ffff95
-24ffff2495ffa1003c3c3c3c3c00cece00ceffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff00ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffbe40ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff955050a1ff95b2ff9595ffffffffffa1613c85e6ffffff
-ffffffff85f2953c75e6ffffff85beffffff955050a1ffffffffe6853c61
-daffff9595ffffff9585ffffe6853c61a1ffffffffe6753c95f285ffffff
-ffffffbe85ffff85beffffffbe95ffffffffffffffb28595f285f2ffffff
-95beffffffa1613c85e6ffffffffffffffffffffffffffffffffffffff3c
-3cffffff3c3cbe00ceffce00ceffffffffffffffffff853cce24ffffff95
-24ce24ffffff8524ffffffffffffffce00ceffce00ceffffffffbe00ceff
-ffffffffffffffffffffffffffffffff7d7dffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7524ffffffffff
-ffffffffffe6753c2424003cffff2485ff8524ffff8524002461daffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff619dffffffffffffffffffffffffda953c0050ff
-ffbe00daff8524ffff50003c95daffffff8524ffff7524858585855024ff
-8524ffffff8524ffffff853cffffffffffffffffffff40beffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffce00ceffffffce
-24ffff2485ffffff8524ffffff24bebe24e6ff9524858585858585f2ce00
-ceffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffbe40ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff3c3cffffffda243c00ceffce00ceffffffff
-ffffffffffce24753cffffffda24753cffffff8524ffffffffffffffce00
-ceffce00ceffffffffbe00ceffffffffffffffffffffffffffffffffff7d
-7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffa100daffffffffffce24beff243c85ceff3c3cffff2485ff
-8524ffffffffbe752424e6ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff619dffffffffff
-ffffffdadaffffffffff9500ceffff3c75ff2485ffffff953c24003cffff
-8524ffff3c243c3c3c3c3c50ff8524ffffff8524ffffff853cffffffffff
-ffffffffff40beffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff2495ffffff9524ffff2485ffffff8524ffffff50506150
-ffffce00ceffffffdabeffce00ceffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffbe40
-ffffffffffffff5dbeffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff3c3cffffff
-ff850000ceffce00ceffffffffffffffffffff242485ffffffff242485ff
-ffff8524ffffffffffffffce00ceffce00ceffffffbe3c24ffffffffffff
-ffffffffffffffffffffffff7d7dffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff2461ffffffffff6124ff
-9524e6ffffff3c3cffff2485ff8524ffbe61fffffff224a1ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff619dffffffffffffffff5024ffffffffffce00ceffff9524
-ce24e6ffffffffffffb22475ff8524ffff8524ffffffffe6ffff8524ffff
-ff8524ffffff853cffffffffffffffffffff40beffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff613cf2fff23c24ffff24
-85ffffff8524ffffffbe2424a1ffffff3c3cf2ffff503cffce00ceffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff00ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffbe40ffffffffffffff3020ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff3c3cffffffffff3c00ceffce0024242424242424ceff
-ffff5000ceffffffff6100ceffffff8500242424242485ffce00ceffce00
-24242424243cceffffffffffffffffffffffffffffffffffff7d7dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffa10050beffce6100a1ffbe0095ffff85243cffff2485ff8524ffda
-0095ffff9500daffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff619dffffffffffffffffa1
-0075ffffffff6124e6ffffe6245050ffffe624a1ffffff2475ff8524ffff
-be00a1ffffff3c50ff8524ffffff8524ffffff853cffffffffffffffffff
-ff40beffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff3c243c247524ffff2485ffffff8524ffffffff2424ffffffffce
-24243c2424ceffce00ceffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffbe40ffffffff
-ffffff3004aeffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffdadafffffffffff2ce
-ffffffcecececececececefffffffff2cefffffffffff2cefffffffff2ce
-cececececef2ffffceffffffcececececee6ffffffffffffffffffffffff
-ffffffffffffffff7d7dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffb23c2424003cb2ffffff612424
-24618524ffff2485ff8524ffffa124242424a1ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff619dffffffffffffffffff6100243c3c2424a1ffffffff5000a1ffff
-ff612475855024daffbe003c95ff610061853c24daff8524ffffff8524ff
-ffff853cffffffffffffffffffff40beffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffbe85daffceffffcef2ffffff
-f2ceffffffffdadaffffffffffffbe85beffffffffceffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffbe40ffffffffffffff300020ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffe6cedaffffffffffffffceffffffffffffffffffffffffffffffdada
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffbe853c
-3c85e6ffffffffff8524ffffffffffa1613c85e6ffffff9585beffffa161
-3c85e6ffffbe85ffffffbe85ffffffbe95ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff30
-000caeffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff5061ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff30000020ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff856124e6ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff3000000cae
-ffffffffffffffffffffffffffffffffffffffda3cdaffffffffff6161ff
-ffffffff953cb2ffffffffff503c3c3c3c3c61a1ffff953c3c3c3c3c3c3c
-3c61ffffffffff9550ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffdaffffffffffffda3cdaffffffffffffffffffffff
-ffffffffffa13c24a1da3c2461ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff613ca1ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff3000000020ffffffffffffffffffffffffffffffffff
-ffffce00ceffffffffff3c3cffffffffff3c2450ffffffffff2450858585
-853c0075ff953c3c3c24003c3c3c61ffffffffff8524ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff3c85ffffffffffffce
-00ceffffffffffffffffffffffffffffffff245085e6502485beffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff300000000caeffffff
-ffffffffffffffffffffffffffffffce00ceffffffffff3c3cffffffffda
-009524e6ffffffff2485ffffffffff6124ffffffffff8524ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff2485ffffffffffffce00ceffffffffffffffffffffffffffffff
-ff24ceffff3c85ffffffffffffffffffffffffffffffffffffffffffffff
-ffffde7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d
-7d7d7d7d180000000020ffffffffffffffffffffffffffffffffffffce00
-ceffffffffff3c3cffffffff6124ff2461ffffffff2485ffffffffff8500
-ceffffffff8524ffffffffffffffffffbe85ffff85f2a13c3ca1ffffff85
-f2853c50beffffff85beffffff9595ff85245085ffffffffffce00be753c
-75e6ffffbe85fffffff285f2f28524758585245085f2ffe6753c50b2ffff
-ff95be853c95ffffffffffffffffff7d0000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000caeffffffffffff
-ffffffffffffffffffffffce00ceffffffffff3c3cffffffff2485ff7524
-ffffffff2485ffffffffff5024ffffffffff8524ffffffffffffffffff85
-24ffff243c50856100a1ffff243c50a16100b2ffff2485ffffff3c3cff85
-245085ffffffffffce002461853c24e6ff8524ffffffce00cef285247585
-85245085f2da245085750085ffff3c3c243c85ffffffffffffffffff7d00
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-00000000000020ffffffffffffffffffffffffffffffffffce00ceffffff
-ffff3c3cffffffa124e6ffe624a1ffffff24243c3c3c3c2424a1ffffffff
-ff8524ffffffffffffffffff8524ffff243cffffff3c3cffff243cffffff
-613cffff2485ffffff3c3cffff2485ffffffffffffce0075ffffff3c61ff
-8524ffffffce00ceffff24ceffff3c85ffff5050ffffff9524e6ff3c24f2
-ffffffffffffffffffffff7d000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000caeffffffffffffffffff
-ffffffffffffffce00ceffffffffff3c3cffffff5050ffffff3c3cffffff
-24243c3c242475e6ffffffffffff8524ffffffffffffffffff8524ffff24
-85ffffff753cffff2495ffffffce00daff2485ffffff3c3cffff2485ffff
-ffffffffce00ceffffff8524ff8524ffffffce00ceffff24ceffff3c85ff
-ff2475cececece2495ff3c3cffffffffffffffffffffffff7d0000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-00000020ffffffffffffffffffffffffffffffffce00ceffffffffff3c3c
-ffffe624242424240000daffff2485ffffff6124beffffffffffff8524ff
-ffffffffffffffff8524ffff2485ffffff853cffff24ceffffffce00ceff
-2485ffffff3c3cffff2485ffffffffffffce24ffffffff8524ff8524ffff
-ffce00ceffff24ceffff3c85ffce0024242424242485ff3c3cffffffffff
-ffffffffffffff7d00000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000caeffffffffffffffffffffffff
-ffffffe624a1ffffffffff2450ffff7524cecececece2461ffff2485ffff
-ffff3c24f2ffffffffff8524ffffffffffffffffff8524ffff2485ffffff
-853cffff24a1ffffffce00daff2485ffffff3c3cffff2485ffffffffffff
-ce00daffffff8524ff8524ffffffce00ceffff24ceffff3c85ffff24a1ff
-ffffffffffff3c3cffffffffffffffffffffffff7d000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-20ffffffffffffffffffffffffffffffff2450ffffffffbe0095ffff2461
-ffffffffff6124ffff2485ffffffffbe0061ffffffffff8524ffffffffff
-ffffffff8524ffff2485ffffff853cffff2461ffffff7524ffff2475ffff
-ff243cffff2485ffffffffffffce00a1ffffff3c50ff8524ffffffa100ce
-ffff24ceffff3c85ffff3c61ffffffbe24beff3c3cffffffffffffffffff
-ffffff7d0000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000caeffffffffffffffffffffffffffffff
-a1003c858575243cffffbe00beffffffffffbe0095ff2485ffffffffff75
-00b2ffffffff8524ffffffffffffffffff8524ffff2485ffffff853cffff
-242485ce8500a1ffff5024a1be61243cffff243c85ffffffffffce0024a1
-ce6124daffda0061ce952400ceffff24ceffff3c85ffffb20061ceb2243c
-ffff3c3cffffffffffffffffffffffff7d00000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-00000000000000000000000000000000000000000000000000000020ffff
-ffffffffffffffffffffffffffffbe5024242485ffffff7550ffffffffff
-ffff5061ff5095ffffffffffff5061ffffffff9550ffffffffffffffffff
-9550ffff5095ffffff9561ffff247550243cb2ffffffff612424859561ff
-ffa13c50ffffffffffda50ce3c2450daffffffb23c2450ce50daffff50da
-ffff6195ffffffb23c242461ffffff6161ffffffffffffffffffffffff7d
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000caeffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff2485ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7d0000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-00000000000000000000000000000000000000000000000055ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff2485ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7d00000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-0000000000000cceffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff2485ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7d000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000040ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7d0000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000cceffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7d00000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000040ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7d000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-00000000000000000000000000000000000000000000000000000cceffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7d0000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-00000000000000000040ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d00000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000cceffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7d000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000
-0000000040ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff850810101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-101010101010101010101010101010101010101010101010101010101010
-10101010101010101010100c000000000cceffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffff6bebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebe
-bebebebebebebebebebebebebebebebebebebebebebebebe240000000040
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff300000000cceffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff3000000040ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff3000000cceffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff30000040ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff30
-000cceffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff300040ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff3000ceffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff3040ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff91deffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff
-currentdict /inputf undef
-currentdict /picstr undef
-currentdict /rpicstr undef
-currentdict /gpicstr undef
-currentdict /bpicstr undef
-grestore
-showpage
-%%Trailer
diff --git a/doc/bsp_howto/TERMIOSFlow.png b/doc/bsp_howto/TERMIOSFlow.png
deleted file mode 100644
index c72864ceeb..0000000000
--- a/doc/bsp_howto/TERMIOSFlow.png
+++ /dev/null
Binary files differ
diff --git a/doc/bsp_howto/adaintr.t b/doc/bsp_howto/adaintr.t
deleted file mode 100644
index 4433d454c0..0000000000
--- a/doc/bsp_howto/adaintr.t
+++ /dev/null
@@ -1,78 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Ada95 Interrupt Support
-
-@section Introduction
-
-This chapter describes what is required to enable Ada interrupt
-and error exception handling when using GNAT over RTEMS.
-
-The GNAT Ada95 interrupt support RTEMS was developed by
-Jiri Gaisler <jgais@@ws.estec.esa.nl> who also wrote this
-chapter.
-
-@section Mapping Interrupts to POSIX Signals
-
-In Ada95, interrupts can be attached with the interrupt_attach pragma.
-For most systems, the gnat run-time will use POSIX signal to implement
-the interrupt handling, mapping one signal per interrupt. For interrupts
-to be propagated to the attached Ada handler, the corresponding signal
-must be raised when the interrupt occurs.
-
-The same mechanism is used to generate Ada error exceptions.
-Three error exceptions are defined: program, constraint and storage
-error. These are generated by raising the predefined signals: SIGILL,
-SIGFPE and SIGSEGV. These signals should be raised when a spurious
-or erroneous trap occurs.
-
-To enable gnat interrupt and error exception support for a particular
-BSP, the following has to be done:
-
-@enumerate
-
-@item Write an interrupt/trap handler that will raise the corresponding
-signal depending on the interrupt/trap number.
-
-@item Install the interrupt handler for all interrupts/traps that will be
-handled by gnat (including spurious).
-
-@item At startup, gnat calls @code{__gnat_install_handler()}. The BSP
-must provide this function which installs the interrupt/trap handlers.
-
-@end enumerate
-
-Which CPU-interrupt will generate which signal is implementation
-defined. There are 32 POSIX signals (1 - 32), and all except the
-three error signals (SIGILL, SIGFPE and SIGSEGV) can be used. I
-would suggest to use the upper 16 (17 - 32) which do not
-have an assigned POSIX name.
-
-Note that the pragma interrupt_attach will only bind a signal
-to a particular Ada handler - it will not unmask the
-interrupt or do any other things to enable it. This have to be
-done separately, typically by writing various device register.
-
-@section Example Ada95 Interrupt Program
-
-An example program (@code{irq_test}) is included in the
-Ada examples package to show how interrupts can be handled
-in Ada95. Note that generation of the test interrupt
-(@code{irqforce.c}) is BSP specific and must be edited.
-
-NOTE: The @code{irq_test} example was written for the SPARC/ERC32
-BSP.
-
-@section Version Requirements
-
-With RTEMS 4.0, a patch was required to psignal.c in RTEMS
-sources (to correct a bug associated to the default action of
-signals 15-32). The SPARC/ERC32 RTEMS BSP includes the
-@code{gnatsupp} subdirectory that can be used as an example
-for other BSPs.
-
-With GNAT 3.11p, a patch is required for @code{a-init.c} to invoke
-the BSP specific routine that installs the exception handlers.
-
diff --git a/doc/bsp_howto/analog.t b/doc/bsp_howto/analog.t
deleted file mode 100644
index 094f4cbcd3..0000000000
--- a/doc/bsp_howto/analog.t
+++ /dev/null
@@ -1,163 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Analog Driver
-
-The Analog driver is responsible for providing an
-interface to Digital to Analog Converters (DACs) and
-Analog to Digital Converters (ADCs). The capabilities provided
-by this class of device driver are:
-
-@itemize @bullet
-@item Initialize an Analog Board
-@item Open a Particular Analog
-@item Close a Particular Analog
-@item Read from a Particular Analog
-@item Write to a Particular Analog
-@item Reset DACs
-@item Reinitialize DACS
-@end itemize
-
-Most analog devices are found on I/O cards that support multiple
-DACs or ADCs on a single card.
-
-There are currently no analog device drivers included in the
-RTEMS source tree. The information provided in this chapter
-is based on drivers developed for applications using RTEMS.
-It is hoped that this driver model information can form the
-basis for a standard analog driver model that can be supported
-in future RTEMS distribution.
-
-@section Major and Minor Numbers
-
-The @b{major} number of a device driver is its index in the
-RTEMS Device Address Table.
-
-A @b{minor} number is associated with each device instance
-managed by a particular device driver. An RTEMS minor number
-is an @code{unsigned32} entity. Convention calls for
-dividing the bits in the minor number down into categories
-like the following:
-
-@itemize @bullet
-
-@item @b{board} - indicates the board a particular device is located on
-@item @b{port} - indicates the particular device on a board.
-
-@end itemize
-
-From the above, it should be clear that a single device driver
-can support multiple copies of the same board in a single system.
-The minor number is used to distinguish the devices.
-
-@section Analog Driver Configuration
-
-There is not a standard analog driver configuration table but some
-fields are common across different drivers. The analog driver
-configuration table is typically an array of structures with each
-structure containing the information for a particular board.
-The following is a list of the type of information normally required
-to configure an analog board:
-
-@table @b
-@item board_offset
-is the base address of a board.
-
-@item DAC_initial_values
-is an array of the voltages that should be written to each DAC
-during initialization. This allows the driver to start the board
-in a known state.
-
-@end table
-
-@section Initialize an Analog Board
-
-At system initialization, the analog driver's initialization entry point
-will be invoked. As part of initialization, the driver will perform
-whatever board initialization is required and then set all
-outputs to their configured initial state.
-
-The analog driver may register a device name for each DAC and ADC in
-the system.
-
-@section Open a Particular Analog
-
-This is the driver open call. Usually this call does nothing other than
-validate the minor number.
-
-With some drivers, it may be necessary to allocate memory when a particular
-device is opened. If that is the case, then this is often the place
-to do this operation.
-
-@section Close a Particular Analog
-
-This is the driver close call. Usually this call does nothing.
-
-With some drivers, it may be necessary to allocate memory when a particular
-device is opened. If that is the case, then this is the place
-where that memory should be deallocated.
-
-@section Read from a Particular Analog
-
-This corresponds to the driver read call. After validating the minor
-number and arguments, this call reads the indicated device. Most analog
-devices store the last value written to a DAC. Since DACs are output
-only devices, saving the last written value gives the appearance that
-DACs can be read from also. If the device is an ADC, then it is sampled.
-
-@b{NOTE:} Many boards have multiple analog inputs but only one ADC. On
-these boards, it will be necessary to provide some type of mutual exclusion
-during reads. On these boards, there is a MUX which must be switched
-before sampling the ADC. After the MUX is switched, the driver must
-delay some short period of time (usually microseconds) before the
-signal is stable and can be sampled. To make matters worse, some ADCs
-cannot respond to wide voltage swings in a single sample. On these
-ADCs, one must do two samples when the voltage swing is too large.
-On a practical basis, this means that the driver usually ends up
-double sampling the ADC on these systems.
-
-The value returned is a single precision floating point number
-representing the voltage read. This value is stored in the
-@code{argument_block} passed in to the call. By returning the
-voltage, the caller is freed from having to know the number of
-bits in the analog and board dependent conversion algorithm.
-
-@section Write to a Particular Analog
-
-This corresponds to the driver write call. After validating the minor
-number and arguments, this call writes the indicated device. If the
-specified device is an ADC, then an error is usually returned.
-
-The value written is a single precision floating point number
-representing the voltage to be written to the specified DAC.
-This value is stored in the @code{argument_block} passed in to the
-call. By passing the voltage to the device driver, the caller is
-freed from having to know the number of bits in the analog
-and board dependent conversion algorithm.
-
-@section Reset DACs
-
-This is one of the IOCTL functions supported by the I/O control
-device driver entry point. When this IOCTL function is invoked,
-all of the DACs are written to 0.0 volts.
-
-@section Reinitialize DACS
-
-This is one of the IOCTL functions supported by the I/O control
-device driver entry point. When this IOCTL function is invoked,
-all of the DACs are written with the initial value configured
-for this device.
-
-@section Get Last Written Values
-
-This is one of the IOCTL functions supported by the I/O control
-device driver entry point. When this IOCTL function is invoked,
-the following information is returned to the caller:
-
-@itemize @bullet
-@item last value written to the specified DAC
-@item timestamp of when the last write was performed
-@end itemize
-
diff --git a/doc/bsp_howto/ata.t b/doc/bsp_howto/ata.t
deleted file mode 100644
index 38b36b9c44..0000000000
--- a/doc/bsp_howto/ata.t
+++ /dev/null
@@ -1,196 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter ATA Driver
-
-@section Terms
-
-ATA device - physical device attached to an IDE controller
-
-@section Introduction
-
-ATA driver provides generic interface to an ATA device. ATA driver is
-hardware independent implementation of ATA standard defined in working draft
-"AT Attachment Interface with Extensions (ATA-2)" X3T10/0948D revision 4c,
-March 18, 1996. ATA Driver based on IDE Controller Driver and may be used for
-computer systems with single IDE controller and with multiple as well. Although
-current implementation has several restrictions detailed below ATA driver
-architecture allows easily extend the driver. Current restrictions are:
-
-@itemize @bullet
-@item Only mandatory (see draft p.29) and two optional (READ/WRITE MULTIPLE)
-commands are implemented
-@item Only PIO mode is supported but both poll and interrupt driven
-@end itemize
-
-The reference implementation for ATA driver can be found in
-@code{cpukit/libblock/src/ata.c}.
-
-@section Initialization
-
-The @code{ata_initialize} routine is responsible for ATA driver
-initialization. The main goal of the initialization is to detect and
-register in the system all ATA devices attached to IDE controllers
-successfully initialized by the IDE Controller driver.
-
-In the implementation of the driver, the following actions are performed:
-
-@example
-@group
-rtems_device_driver ata_initialize(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void *arg
-)
-@{
- initialize internal ATA driver data structure
-
- for each IDE controller successfully initialized by the IDE Controller
- driver
- if the controller is interrupt driven
- set up interrupt handler
-
- obtain information about ATA devices attached to the controller
- with help of EXECUTE DEVICE DIAGNOSTIC command
-
- for each ATA device detected on the controller
- obtain device parameters with help of DEVICE IDENTIFY command
-
- register new ATA device as new block device in the system
-@}
-@end group
-@end example
-
-Special processing of ATA commands is required because of absence of
-multitasking environment during the driver initialization.
-
-Detected ATA devices are registered in the system as physical block devices
-(see libblock library description). Device names are formed based on IDE
-controller minor number device is attached to and device number on the
-controller (0 - Master, 1 - Slave). In current implementation 64 minor
-numbers are reserved for each ATA device which allows to support up to 63
-logical partitions per device.
-
-@example
-@group
-controller minor device number device name ata device minor
- 0 0 hda 0
- 0 1 hdb 64
- 1 0 hdc 128
- 1 1 hdd 172
- ... ... ...
-@end group
-@end example
-
-@section ATA Driver Architecture
-
-@subsection ATA Driver Main Internal Data Structures
-
-ATA driver works with ATA requests. ATA request is described by the
-following structure:
-
-@example
-@group
-/* ATA request */
-typedef struct ata_req_s @{
- Chain_Node link; /* link in requests chain */
- char type; /* request type */
- ata_registers_t regs; /* ATA command */
- uint32_t cnt; /* Number of sectors to be exchanged */
- uint32_t cbuf; /* number of current buffer from breq in use */
- uint32_t pos; /* current position in 'cbuf' */
- blkdev_request *breq; /* blkdev_request which corresponds to the
- * ata request
- */
- rtems_id sema; /* semaphore which is used if synchronous
- * processing of the ata request is required
- */
- rtems_status_code status; /* status of ata request processing */
- int error; /* error code */
-@} ata_req_t;
-@end group
-@end example
-
-ATA driver supports separate ATA requests queues for each IDE
-controller (one queue per controller). The following structure contains
-information about controller's queue and devices attached to the controller:
-
-@example
-@group
-/*
- * This structure describes controller state, devices configuration on the
- * controller and chain of ATA requests to the controller.
- */
-typedef struct ata_ide_ctrl_s @{
- bool present; /* controller state */
- ata_dev_t device[2]; /* ata devices description */
- Chain_Control reqs; /* requests chain */
-@} ata_ide_ctrl_t;
-@end group
-@end example
-
-Driver uses array of the structures indexed by the controllers minor
-number.
-
-The following structure allows to map an ATA device to the pair (IDE
-controller minor number device is attached to, device number
-on the controller):
-
-@example
-@group
-/*
- * Mapping of rtems ATA devices to the following pairs:
- * (IDE controller number served the device, device number on the controller)
- */
-typedef struct ata_ide_dev_s @{
- int ctrl_minor;/* minor number of IDE controller serves rtems ATA device */
- int device; /* device number on IDE controller (0 or 1) */
-@} ata_ide_dev_t;
-@end group
-@end example
-
-Driver uses array of the structures indexed by the ATA devices minor
-number.
-
-ATA driver defines the following internal events:
-
-@example
-@group
-/* ATA driver events */
-typedef enum ata_msg_type_s @{
- ATA_MSG_GEN_EVT = 1, /* general event */
- ATA_MSG_SUCCESS_EVT, /* success event */
- ATA_MSG_ERROR_EVT, /* error event */
- ATA_MSG_PROCESS_NEXT_EVT /* process next ata request event */
-@} ata_msg_type_t;
-@end group
-@end example
-
-@subsection Brief ATA Driver Core Overview
-
-All ATA driver functionality is available via ATA driver ioctl. Current
-implementation supports only two ioctls: BLKIO_REQUEST and
-ATAIO_SET_MULTIPLE_MODE. Each ATA driver ioctl() call generates an
-ATA request which is appended to the appropriate controller queue depending
-on ATA device the request belongs to. If appended request is single request in
-the controller's queue then ATA driver event is generated.
-
-ATA driver task which manages queue of ATA driver events is core of ATA
-driver. In current driver version queue of ATA driver events implemented
-as RTEMS message queue. Each message contains event type, IDE controller
-minor number on which event happened and error if an error occurred. Events
-may be generated either by ATA driver ioctl call or by ATA driver task itself.
-Each time ATA driver task receives an event it gets controller minor number
-from event, takes first ATA request from controller queue and processes it
-depending on request and event types. An ATA request processing may also
-includes sending of several events. If ATA request processing is finished
-the ATA request is removed from the controller queue. Note, that in current
-implementation maximum one event per controller may be queued at any moment
-of the time.
-
-(This part seems not very clear, hope I rewrite it soon)
-
-
-
diff --git a/doc/bsp_howto/bsp_howto.texi b/doc/bsp_howto/bsp_howto.texi
deleted file mode 100644
index 959363aa58..0000000000
--- a/doc/bsp_howto/bsp_howto.texi
+++ /dev/null
@@ -1,121 +0,0 @@
-\input texinfo @c -*-texinfo-*-
-@c %**start of header
-@setfilename bsp_howto.info
-@setcontentsaftertitlepage
-@syncodeindex vr fn
-@synindex ky cp
-@paragraphindent 0
-@c %**end of header
-
-@c
-@c COPYRIGHT (c) 1989-2013.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@c
-@c Master file for the Getting Started (C) Guide
-@c
-
-@include version.texi
-@include common/setup.texi
-@include common/rtems.texi
-
-@ifset use-ascii
-@dircategory RTEMS On-Line Manual
-@direntry
-* RTEMS BSP-Howto: (bsp_howto). BSP and Device Driver Development Guide.
-@end direntry
-@end ifset
-
-@c
-@c Title Page Stuff
-@c
-
-@c
-@c I don't really like having a short title page. --joel
-@c
-@c @shorttitlepage BSP and Device Driver Development Guide
-
-@setchapternewpage odd
-@settitle BSP and Device Driver Development Guide
-@titlepage
-@finalout
-
-@title BSP and Device Driver Development Guide
-@subtitle Edition @value{EDITION}, for @value{VERSION}
-@sp 1
-@subtitle @value{UPDATED}
-@author On-Line Applications Research Corporation
-@page
-@include common/cpright.texi
-@end titlepage
-
-@c This prevents a black box from being printed on "overflow" lines.
-@c The alternative is to rework a sentence to avoid this problem.
-
-@contents
-
-@ifnottex
-@node Top, Introduction, (dir), (dir)
-@top RTEMS BSP and Device Driver Development Guide
-
-@menu
-* Introduction::
-* Target Dependent Files::
-* Makefiles::
-* Linker Script::
-* Miscellaneous Support Files::
-* Ada95 Interrupt Support::
-* Initialization Code::
-* Console Driver::
-* Clock Driver::
-* Timer Driver::
-* Real-Time Clock Driver::
-* ATA Driver::
-* IDE Controller Driver::
-* Networking Driver::
-* Non-Volatile Memory Driver::
-* Shared Memory Support Driver::
-* Frame Buffer Driver::
-* Analog Driver::
-* Discrete Driver::
-* Command and Variable Index::
-* Concept Index::
-@end menu
-@end ifnottex
-
-@include intro.texi
-@include target.texi
-@include makefiles.texi
-@include linkcmds.texi
-@include support.texi
-@include adaintr.texi
-@include init.texi
-@include console.texi
-@include clock.texi
-@include timer.texi
-@include rtc.texi
-@include ata.texi
-@include ide-ctrl.texi
-@include nvmem.texi
-@include network.texi
-@include shmsupp.texi
-@include framebuffer.texi
-@include analog.texi
-@include discrete.texi
-
-@node Command and Variable Index, Concept Index, , Top
-@unnumbered Command and Variable Index
-
-There are currently no Command and Variable Index entries.
-
-@c @printindex fn
-
-@node Concept Index, , Command and Variable Index, Top
-@unnumbered Concept Index
-
-There are currently no Concept Index entries.
-@c @printindex cp
-
-@bye
-
diff --git a/doc/bsp_howto/clock.t b/doc/bsp_howto/clock.t
deleted file mode 100644
index 2891bb2807..0000000000
--- a/doc/bsp_howto/clock.t
+++ /dev/null
@@ -1,299 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Clock Driver
-
-@section Introduction
-
-The purpose of the clock driver is to provide two services for the operating
-system.
-@itemize @bullet
-@item A steady time basis to the kernel, so that the RTEMS primitives that need
-a clock tick work properly. See the @cite{Clock Manager} chapter of the
-@cite{RTEMS Application C User's Guide} for more details.
-@item An optional time counter to generate timestamps of the uptime and wall
-clock time.
-@end itemize
-
-The clock driver is usually located in the @file{clock} directory of the BSP.
-Clock drivers should use the @dfn{Clock Driver Shell} available via the
-@file{clockdrv_shell.h} include file.
-
-@section Clock Driver Shell
-
-The @dfn{Clock Driver Shell} include file defines the clock driver functions
-declared in @code{#include <rtems/clockdrv.h>} which are used by RTEMS
-configuration file @code{#include <rtems/confdefs.h>}. In case the application
-configuration defines @code{#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER},
-then the clock driver is registered and should provide its services to the
-operating system. A hardware specific clock driver must provide some
-functions, defines and macros for the @dfn{Clock Driver Shell} which are
-explained here step by step. A clock driver file looks in general like this.
-
-@example
-/*
- * A section with functions, defines and macros to provide hardware specific
- * functions for the Clock Driver Shell.
- */
-
-#include "../../../shared/clockdrv_shell.h"
-@end example
-
-@subsection Initialization
-
-Depending on the hardware capabilities one out of three clock driver variants
-must be selected.
-@itemize @bullet
-@item The most basic clock driver provides only a periodic interrupt service
-routine which calls @code{rtems_clock_tick()}. The interval is determined by
-the application configuration via @code{#define
-CONFIGURE_MICROSECONDS_PER_TICK} and can be obtained via
-@code{rtems_configuration_get_microseconds_per_tick()}. The timestamp
-resolution is limited to the clock tick interval.
-@item In case the hardware lacks support for a free running counter, then the
-module used for the clock tick may provide support for timestamps with a
-resolution below the clock tick interval. For this so called simple
-timecounters can be used.
-@item The desired variant uses a free running counter to provide accurate
-timestamps. This variant is mandatory on SMP configurations.
-@end itemize
-
-@subsubsection Clock Tick Only Variant
-
-@example
-static void some_support_initialize_hardware( void )
-@{
- /* Initialize hardware */
-@}
-
-#define Clock_driver_support_initialize_hardware() \
- some_support_initialize_hardware()
-
-/* Indicate that this clock driver lacks a proper timecounter in hardware */
-#define CLOCK_DRIVER_USE_DUMMY_TIMECOUNTER
-
-#include "../../../shared/clockdrv_shell.h"
-@end example
-
-@subsubsection Simple Timecounter Variant
-
-@example
-#include <rtems/timecounter.h>
-
-static rtems_timecounter_simple some_tc;
-
-static uint32_t some_tc_get( rtems_timecounter_simple *tc )
-@{
- return some.counter;
-@}
-
-static void some_tc_at_tick( rtems_timecounter_simple *tc )
-@{
- /*
- * Do work necessary at the clock tick interrupt, e.g. clear a pending flag.
- */
-@}
-
-static bool some_tc_is_pending( rtems_timecounter_simple *tc )
-@{
- return some.is_pending;
-@}
-
-static uint32_t some_tc_get_timecount( struct timecounter *tc )
-@{
- return rtems_timecounter_simple_downcounter_get(
- tc,
- some_tc_get,
- some_tc_is_pending
- );
-@}
-
-static void some_tc_tick( void )
-@{
- rtems_timecounter_simple_downcounter_tick(
- &some_tc,
- some_tc_get,
- some_tc_at_tick
- );
-@}
-
-static void some_support_initialize_hardware( void )
-@{
- uint32_t frequency = 123456;
- uint64_t us_per_tick = rtems_configuration_get_microseconds_per_tick();
- uint32_t timecounter_ticks_per_clock_tick =
- ( frequency * us_per_tick ) / 1000000;
-
- /* Initialize hardware */
-
- rtems_timecounter_simple_install(
- &some_tc,
- frequency,
- timecounter_ticks_per_clock_tick,
- some_tc_get_timecount
- );
-@}
-
-#define Clock_driver_support_initialize_hardware() \
- some_support_initialize_hardware()
-
-#define Clock_driver_timecounter_tick() \
- some_tc_tick()
-
-#include "../../../shared/clockdrv_shell.h"
-@end example
-
-@subsubsection Timecounter Variant
-
-This variant is preferred since it is the most efficient and yields the most
-accurate timestamps. It is also mandatory on SMP configurations to obtain
-valid timestamps. The hardware must provide a periodic interrupt to service
-the clock tick and a free running counter for the timecounter. The free
-running counter must have a power of two period. The @code{tc_counter_mask}
-must be initialized to the free running counter period minus one, e.g. for a
-32-bit counter this is 0xffffffff. The @code{tc_get_timecount} function must
-return the current counter value (the counter values must increase, so if the
-counter counts down, a conversion is necessary). Use
-@code{RTEMS_TIMECOUNTER_QUALITY_CLOCK_DRIVER} for the @code{tc_quality}. Set
-@code{tc_frequency} to the frequency of the free running counter in Hz. All
-other fields of the @code{struct timecounter} must be zero initialized.
-Install the initialized timecounter via @code{rtems_timecounter_install()}.
-
-@example
-#include <rtems/timecounter.h>
-
-static struct timecounter some_tc;
-
-static uint32_t some_tc_get_timecount( struct timecounter *tc )
-@{
- some.free_running_counter;
-@}
-
-static void some_support_initialize_hardware( void )
-@{
- uint64_t us_per_tick = rtems_configuration_get_microseconds_per_tick();
- uint32_t frequency = 123456;
-
- /*
- * The multiplication must be done in 64-bit arithmetic to avoid an integer
- * overflow on targets with a high enough counter frequency.
- */
- uint32_t interval = (uint32_t) ( ( frequency * us_per_tick ) / 1000000 );
-
- /*
- * Initialize hardware and set up a periodic interrupt for the configuration
- * based interval.
- */
-
- some_tc.tc_get_timecount = some_tc_get_timecount;
- some_tc.tc_counter_mask = 0xffffffff;
- some_tc.tc_frequency = frequency;
- some_tc.tc_quality = RTEMS_TIMECOUNTER_QUALITY_CLOCK_DRIVER;
- rtems_timecounter_install( &some_tc );
-@}
-
-#define Clock_driver_support_initialize_hardware() \
- some_support_initialize_hardware()
-
-#include "../../../shared/clockdrv_shell.h"
-@end example
-
-@subsection Install Clock Tick Interrupt Service Routine
-
-The clock driver must provide a function to install the clock tick interrupt
-service routine via @code{Clock_driver_support_install_isr()}.
-
-@example
-#include <bsp/irq.h>
-#include <bsp/fatal.h>
-
-static void some_support_install_isr( rtems_interrupt_handler isr )
-@{
- rtems_status_code sc;
-
- sc = rtems_interrupt_handler_install(
- SOME_IRQ,
- "Clock",
- RTEMS_INTERRUPT_UNIQUE,
- isr,
- NULL
- );
- if ( sc != RTEMS_SUCCESSFUL ) @{
- bsp_fatal( SOME_FATAL_IRQ_INSTALL );
- @}
-@}
-
-#define Clock_driver_support_install_isr( isr, old ) \
- some_support_install_isr( isr )
-
-#include "../../../shared/clockdrv_shell.h"
-@end example
-
-@subsection Support At Tick
-
-The hardware specific support at tick is specified by
-@code{Clock_driver_support_at_tick()}.
-
-@example
-static void some_support_at_tick( void )
-@{
- /* Clear interrupt */
-@}
-
-#define Clock_driver_support_at_tick() \
- some_support_at_tick()
-
-#include "../../../shared/clockdrv_shell.h"
-@end example
-
-@subsection System Shutdown Support
-
-The @dfn{Clock Driver Shell} provides the routine @code{Clock_exit()} that is
-scheduled to be run during system shutdown via the @code{atexit()} routine.
-The hardware specific shutdown support is specified by
-@code{Clock_driver_support_shutdown_hardware()} which is used by
-@code{Clock_exit()}. It should disable the clock tick source if it was
-enabled. This can be used to prevent clock ticks after the system is shutdown.
-
-@example
-static void some_support_shutdown_hardware( void )
-@{
- /* Shutdown hardware */
-@}
-
-#define Clock_driver_support_shutdown_hardware() \
- some_support_shutdown_hardware()
-
-#include "../../../shared/clockdrv_shell.h"
-@end example
-
-@subsection Multiple Clock Driver Ticks Per Clock Tick
-
-In case the hardware needs more than one clock driver tick per clock tick (e.g.
-due to a limited range of the hardware timer), then this can be specified with
-the optional @code{#define CLOCK_DRIVER_ISRS_PER_TICK} and @code{#define
-CLOCK_DRIVER_ISRS_PER_TICK_VALUE} defines. This is currently used only for x86
-and it hopefully remains that way.
-
-@example
-/* Enable multiple clock driver ticks per clock tick */
-#define CLOCK_DRIVER_ISRS_PER_TICK 1
-
-/* Specifiy the clock driver ticks per clock tick value */
-#define CLOCK_DRIVER_ISRS_PER_TICK_VALUE 123
-
-#include "../../../shared/clockdrv_shell.h"
-@end example
-
-@subsection Clock Driver Ticks Counter
-
-The @dfn{Clock Driver Shell} provide a global variable that is simply a count
-of the number of clock driver interrupt service routines that have occurred.
-This information is valuable when debugging a system. This variable is
-declared as follows:
-
-@example
-volatile uint32_t Clock_driver_ticks;
-@end example
diff --git a/doc/bsp_howto/console.t b/doc/bsp_howto/console.t
deleted file mode 100644
index 687ecda1a7..0000000000
--- a/doc/bsp_howto/console.t
+++ /dev/null
@@ -1,645 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2008.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Console Driver
-
-@section Introduction
-
-This chapter describes the operation of a console driver using
-the RTEMS POSIX Termios support. Traditionally RTEMS has referred
-to all serial device drivers as console device drivers. A
-console driver can be used to do raw data processing in addition
-to the "normal" standard input and output device functions required
-of a console.
-
-The serial driver may be called as the consequence of a C Library
-call such as @code{printf} or @code{scanf} or directly via the
-@code{read} or @code{write} system calls.
-There are two main functioning modes:
-
-@itemize @bullet
-
-@item console: formatted input/output, with special characters (end of
-line, tabulations, etc.) recognition and processing,
-
-@item raw: permits raw data processing.
-
-@end itemize
-
-One may think that two serial drivers are needed to handle these two types
-of data, but Termios permits having only one driver.
-
-@section Termios
-
-Termios is a standard for terminal management, included in the POSIX
-1003.1b standard. As part of the POSIX and Open Group Single UNIX
-Specification, is commonly provided on UNIX implementations. The
-Open Group has the termios portion of the POSIX standard online
-at @uref{http://opengroup.org/onlinepubs/007908775/xbd/termios.html
-,http://opengroup.org/onlinepubs/007908775/xbd/termios.html}.
-The requirements for the @code{<termios.h>} file are also provided
-and are at @uref{http://opengroup.org/onlinepubs/007908775/xsh/termios.h.html,
-http://opengroup.org/onlinepubs/007908775/xsh/termios.h.html}.
-
-Having RTEMS support for Termios is beneficial because:
-
-@itemize @bullet
-
-@item from the user's side because it provides standard primitive operations
-to access the terminal and change configuration settings. These operations
-are the same under UNIX and RTEMS.
-
-@item from the BSP developer's side because it frees the
-developer from dealing with buffer states and mutual exclusions on them.
-Early RTEMS console device drivers also did their own special
-character processing.
-
-@item it is part of an internationally recognized standard.
-
-@item it makes porting code from other environments easier.
-
-@end itemize
-
-Termios support includes:
-
-@itemize @bullet
-
-@item raw and console handling,
-
-@item blocking or non-blocking characters receive, with or without
-Timeout.
-
-@end itemize
-
-At this time, RTEMS documentation does not include a thorough discussion
-of the Termios functionality. For more information on Termios,
-type @code{man termios} on a Unix box or point a web browser
-at
-@uref{http://www.freebsd.org/cgi/man.cgi}.
-
-@section Driver Functioning Modes
-
-There are generally three main functioning modes for an UART (Universal
-Asynchronous Receiver-Transmitter, i.e. the serial chip):
-
-@itemize @bullet
-
-@item polled mode
-@item interrupt driven mode
-@item task driven mode
-
-@end itemize
-
-In polled mode, the processor blocks on sending/receiving characters.
-This mode is not the most efficient way to utilize the UART. But
-polled mode is usually necessary when one wants to print an
-error message in the event of a fatal error such as a fatal error
-in the BSP. This is also the simplest mode to
-program. Polled mode is generally preferred if the serial port is
-to be used primarily as a debug console. In a simple polled driver,
-the software will continuously check the status of the UART when
-it is reading or writing to the UART. Termios improves on this
-by delaying the caller for 1 clock tick between successive checks
-of the UART on a read operation.
-
-In interrupt driven mode, the processor does not block on sending/receiving
-characters. Data is buffered between the interrupt service routine
-and application code. Two buffers are used to insulate the application
-from the relative slowness of the serial device. One of the buffers is
-used for incoming characters, while the other is used for outgoing characters.
-
-An interrupt is raised when a character is received by the UART.
-The interrupt subroutine places the incoming character at the end
-of the input buffer. When an application asks for input,
-the characters at the front of the buffer are returned.
-
-When the application prints to the serial device, the outgoing characters
-are placed at the end of the output buffer. The driver will place
-one or more characters in the UART (the exact number depends on the UART)
-An interrupt will be raised when all the characters have been transmitted.
-The interrupt service routine has to send the characters
-remaining in the output buffer the same way. When the transmitting side
-of the UART is idle, it is typically necessary to prime the transmitter
-before the first interrupt will occur.
-
-The task driven mode is similar to interrupt driven mode, but the actual data
-processing is done in dedicated tasks instead of interrupt routines.
-
-@section Serial Driver Functioning Overview
-
-The following Figure shows how a Termios driven serial driver works:
-
-@ifset use-ascii
-@center Figure not included in ASCII version
-@end ifset
-
-@ifset use-tex
-@sp1
-@center{@image{TERMIOSFlow,,6in}}
-@end ifset
-
-@ifset use-html
-@html
-<P ALIGN="center"><IMG SRC="TERMIOSFlow.png" ALT="Termios Flow"></P>
-@end html
-@end ifset
-
-The following list describes the basic flow.
-
-@itemize @bullet
-
-@item the application programmer uses standard C library call (printf,
-scanf, read, write, etc.),
-
-@item C library (ctx.g. RedHat (formerly Cygnus) Newlib) calls
-the RTEMS system call interface. This code can be found in the
-@file{cpukit/libcsupport/src} directory.
-
-@item Glue code calls the serial driver entry routines.
-
-@end itemize
-
-@subsection Basics
-
-The low-level driver API changed between RTEMS 4.10 and RTEMS 4.11. The legacy
-callback API is still supported, but its use is discouraged. The following
-functions are deprecated:
-
-@itemize @bullet
-
-@item @code{rtems_termios_open()} - use @code{rtems_termios_device_open()} in
-combination with @code{rtems_termios_device_install()} instead.
-
-@item @code{rtems_termios_close()} - use @code{rtems_termios_device_close()}
-instead.
-
-@end itemize
-
-This manual describes the new API. A new console driver should consist of
-three parts.
-
-@enumerate
-
-@item The basic console driver functions using the Termios support. Add this
-the BSPs Makefile.am:
-
-@example
-@group
-[...]
-libbsp_a_SOURCES += ../../shared/console-termios.c
-[...]
-@end group
-@end example
-
-@item A general serial module specific low-level driver providing the handler
-table for the Termios @code{rtems_termios_device_install()} function. This
-low-level driver could be used for more than one BSP.
-
-@item A BSP specific initialization routine @code{console_initialize()}, that
-calls @code{rtems_termios_device_install()} providing a low-level driver
-context for each installed device.
-
-@end enumerate
-
-You need to provide a device handler structure for the Termios device
-interface. The functions are described later in this chapter. The first open
-and set attributes handler return a boolean status to indicate success (true)
-or failure (false). The polled read function returns an unsigned character in
-case one is available or minus one otherwise.
-
-If you want to use polled IO it should look like the following. Termios must
-be told the addresses of the handler that are to be used for simple character
-IO, i.e. pointers to the @code{my_driver_poll_read()} and
-@code{my_driver_poll_write()} functions described later in @ref{Console Driver
-Termios and Polled IO}.
-
-@example
-@group
-const rtems_termios_handler my_driver_handler_polled = @{
- .first_open = my_driver_first_open,
- .last_close = my_driver_last_close,
- .poll_read = my_driver_poll_read,
- .write = my_driver_poll_write,
- .set_attributes = my_driver_set_attributes,
- .stop_remote_tx = NULL,
- .start_remote_tx = NULL,
- .mode = TERMIOS_POLLED
-@}
-@end group
-@end example
-
-For an interrupt driven implementation you need the following. The driver
-functioning is quite different in this mode. There is no device driver read
-handler to be passed to Termios. Indeed a @code{console_read()} call returns the
-contents of Termios input buffer. This buffer is filled in the driver
-interrupt subroutine, see also @ref{Console Driver Termios and Interrupt Driven
-IO}. The driver is responsible for providing a pointer to the
-@code{my_driver_interrupt_write()} function.
-
-@example
-@group
-const rtems_termios_handler my_driver_handler_interrupt = @{
- .first_open = my_driver_first_open,
- .last_close = my_driver_last_close,
- .poll_read = NULL,
- .write = my_driver_interrupt_write,
- .set_attributes = my_driver_set_attributes,
- .stopRemoteTx = NULL,
- .stop_remote_tx = NULL,
- .start_remote_tx = NULL,
- .mode = TERMIOS_IRQ_DRIVEN
-@};
-@end group
-@end example
-
-You can also provide hander for remote transmission control. This
-is not covered in this manual, so they are set to @code{NULL} in the above
-examples.
-
-The low-level driver should provide a data structure for its device context.
-The initialization routine must provide a context for each installed device via
-@code{rtems_termios_device_install()}. For simplicity of the console
-initialization example the device name is also present. Her is an example header file.
-
-@example
-@group
-#ifndef MY_DRIVER_H
-#define MY_DRIVER_H
-
-#include <rtems/termiostypes.h>
-
-#include <some-chip-header.h>
-
-/* Low-level driver specific data structure */
-typedef struct @{
- rtems_termios_device_context base;
- const char *device_name;
- volatile module_register_block *regs;
- /* More stuff */
-@} my_driver_context;
-
-extern const rtems_termios_handler my_driver_handler_polled;
-
-extern const rtems_termios_handler my_driver_handler_interrupt;
-
-#endif /* MY_DRIVER_H */
-@end group
-@end example
-
-@subsection Termios and Polled IO
-
-The following handler are provided by the low-level driver and invoked by
-Termios for simple character IO.
-
-The @code{my_driver_poll_write()} routine is responsible for writing @code{n}
-characters from @code{buf} to the serial device specified by @code{tty}.
-
-@example
-@group
-static void my_driver_poll_write(
- rtems_termios_device_context *base,
- const char *buf,
- size_t n
-)
-@{
- my_driver_context *ctx = (my_driver_context *) base;
- size_t i;
-
- /* Write */
- for (i = 0; i < n; ++i) @{
- my_driver_write_char(ctx, buf[i]);
- @}
-@}
-@end group
-@end example
-
-The @code{my_driver_poll_read} routine is responsible for reading a single
-character from the serial device specified by @code{tty}. If no character is
-available, then the routine should return minus one.
-
-@example
-@group
-static int my_driver_poll_read(rtems_termios_device_context *base)
-@{
- my_driver_context *ctx = (my_driver_context *) base;
-
- /* Check if a character is available */
- if (my_driver_can_read_char(ctx)) @{
- /* Return the character */
- return my_driver_read_char(ctx);
- @} else @{
- /* Return an error status */
- return -1;
- @}
-@}
-@end group
-@end example
-
-@subsection Termios and Interrupt Driven IO
-
-The UART generally generates interrupts when it is ready to accept or to emit a
-number of characters. In this mode, the interrupt subroutine is the core of
-the driver.
-
-The @code{my_driver_interrupt_handler()} is responsible for processing
-asynchronous interrupts from the UART. There may be multiple interrupt
-handlers for a single UART. Some UARTs can generate a unique interrupt vector
-for each interrupt source such as a character has been received or the
-transmitter is ready for another character.
-
-In the simplest case, the @code{my_driver_interrupt_handler()} will have to check
-the status of the UART and determine what caused the interrupt. The following
-describes the operation of an @code{my_driver_interrupt_handler} which has to
-do this:
-
-@example
-@group
-static void my_driver_interrupt_handler(
- rtems_vector_number vector,
- void *arg
-)
-@{
- rtems_termios_tty *tty = arg;
- my_driver_context *ctx = rtems_termios_get_device_context(tty);
- char buf[N];
- size_t n;
-
- /*
- * Check if we have received something. The function reads the
- * received characters from the device and stores them in the
- * buffer. It returns the number of read characters.
- */
- n = my_driver_read_received_chars(ctx, buf, N);
- if (n > 0) @{
- /* Hand the data over to the Termios infrastructure */
- rtems_termios_enqueue_raw_characters(tty, buf, n);
- @}
-
- /*
- * Check if we have something transmitted. The functions returns
- * the number of transmitted characters since the last write to the
- * device.
- */
- n = my_driver_transmitted_chars(ctx);
- if (n > 0) @{
- /*
- * Notify Termios that we have transmitted some characters. It
- * will call now the interrupt write function if more characters
- * are ready for transmission.
- */
- rtems_termios_dequeue_characters(tty, n);
- @}
-@}
-@end group
-@end example
-
-The @code{my_driver_interrupt_write()} function is responsible for telling the
-device that the @code{n} characters at @code{buf} are to be transmitted. It
-the value @code{n} is zero to indicate that no more characters are to send.
-The driver can disable the transmit interrupts now. This routine is invoked
-either from task context with disabled interrupts to start a new transmission
-process with exactly one character in case of an idle output state or from the
-interrupt handler to refill the transmitter. If the routine is invoked to
-start the transmit process the output state will become busy and Termios starts
-to fill the output buffer. If the transmit interrupt arises before Termios was
-able to fill the transmit buffer you will end up with one interrupt per
-character.
-
-@example
-@group
-static void my_driver_interrupt_write(
- rtems_termios_device_context *base,
- const char *buf,
- size_t n
-)
-@{
- my_driver_context *ctx = (my_driver_context *) base;
-
- /*
- * Tell the device to transmit some characters from buf (less than
- * or equal to n). When the device is finished it should raise an
- * interrupt. The interrupt handler will notify Termios that these
- * characters have been transmitted and this may trigger this write
- * function again. You may have to store the number of outstanding
- * characters in the device data structure.
- */
-
- /*
- * Termios will set n to zero to indicate that the transmitter is
- * now inactive. The output buffer is empty in this case. The
- * driver may disable the transmit interrupts now.
- */
-@}
-@end group
-@end example
-
-@subsection Initialization
-
-The BSP specific driver initialization is called once during the RTEMS
-initialization process.
-
-The @code{console_initialize()} function may look like this:
-
-@example
-@group
-#include <my-driver.h>
-#include <rtems/console.h>
-#include <bsp.h>
-#include <bsp/fatal.h>
-
-static my_driver_context driver_context_table[M] = @{ /* Some values */ @};
-
-rtems_device_driver console_initialize(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void *arg
-)
-@{
- rtems_status_code sc;
-#ifdef SOME_BSP_USE_INTERRUPTS
- const rtems_termios_handler *handler = &my_driver_handler_interrupt;
-#else
- const rtems_termios_handler *handler = &my_driver_handler_polled;
-#endif
-
- /*
- * Initialize the Termios infrastructure. If Termios has already
- * been initialized by another device driver, then this call will
- * have no effect.
- */
- rtems_termios_initialize();
-
- /* Initialize each device */
- for (
- minor = 0;
- minor < RTEMS_ARRAY_SIZE(driver_context_table);
- ++minor
- ) @{
- my_driver_context *ctx = &driver_context_table[minor];
-
- /*
- * Install this device in the file system and Termios. In order
- * to use the console (i.e. being able to do printf, scanf etc.
- * on stdin, stdout and stderr), one device must be registered as
- * "/dev/console" (CONSOLE_DEVICE_NAME).
- */
- sc = rtems_termios_device_install(
- ctx->device_name,
- major,
- minor,
- handler,
- NULL,
- ctx
- );
- if (sc != RTEMS_SUCCESSFUL) @{
- bsp_fatal(SOME_BSP_FATAL_CONSOLE_DEVICE_INSTALL);
- @}
- @}
-
- return RTEMS_SUCCESSFUL;
-@}
-@end group
-@end example
-
-@subsection Opening a serial device
-
-The @code{console_open()} function provided by @file{console-termios.c} is
-called whenever a serial device is opened. The device registered as
-@code{"/dev/console"} (@code{CONSOLE_DEVICE_NAME}) is opened automatically
-during RTEMS initialization. For instance, if UART channel 2 is registered as
-@code{"/dev/tty1"}, the @code{console_open()} entry point will be called as the
-result of an @code{fopen("/dev/tty1", mode)} in the application.
-
-During the first open of the device Termios will call the
-@code{my_driver_first_open()} handler.
-
-@example
-@group
-static bool my_driver_first_open(
- rtems_termios_tty *tty,
- rtems_termios_device_context *base,
- struct termios *term,
- rtems_libio_open_close_args_t *args
-)
-@{
- my_driver_context *ctx = (my_driver_context *) base;
- rtems_status_code sc;
- bool ok;
-
- /*
- * You may add some initialization code here.
- */
-
- /*
- * Sets the initial baud rate. This should be set to the value of
- * the boot loader. This function accepts only exact Termios baud
- * values.
- */
- sc = rtems_termios_set_initial_baud(tty, MY_DRIVER_BAUD_RATE);
- if (sc != RTEMS_SUCCESSFUL) @{
- /* Not a valid Termios baud */
- @}
-
- /*
- * Alternatively you can set the best baud.
- */
- rtems_termios_set_best_baud(term, MY_DRIVER_BAUD_RATE);
-
- /*
- * To propagate the initial Termios attributes to the device use
- * this.
- */
- ok = my_driver_set_attributes(base, term);
- if (!ok) @{
- /* This is bad */
- @}
-
- /*
- * Return true to indicate a successful set attributes, and false
- * otherwise.
- */
- return true;
-@}
-@end group
-@end example
-
-@subsection Closing a Serial Device
-
-The @code{console_close()} provided by @file{console-termios.c} is invoked when
-the serial device is to be closed. This entry point corresponds to the device
-driver close entry point.
-
-Termios will call the @code{my_driver_last_close()} handler if the last close
-happens on the device.
-@example
-@group
-static void my_driver_last_close(
- rtems_termios_tty *tty,
- rtems_termios_device_context *base,
- rtems_libio_open_close_args_t *args
-)
-@{
- my_driver_context *ctx = (my_driver_context *) base;
-
- /*
- * The driver may do some cleanup here.
- */
-@}
-@end group
-@end example
-
-@subsection Reading Characters from a Serial Device
-
-The @code{console_read()} provided by @file{console-termios.c} is invoked when
-the serial device is to be read from. This entry point corresponds to the
-device driver read entry point.
-
-@subsection Writing Characters to a Serial Device
-
-The @code{console_write()} provided by @file{console-termios.c} is invoked when
-the serial device is to be written to. This entry point corresponds to the
-device driver write entry point.
-
-@subsection Changing Serial Line Parameters
-
-The @code{console_control()} provided by @file{console-termios.c} is invoked
-when the line parameters for a particular serial device are to be changed.
-This entry point corresponds to the device driver IO control entry point.
-
-The application writer is able to control the serial line configuration with
-Termios calls (such as the @code{ioctl()} command, see the Termios
-documentation for more details). If the driver is to support dynamic
-configuration, then it must have the @code{console_control()} piece of code.
-Basically @code{ioctl()} commands call @code{console_control()} with the serial
-line configuration in a Termios defined data structure.
-
-The driver is responsible for reinitializing the device with the correct
-settings. For this purpose Termios calls the @code{my_driver_set_attributes()}
-handler.
-
-@example
-@group
-static bool my_driver_set_attributes(
- rtems_termios_device_context *base,
- const struct termios *term
-)
-@{
- my_driver_context *ctx = (my_driver_context *) base;
-
- /*
- * Inspect the termios data structure and configure the device
- * appropriately. The driver should only be concerned with the
- * parts of the structure that specify hardware setting for the
- * communications channel such as baud, character size, etc.
- */
-
- /*
- * Return true to indicate a successful set attributes, and false
- * otherwise.
- */
- return true;
-@}
-@end group
-@end example
diff --git a/doc/bsp_howto/discrete.t b/doc/bsp_howto/discrete.t
deleted file mode 100644
index 9579bdf4be..0000000000
--- a/doc/bsp_howto/discrete.t
+++ /dev/null
@@ -1,183 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Discrete Driver
-
-The Discrete driver is responsible for providing an
-interface to Discrete Input/Outputs. The capabilities provided
-by this class of device driver are:
-
-@itemize @bullet
-@item Initialize a Discrete I/O Board
-@item Open a Particular Discrete Bitfield
-@item Close a Particular Discrete Bitfield
-@item Read from a Particular Discrete Bitfield
-@item Write to a Particular Discrete Bitfield
-@item Reset DACs
-@item Reinitialize DACS
-@end itemize
-
-Most discrete I/O devices are found on I/O cards that support many
-bits of discrete I/O on a single card. This driver model is centered
-on the notion of reading bitfields from the card.
-
-There are currently no discrete I/O device drivers included in the
-RTEMS source tree. The information provided in this chapter
-is based on drivers developed for applications using RTEMS.
-It is hoped that this driver model information can form the
-discrete I/O driver model that can be supported in future RTEMS
-distribution.
-
-@section Major and Minor Numbers
-
-The @b{major} number of a device driver is its index in the
-RTEMS Device Address Table.
-
-A @b{minor} number is associated with each device instance
-managed by a particular device driver. An RTEMS minor number
-is an @code{unsigned32} entity. Convention calls for
-dividing the bits in the minor number down into categories
-that specify a particular bitfield. This results in categories
-like the following:
-
-@itemize @bullet
-
-@item @b{board} - indicates the board a particular bitfield is located on
-@item @b{word} - indicates the particular word of discrete bits the
-bitfield is located within
-@item @b{start} - indicates the starting bit of the bitfield
-@item @b{width} - indicates the width of the bitfield
-
-@end itemize
-
-From the above, it should be clear that a single device driver
-can support multiple copies of the same board in a single system.
-The minor number is used to distinguish the devices.
-
-By providing a way to easily access a particular bitfield from
-the device driver, the application is insulated with knowing how
-to mask fields in and out of a discrete I/O.
-
-@section Discrete I/O Driver Configuration
-
-There is not a standard discrete I/O driver configuration table but some
-fields are common across different drivers. The discrete I/O driver
-configuration table is typically an array of structures with each
-structure containing the information for a particular board.
-The following is a list of the type of information normally required
-to configure an discrete I/O board:
-
-@table @b
-@item board_offset
-is the base address of a board.
-
-@item relay_initial_values
-is an array of the values that should be written to each output
-word on the board during initialization. This allows the driver
-to start with the board's output in a known state.
-
-@end table
-
-@section Initialize a Discrete I/O Board
-
-At system initialization, the discrete I/O driver's initialization entry point
-will be invoked. As part of initialization, the driver will perform
-whatever board initializatin is required and then set all
-outputs to their configured initial state.
-
-The discrete I/O driver may register a device name for bitfields of
-particular interest to the system. Normally this will be restricted
-to the names of each word and, if the driver supports it, an "all words".
-
-@section Open a Particular Discrete Bitfield
-
-This is the driver open call. Usually this call does nothing other than
-validate the minor number.
-
-With some drivers, it may be necessary to allocate memory when a particular
-device is opened. If that is the case, then this is often the place
-to do this operation.
-
-@section Close a Particular Discrete Bitfield
-
-This is the driver close call. Usually this call does nothing.
-
-With some drivers, it may be necessary to allocate memory when a particular
-device is opened. If that is the case, then this is the place
-where that memory should be deallocated.
-
-@section Read from a Particular Discrete Bitfield
-
-This corresponds to the driver read call. After validating the minor
-number and arguments, this call reads the indicated bitfield. A
-discrete I/O devices may have to store the last value written to
-a discrete output. If the bitfield is output only, saving the last
-written value gives the appearance that it can be read from also.
-If the bitfield is input, then it is sampled.
-
-@b{NOTE:} Many discrete inputs have a tendency to bounce. The application
-may have to take account for bounces.
-
-The value returned is an @code{unsigned32} number
-representing the bitfield read. This value is stored in the
-@code{argument_block} passed in to the call.
-
-@b{NOTE:} Some discrete I/O drivers have a special minor number
-used to access all discrete I/O bits on the board. If this special
-minor is used, then the area pointed to by @code{argument_block} must
-be the correct size.
-
-@section Write to a Particular Discrete Bitfield
-
-This corresponds to the driver write call. After validating the minor
-number and arguments, this call writes the indicated device. If the
-specified device is an ADC, then an error is usually returned.
-
-The value written is an @code{unsigned32} number
-representing the value to be written to the specified
-bitfield. This value is stored in the
-@code{argument_block} passed in to the call.
-
-@b{NOTE:} Some discrete I/O drivers have a special minor number
-used to access all discrete I/O bits on the board. If this special
-minor is used, then the area pointed to by @code{argument_block} must
-be the correct size.
-
-@section Disable Discrete Outputs
-
-This is one of the IOCTL functions supported by the I/O control
-device driver entry point. When this IOCTL function is invoked,
-the discrete outputs are disabled.
-
-@b{NOTE:} It may not be possible to disable/enable discrete output on all
-discrete I/O boards.
-
-@section Enable Discrete Outputs
-
-This is one of the IOCTL functions supported by the I/O control
-device driver entry point. When this IOCTL function is invoked,
-the discrete outputs are enabled.
-
-@b{NOTE:} It may not be possible to disable/enable discrete output on all
-discrete I/O boards.
-
-@section Reinitialize Outputs
-
-This is one of the IOCTL functions supported by the I/O control
-device driver entry point. When this IOCTL function is invoked,
-the discrete outputs are rewritten with the configured initial
-output values.
-
-@section Get Last Written Values
-
-This is one of the IOCTL functions supported by the I/O control
-device driver entry point. When this IOCTL function is invoked,
-the following information is returned to the caller:
-
-@itemize @bullet
-@item last value written to the specified output word
-@item timestamp of when the last write was performed
-@end itemize
-
diff --git a/doc/bsp_howto/framebuffer.t b/doc/bsp_howto/framebuffer.t
deleted file mode 100644
index 846194c843..0000000000
--- a/doc/bsp_howto/framebuffer.t
+++ /dev/null
@@ -1,251 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2009.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Frame Buffer Driver
-
-In this chapter, we present the basic functionality implemented by a
-frame buffer driver: @code{frame_buffer_initialize()}, @code{frame_buffer_open()},
-@code{frame_buffer_close()}, @code{frame_buffer_read()}, @code{frame_buffer_write()}
-and @code{frame_buffer_control()}.
-
-@section Introduction
-
-The purpose of the frame buffer driver is to provide an abstraction for
-graphics hardware.
-By using the frame buffer interface, an application can display graphics
-without knowing anything about the low-level details of interfacing to a
-particular graphics adapter. The parameters governing the mapping of
-memory to displayed pixels (planar or linear, bit depth, etc) is still
-implementation-specific, but device-independent methods are provided to
-determine and potentially modify these parameters.
-
-The frame buffer driver is commonly located in the @code{console}
-directory of the BSP and registered by the name @b{/dev/fb0}.
-Additional frame buffers (if available) are named @b{/dev/fb1},
-@b{/dev/fb2}, etc.
-
-To work with the frame buffer, the following operation sequence is used:
-@code{open()}, @code{ioctls()} to get the frame buffer info, @code{read()} and/or
-@code{write()}, and @code{close()}.
-
-@section Driver Function Overview
-
-@subsection Initialization
-
-The driver initialization is called once during the RTEMS initialization
-process and returns RTEMS_SUCCESSFUL when the device driver is successfully
-initialized. During the initialization, a name is assigned to the frame
-buffer device. If the graphics hardware supports console text output,
-as is the case with the pc386 VGA hardware, initialization into graphics
-mode may be deferred until the device is @code{open()}ed.
-
-The @code{frame_buffer_initialize()} function may look like this:
-
-@example
-@group
-rtems_device_driver frame_buffer_initialize(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void *arg)
-@{
- rtems_status_code status;
-
- printk( "frame buffer driver initializing..\n" );
-
- /*
- * Register the device
- */
- status = rtems_io_register_name("/dev/fb0", major, 0);
- if (status != RTEMS_SUCCESSFUL)
- @{
- printk("Error registering frame buffer device!\n");
- rtems_fatal_error_occurred( status );
- @}
-
- /*
- * graphics hardware initialization goes here for non-console
- * devices
- */
-
- return RTEMS_SUCCESSFUL;
-@}
-@end group
-@end example
-
-@subsection Opening the Frame Buffer Device
-
-The @code{frame_buffer_open()} function is called whenever a frame buffer device is opened.
-If the frame buffer is registered as "/dev/fb0", the @code{frame_buffer_open} entry point
-will be called as the result of an @code{open("/dev/fb0", mode)} in the application.
-
-Thread safety of the frame buffer driver is implementation-dependent.
-The VGA driver shown below uses a mutex to prevent multiple open()
-operations of the frame buffer device.
-
-The @code{frame_buffer_open()} function returns RTEMS_SUCCESSFUL when the device driver
-is successfully opened, and RTEMS_UNSATISFIED if the device is already open:
-
-@example
-@group
-rtems_device_driver frame_buffer_close(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void *arg
-)
-@{
- if (pthread_mutex_unlock(&mutex) == 0)@{
- /* restore previous state. for VGA this means return to text mode.
- * leave out if graphics hardware has been initialized in
- * frame_buffer_initialize() */
- ega_hwterm();
- printk( "FBVGA close called.\n" );
- return RTEMS_SUCCESSFUL;
- @}
-
- return RTEMS_UNSATISFIED;
-@}
-@end group
-@end example
-
-In the previous example, the function @code{ega_hwinit()} takes care of
-hardware-specific initialization.
-
-@subsection Closing the Frame Buffer Device
-
-The @code{frame_buffer_close()} is invoked when the frame buffer device
-is closed. It frees up any resources allocated in
-@code{frame_buffer_open()}, and should restore previous hardware state.
-The entry point corresponds to the device driver close entry point.
-
-Returns RTEMS_SUCCESSFUL when the device driver is successfully closed:
-
-@example
-@group
-rtems_device_driver frame_buffer_close(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void *arg)
-@{
- pthread_mutex_unlock(&mutex);
- /* TODO check mutex return value, RTEMS_UNSATISFIED if it failed. we
- * don't want to unconditionally call ega_hwterm()... */
- /* restore previous state. for VGA this means return to text mode.
- * leave out if graphics hardware has been initialized in
- * frame_buffer_initialize() */
- ega_hwterm();
- printk( "frame buffer close called.\n" );
- return RTEMS_SUCCESSFUL;
-@}
-
-@end group
-@end example
-
-
-@subsection Reading from the Frame Buffer Device
-
-The @code{frame_buffer_read()} is invoked from a @code{read()} operation
-on the frame buffer device.
-Read functions should allow normal and partial reading at the end of frame buffer memory.
-This method returns RTEMS_SUCCESSFUL when the device is successfully read from:
-
-@example
-@group
-rtems_device_driver frame_buffer_read(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void *arg
-)
-@{
- rtems_libio_rw_args_t *rw_args = (rtems_libio_rw_args_t *)arg;
- rw_args->bytes_moved = ((rw_args->offset + rw_args->count) > fb_fix.smem_len ) ? (fb_fix.smem_len - rw_args->offset) : rw_args->count;
- memcpy(rw_args->buffer, (const void *) (fb_fix.smem_start + rw_args->offset), rw_args->bytes_moved);
- return RTEMS_SUCCESSFUL;
-@}
-@end group
-@end example
-
-@subsection Writing to the Frame Buffer Device
-
-The @code{frame_buffer_write()} is invoked from a @code{write()}
-operation on the frame buffer device.
-The frame buffer write function is similar to the read function, and
-should handle similar cases involving partial writes.
-
-This method returns RTEMS_SUCCESSFUL when the device is successfully
-written to:
-
-@example
-@group
-rtems_device_driver frame_buffer_write(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void *arg
-)
-@{
- rtems_libio_rw_args_t *rw_args = (rtems_libio_rw_args_t *)arg;
- rw_args->bytes_moved = ((rw_args->offset + rw_args->count) > fb_fix.smem_len ) ? (fb_fix.smem_len - rw_args->offset) : rw_args->count;
- memcpy( (void *) (fb_fix.smem_start + rw_args->offset), rw_args->buffer, rw_args->bytes_moved);
- return RTEMS_SUCCESSFUL;
-@}
-@end group
-@end example
-
-
-@subsection Frame Buffer IO Control
-
-The frame buffer driver allows several ioctls, partially compatible with
-the Linux kernel,
-to obtain information about the hardware.
-
-All @code{ioctl()} operations on the frame buffer device invoke
-@code{frame_buffer_control()}.
-
-Ioctls supported:
-@itemize @bullet
-@item ioctls to get the frame buffer screen info (fixed and variable).
-@item ioctl to set and get palette.
-@end itemize
-
-@example
-@group
-rtems_device_driver frame_buffer_control(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void *arg
-)
-@{
- rtems_libio_ioctl_args_t *args = arg;
-
- printk( "FBVGA ioctl called, cmd=%x\n", args->command );
-
- switch( args->command ) @{
- case FBIOGET_FSCREENINFO:
- args->ioctl_return = get_fix_screen_info( ( struct fb_fix_screeninfo * ) args->buffer );
- break;
- case FBIOGET_VSCREENINFO:
- args->ioctl_return = get_var_screen_info( ( struct fb_var_screeninfo * ) args->buffer );
- break;
- case FBIOPUT_VSCREENINFO:
- /* not implemented yet*/
- args->ioctl_return = -1;
- return RTEMS_UNSATISFIED;
- case FBIOGETCMAP:
- args->ioctl_return = get_palette( ( struct fb_cmap * ) args->buffer );
- break;
- case FBIOPUTCMAP:
- args->ioctl_return = set_palette( ( struct fb_cmap * ) args->buffer );
- break;
-
- default:
- args->ioctl_return = 0;
- break;
- @}
- return RTEMS_SUCCESSFUL;
-@}
-@end group
-@end example
-
-See @code{rtems/fb.h} for more information on the list of ioctls and
-data structures they work with.
diff --git a/doc/bsp_howto/ide-ctrl.t b/doc/bsp_howto/ide-ctrl.t
deleted file mode 100644
index 6ebd6e60bc..0000000000
--- a/doc/bsp_howto/ide-ctrl.t
+++ /dev/null
@@ -1,154 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter IDE Controller Driver
-
-@section Introduction
-
-The IDE Controller driver is responsible for providing an
-interface to an IDE Controller. The capabilities provided by this
-driver are:
-
-@itemize @bullet
-@item Read IDE Controller register
-@item Write IDE Controller register
-@item Read data block through IDE Controller Data Register
-@item Write data block through IDE Controller Data Register
-@end itemize
-
-The reference implementation for an IDE Controller driver can
-be found in @code{$RTEMS_SRC_ROOT/c/src/libchip/ide}. This driver
-is based on the libchip concept and allows to work with any of the IDE
-Controller chips simply by appropriate configuration of BSP. Drivers for a
-particular IDE Controller chips locate in the following directories: drivers
-for well-known IDE Controller chips locate into
-@code{$RTEMS_SRC_ROOT/c/src/libchip/ide}, drivers for IDE Controller chips
-integrated with CPU locate into
-@code{$RTEMS_SRC_ROOT/c/src/lib/libcpu/myCPU} and
-drivers for custom IDE Controller chips (for example, implemented on FPGA)
-locate into @code{$RTEMS_SRC_ROOT/c/src/lib/libbsp/myBSP}.
-There is a README file in these directories for each supported
-IDE Controller chip. Each of these README explains how to configure a BSP
-for that particular IDE Controller chip.
-
-@section Initialization
-
-IDE Controller chips used by a BSP are statically configured into
-@code{IDE_Controller_Table}. The @code{ide_controller_initialize} routine is
-responsible for initialization of all configured IDE controller chips.
-Initialization order of the chips based on the order the chips are defined in
-the @code{IDE_Controller_Table}.
-
-The following actions are performed by the IDE Controller driver
-initialization routine:
-
-@example
-@group
-rtems_device_driver ide_controller_initialize(
- rtems_device_major_number major,
- rtems_device_minor_number minor_arg,
- void *arg
-)
-@{
- for each IDE Controller chip configured in IDE_Controller_Table
- if (BSP dependent probe(if exists) AND device probe for this IDE chip
- indicates it is present)
- perform initialization of the particular chip
- register device with configured name for this chip
-@}
-@end group
-@end example
-
-@section Read IDE Controller Register
-
-The @code{ide_controller_read_register} routine reads the content of the IDE
-Controller chip register. IDE Controller chip is selected via the minor
-number. This routine is not allowed to be called from an application.
-
-@example
-@group
-void ide_controller_read_register(rtems_device_minor_number minor,
- unsigned32 reg, unsigned32 *value)
-@{
- get IDE Controller chip configuration information from
- IDE_Controller_Table by minor number
-
- invoke read register routine for the chip
-@}
-@end group
-@end example
-
-@section Write IDE Controller Register
-
-The @code{ide_controller_write_register} routine writes IDE Controller chip
-register with specified value. IDE Controller chip is selected via the minor
-number. This routine is not allowed to be called from an application.
-
-@example
-@group
-void ide_controller_write_register(rtems_device_minor_number minor,
- unsigned32 reg, unsigned32 value)
-@{
- get IDE Controller chip configuration information from
- IDE_Controller_Table by minor number
-
- invoke write register routine for the chip
-@}
-@end group
-@end example
-
-@section Read Data Block Through IDE Controller Data Register
-
-The @code{ide_controller_read_data_block} provides multiple consequent read
-of the IDE Controller Data Register. IDE Controller chip is selected via the
-minor number. The same functionality may be achieved via separate multiple
-calls of @code{ide_controller_read_register} routine but
-@code{ide_controller_read_data_block} allows to escape functions call
-overhead. This routine is not allowed to be called from an application.
-
-@example
-@group
-void ide_controller_read_data_block(
- rtems_device_minor_number minor,
- unsigned16 block_size,
- blkdev_sg_buffer *bufs,
- uint32_t *cbuf,
- uint32_t *pos
-)
-@{
- get IDE Controller chip configuration information from
- IDE_Controller_Table by minor number
-
- invoke read data block routine for the chip
-@}
-@end group
-@end example
-
-@section Write Data Block Through IDE Controller Data Register
-
-The @code{ide_controller_write_data_block} provides multiple consequent write
-into the IDE Controller Data Register. IDE Controller chip is selected via the
-minor number. The same functionality may be achieved via separate multiple
-calls of @code{ide_controller_write_register} routine but
-@code{ide_controller_write_data_block} allows to escape functions call
-overhead. This routine is not allowed to be called from an application.
-
-@example
-@group
-void ide_controller_write_data_block(
- rtems_device_minor_number minor,
- unsigned16 block_size,
- blkdev_sg_buffer *bufs,
- uint32_t *cbuf,
- uint32_t *pos
-)
-@{
- get IDE Controller chip configuration information from
- IDE_Controller_Table by minor number
-
- invoke write data block routine for the chip
-@}
-@end group
-@end example
diff --git a/doc/bsp_howto/init.t b/doc/bsp_howto/init.t
deleted file mode 100644
index 1c0cd09113..0000000000
--- a/doc/bsp_howto/init.t
+++ /dev/null
@@ -1,413 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2008.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Initialization Code
-
-@section Introduction
-
-The initialization code is the first piece of code executed when there's a
-reset/reboot. Its purpose is to initialize the board for the application.
-This chapter contains a narrative description of the initialization
-process followed by a description of each of the files and routines
-commonly found in the BSP related to initialization. The remainder of
-this chapter covers special issues which require attention such
-as interrupt vector table and chip select initialization.
-
-Most of the examples in this chapter will be based on the SPARC/ERC32 and
-m68k/gen68340 BSP initialization code. Like most BSPs, the initialization
-for these BSP is divided into two subdirectories under the BSP source
-directory. The BSP source code for these BSPs is in the following
-directories:
-
-@example
-c/src/lib/libbsp/m68k/gen68340
-c/src/lib/libbsp/sparc/erc32
-@end example
-
-Both BSPs contain startup code written in assembly language and C.
-The gen68340 BSP has its early initialization start code in the
-@code{start340} subdirectory and its C startup code in the @code{startup}
-directory. In the @code{start340} directory are two source files.
-The file @code{startfor340only.s} is the simpler of these files as it only
-has initialization code for a MC68340 board. The file @code{start340.s}
-contains initialization for a 68349 based board as well.
-
-Similarly, the ERC32 BSP has startup code written in assembly language
-and C. However, this BSP shares this code with other SPARC BSPs.
-Thus the @code{Makefile.am} explicitly references the following files
-for this functionality.
-
-@example
-../../sparc/shared/start.S
-@end example
-
-@b{NOTE:} In most BSPs, the directory named @code{start340} in the
-gen68340 BSP would be simply named @code{start} or start followed by a
-BSP designation.
-
-@section Required Global Variables
-
-Although not strictly part of initialization, there are a few global
-variables assumed to exist by reusable device drivers. These global
-variables should only defined by the BSP when using one of these device
-drivers.
-
-The BSP author probably should be aware of the @code{Configuration}
-Table structure generated by @code{<rtems/confdefs.h>} during debug but
-should not explicitly reference it in the source code. There are helper
-routines provided by RTEMS to access individual fields.
-
-In older RTEMS versions, the BSP included a number of required global
-variables. We have made every attempt to eliminate these in the interest
-of simplicity.
-
-@section Board Initialization
-
-This section describes the steps an application goes through from the
-time the first BSP code is executed until the first application task
-executes. The following figure illustrates the program flow during
-this sequence:
-
-@ifset use-ascii
-IMAGE NOT AVAILABLE IN ASCII VERSION
-@end ifset
-
-@ifset use-tex
-@image{BSPInitFlowchart-49,6in,,Initialization Sequence,.png}
-@c @image{FILENAME[, WIDTH[, HEIGHT[, ALTTEXT[, EXTENSION]]]]}
-@end ifset
-
-@ifset use-html
-@html
-<center>
-<IMG SRC="BSPInitFlowchart-49.png" WIDTH=800 ALT="Initialization Sequence">
-</center>
-@end html
-@end ifset
-
-The above figure illustrates the flow from assembly language start code
-to the shared @code{bootcard.c} framework then through the C Library,
-RTEMS, device driver initialization phases, and the context switch
-to the first application task. After this, the application executes
-until it calls @code{exit}, @code{rtems_shutdown_executive}, or some
-other normal termination initiating routine and a fatal system state is
-reached. The optional @code{bsp_fatal_extension} initial extension can perform
-BSP specific system termination.
-
-The routines invoked during this will be discussed and their location
-in the RTEMS source tree pointed out as we discuss each.
-
-@subsection Start Code - Assembly Language Initialization
-
-The assembly language code in the directory @code{start} is the first part
-of the application to execute. It is responsible for initializing the
-processor and board enough to execute the rest of the BSP. This includes:
-
-@itemize @bullet
-@item initializing the stack
-@item zeroing out the uninitialized data section @code{.bss}
-@item disabling external interrupts
-@item copy the initialized data from ROM to RAM
-@end itemize
-
-The general rule of thumb is that the start code in assembly should
-do the minimum necessary to allow C code to execute to complete the
-initialization sequence.
-
-The initial assembly language start code completes its execution by
-invoking the shared routine @code{boot_card()}.
-
-The label (symbolic name) associated with the starting address of the
-program is typically called @code{start}. The start object file is the
-first object file linked into the program image so it is ensured that
-the start code is at offset 0 in the @code{.text} section. It is the
-responsibility of the linker script in conjunction with the compiler
-specifications file to put the start code in the correct location in
-the application image.
-
-@subsection boot_card() - Boot the Card
-
-The @code{boot_card()} is the first C code invoked. This file is the
-core component in the RTEMS BSP Initialization Framework and provides
-the proper sequencing of initialization steps for the BSP, RTEMS and
-device drivers. All BSPs use the same shared version of @code{boot_card()}
-which is located in the following file:
-
-@example
-c/src/lib/libbsp/shared/bootcard.c
-@end example
-
-The @code{boot_card()} routine performs the following functions:
-
-@itemize @bullet
-
-@item It disables processor interrupts.
-
-@item It sets the command line argument variables
-for later use by the application.
-
-@item It invokes the BSP specific routine @code{bsp_work_area_initialize()}
-which is supposed to initialize the RTEMS Workspace and the C Program Heap.
-Usually the default implementation in
-@code{c/src/lib/libbsp/shared/bspgetworkarea.c} should be sufficient. Custom
-implementations can use @code{bsp_work_area_initialize_default()} or
-@code{bsp_work_area_initialize_with_table()} available as inline functions from
-@code{#include <bsp/bootcard.h>}.
-
-@item It invokes the BSP specific routine @code{bsp_start()} which is
-written in C and thus able to perform more advanced initialization.
-Often MMU, bus and interrupt controller initialization occurs here. Since the
-RTEMS Workspace and the C Program Heap was already initialized by
-@code{bsp_work_area_initialize()}, this routine may use @code{malloc()}, etc.
-
-@item It invokes the RTEMS directive
-@code{rtems_initialize_data_structures()} to initialize the RTEMS
-executive to a state where objects can be created but tasking is not
-enabled.
-
-@item It invokes the BSP specific routine @code{bsp_libc_init()} to initialize
-the C Library. Usually the default implementation in
-@code{c/src/lib/libbsp/shared/bsplibc.c} should be sufficient.
-
-@item It invokes the RTEMS directive
-@code{rtems_initialize_before_drivers()} to initialize the MPCI Server
-thread in a multiprocessor configuration and execute API specific
-extensions.
-
-@item It invokes the BSP specific routine @code{bsp_predriver_hook}. For
-most BSPs, the implementation of this routine does nothing.
-
-@item It invokes the RTEMS directive
-@code{rtems_initialize_device_drivers()} to initialize the statically
-configured set of device drivers in the order they were specified in
-the Configuration Table.
-
-@item It invokes the BSP specific routine @code{bsp_postdriver_hook}. For
-most BSPs, the implementation of this routine does nothing. However, some
-BSPs use this hook and perform some initialization which must be done at
-this point in the initialization sequence. This is the last opportunity
-for the BSP to insert BSP specific code into the initialization sequence.
-
-@item It invokes the RTEMS directive
-@code{rtems_initialize_start_multitasking()}
-which initiates multitasking and performs a context switch to the
-first user application task and may enable interrupts as a side-effect of
-that context switch. The context switch saves the executing context. The
-application runs now. The directive rtems_shutdown_executive() will return
-to the saved context. The exit() function will use this directive.
-
-After a return to the saved context a fatal system state is reached. The
-fatal source is RTEMS_FATAL_SOURCE_EXIT with a fatal code set to the value
-passed to rtems_shutdown_executive().
-
-The enabling of interrupts during the first context switch is often the source
-for fatal errors during BSP development because the BSP did not clear and/or
-disable all interrupt sources and a spurious interrupt will occur.
-
-When in the context of the first task but before its body has been
-entered, any C++ Global Constructors will be invoked.
-
-@end itemize
-
-That's it. We just went through the entire sequence.
-
-@subsection bsp_work_area_initialize() - BSP Specific Work Area Initialization
-
-This is the first BSP specific C routine to execute during system
-initialization. It must initialize the support for allocating memory from the
-C Program Heap and RTEMS Workspace commonly referred to as the work areas.
-Many BSPs place the work areas at the end of RAM although this is certainly not
-a requirement. Usually the default implementation in
-@file{c/src/lib/libbsp/shared/bspgetworkarea.c} should be sufficient. Custom
-implementations can use @code{bsp_work_area_initialize_default()} or
-@code{bsp_work_area_initialize_with_table()} available as inline functions from
-@code{#include <bsp/bootcard.h>}.
-
-@subsection bsp_start() - BSP Specific Initialization
-
-This is the second BSP specific C routine to execute during system
-initialization. It is called right after @code{bsp_work_area_initialize()}.
-The @code{bsp_start()} routine often performs required fundamental hardware
-initialization such as setting bus controller registers that do not have a
-direct impact on whether or not C code can execute. The interrupt controllers
-are usually initialized here. The source code for this routine is usually
-found in the file @file{c/src/lib/libbsp/$@{CPU@}/$@{BSP@}/startup/bspstart.c}.
-It is not allowed to create any operating system objects, e.g. RTEMS
-semaphores.
-
-After completing execution, this routine returns to the @code{boot_card()}
-routine. In case of errors, the initialization should be terminated via
-@code{bsp_fatal()}.
-
-@subsection bsp_predriver_hook() - BSP Specific Predriver Hook
-
-The @code{bsp_predriver_hook()} method is the BSP specific routine that is
-invoked immediately before the the device drivers are initialized. RTEMS
-initialization is complete but interrupts and tasking are disabled.
-
-The BSP may use the shared version of this routine which is empty.
-Most BSPs do not provide a specific implementation of this callback.
-
-@subsection Device Driver Initialization
-
-At this point in the initialization sequence, the initialization
-routines for all of the device drivers specified in the Device
-Driver Table are invoked. The initialization routines are invoked
-in the order they appear in the Device Driver Table.
-
-The Driver Address Table is part of the RTEMS Configuration Table. It
-defines device drivers entry points (initialization, open, close, read,
-write, and control). For more information about this table, please
-refer to the @b{Configuring a System} chapter in the
-@b{RTEMS Application C User's Guide}.
-
-The RTEMS initialization procedure calls the initialization function for
-every driver defined in the RTEMS Configuration Table (this allows
-one to include only the drivers needed by the application).
-
-All these primitives have a major and a minor number as arguments:
-
-@itemize @bullet
-
-@item the major number refers to the driver type,
-
-@item the minor number is used to control two peripherals with the same
-driver (for instance, we define only one major number for the serial
-driver, but two minor numbers for channel A and B if there are two
-channels in the UART).
-
-@end itemize
-
-@subsection RTEMS Postdriver Callback
-
-The @code{bsp_postdriver_hook()} BSP specific routine is invoked
-immediately after the the device drivers and MPCI are initialized.
-Interrupts and tasking are disabled.
-
-Most BSPs use the shared implementation of this routine which is responsible for opening the device @code{/dev/console} for standard input, output and error if the application has configured the Console Device Driver. This file is located at:
-
-@example
-c/src/lib/libbsp/shared/bsppost.c
-@end example
-
-@section The Interrupt Vector Table
-
-The Interrupt Vector Table is called different things on different
-processor families but the basic functionality is the same. Each
-entry in the Table corresponds to the handler routine for a particular
-interrupt source. When an interrupt from that source occurs, the
-specified handler routine is invoked. Some context information is
-saved by the processor automatically when this happens. RTEMS saves
-enough context information so that an interrupt service routine
-can be implemented in a high level language.
-
-On some processors, the Interrupt Vector Table is at a fixed address. If
-this address is in RAM, then usually the BSP only has to initialize
-it to contain pointers to default handlers. If the table is in ROM,
-then the application developer will have to take special steps to
-fill in the table.
-
-If the base address of the Interrupt Vector Table can be dynamically
-changed to an arbitrary address, then the RTEMS port to that processor
-family will usually allocate its own table and install it. For example,
-on some members of the Motorola MC68xxx family, the Vector Base Register
-(@code{vbr}) contains this base address.
-
-@subsection Interrupt Vector Table on the gen68340 BSP
-
-The gen68340 BSP provides a default Interrupt Vector Table in the
-file @code{$BSP_ROOT/start340/start340.s}. After the @code{entry}
-label is the definition of space reserved for the table of
-interrupts vectors. This space is assigned the symbolic name
-of @code{__uhoh} in the @code{gen68340} BSP.
-
-At @code{__uhoh} label is the default interrupt handler routine. This
-routine is only called when an unexpected interrupts is raised. One can
-add their own routine there (in that case there's a call to a routine -
-$BSP_ROOT/startup/dumpanic.c - that prints which address caused the
-interrupt and the contents of the registers, stack, etc.), but this should
-not return.
-
-@section Chip Select Initialization
-
-When the microprocessor accesses a memory area, address decoding is
-handled by an address decoder, so that the microprocessor knows which
-memory chip(s) to access. The following figure illustrates this:
-
-@example
-@group
- +-------------------+
- ------------| |
- ------------| |------------
- ------------| Address |------------
- ------------| Decoder |------------
- ------------| |------------
- ------------| |
- +-------------------+
- CPU Bus Chip Select
-@end group
-@end example
-
-
-The Chip Select registers must be programmed such that they match
-the @code{linkcmds} settings. In the gen68340 BSP, ROM and RAM
-addresses can be found in both the @code{linkcmds} and initialization
-code, but this is not a great way to do this. It is better to
-define addresses in the linker script.
-
-@section Integrated Processor Registers Initialization
-
-The CPUs used in many embedded systems are highly complex devices
-with multiple peripherals on the CPU itself. For these devices,
-there are always some specific integrated processor registers
-that must be initialized. Refer to the processors' manuals for
-details on these registers and be VERY careful programming them.
-
-@section Data Section Recopy
-
-The next initialization part can be found in
-@code{$BSP340_ROOT/start340/init68340.c}. First the Interrupt
-Vector Table is copied into RAM, then the data section recopy is initiated
-(_CopyDataClearBSSAndStart in @code{$BSP340_ROOT/start340/startfor340only.s}).
-
-This code performs the following actions:
-
-@itemize @bullet
-
-@item copies the .data section from ROM to its location reserved in RAM
-(see @ref{Linker Script Initialized Data} for more details about this copy),
-
-@item clear @code{.bss} section (all the non-initialized
-data will take value 0).
-
-@end itemize
-
-@section The RTEMS Configuration Table
-
-The RTEMS configuration table contains the maximum number of objects RTEMS
-can handle during the application (e.g. maximum number of tasks,
-semaphores, etc.). It's used to allocate the size for the RTEMS inner data
-structures.
-
-The RTEMS configuration table is application dependent, which means that
-one has to provide one per application. It is usually defined by defining
-macros and including the header file @code{<rtems/confdefs.h>}. In simple
-applications such as the tests provided with RTEMS, it is commonly found
-in the main module of the application. For more complex applications,
-it may be in a file by itself.
-
-The header file @code{<rtems/confdefs.h>} defines a constant table
-named @code{Configuration}. With RTEMS 4.8 and older, it was accepted
-practice for the BSP to copy this table into a modifiable copy named
-@code{BSP_Configuration}. This copy of the table was modified to define
-the base address of the RTEMS Executive Workspace as well as to reflect
-any BSP and device driver requirements not automatically handled by the
-application. In 4.9 and newer, we have eliminated the BSP copies of the
-configuration tables and are making efforts to make the configuration
-information generated by @code{<rtems/confdefs.h>} constant and read only.
-
-For more information on the RTEMS Configuration Table, refer to the
-@b{RTEMS Application C User's Guide}.
-
diff --git a/doc/bsp_howto/intro.t b/doc/bsp_howto/intro.t
deleted file mode 100644
index f6e6cccfc5..0000000000
--- a/doc/bsp_howto/intro.t
+++ /dev/null
@@ -1,73 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Introduction
-
-Before reading this documentation, it is strongly advised to read the
-RTEMS Development Environment Guide to get acquainted with the RTEMS
-directory structure. This document describes how to do a RTEMS Board
-Support Package, i.e. how to port RTEMS on a new target board. Discussions
-are provided for the following topics:
-
-@itemize @bullet
-
-@item RTEMS Board Support Package Organization
-
-@item Makefiles and the Linker Command Script
-
-@item Board Initialization Sequence
-
-@item Device Drivers Including:
-
-@itemize @bullet
-
-@item Console Driver
-
-@item Clock Driver
-
-@item Timer Driver
-
-@item Real-Time Clock Driver
-
-@item Non-Volatile Memory Driver
-
-@item Networking Driver
-
-@item Shared Memory Support Driver
-
-@item Analog Driver
-
-@item Discrete Driver
-
-@end itemize
-
-@end itemize
-
-The original version of this manual was written by Geoffroy Montel
-<g_montel@@yahoo.com>. When he started development of the gen68340
-BSP, this manual did not exist. He wrote the initial version of
-this manual as the result of his experiences. At that time, this
-document was viewed internally as the most important "missing manual"
-in the RTEMS documentation set.
-
-The gen68340 BSP is a good example of the life of an RTEMS BSP. It is
-based upon a part not recommended for new designs and none of the core RTEMS
-Project team members have one of these boards. Thus we are unlikely to
-perform major updates on this BSP. So as long as it compiles and links all
-tests, it will be available.
-
-The RTEMS Project team members are always trying to identify common
-code across BSPs and refactoring the code into shared routines.
-As part of this effort, the we will enhance the common BSP Framework.
-Not surprisingly, not every BSP takes advantage of every feature in
-the framework. The gen68340 does not take advantage of as many features
-as the ERC32 BSP does. So in many ways, the ERC32 is a better example
-BSP at this point. But even the ERC32 BSP does not include examples
-of every driver template and framework available to the BSP author.
-So in this guide we will try to point out good examples from other BSPs.
-
-Our goal is for you to be able to reuse as much code as possible and
-write as little board specific code as possible.
-
diff --git a/doc/bsp_howto/linkcmds.t b/doc/bsp_howto/linkcmds.t
deleted file mode 100644
index 4e4a7dcf59..0000000000
--- a/doc/bsp_howto/linkcmds.t
+++ /dev/null
@@ -1,429 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Linker Script
-
-@section What is a "linkcmds" file?
-
-The @code{linkcmds} file is a script which is passed to the linker at linking
-time. This file describes the memory configuration of the board as needed
-to link the program. Specifically it specifies where the code and data
-for the application will reside in memory.
-
-The format of the linker script is defined by the GNU Loader @code{ld}
-which is included as a component of the GNU Binary Utilities. If you
-are using GNU/Linux, then you probably have the documentation installed
-already and are using these same tools configured for @b{native} use.
-Please visit the Binutils project @uref{http://sourceware.org/binutils/}
-if you need more information.
-
-@section Program Sections
-
-An embedded systems programmer must be much more aware of the
-placement of their executable image in memory than the average
-applications programmer. A program destined to be embedded as well
-as the target system have some specific properties that must be
-taken into account. Embedded machines often mean average performances
-and small memory usage. It is the memory usage that concerns us
-when examining the linker command file.
-
-Two types of memories have to be distinguished:
-
-@itemize @bullet
-@item RAM - volatile offering read and write access
-@item ROM - non-volatile but read only
-@end itemize
-
-Even though RAM and ROM can be found in every personal computer,
-one generally doesn't care about them. In a personal computer,
-a program is nearly always stored on disk and executed in RAM. Things
-are a bit different for embedded targets: the target will execute the
-program each time it is rebooted or switched on. The application
-program is stored in non-volatile memory such as ROM, PROM, EEPROM,
-or Flash. On the other hand, data processing occurs in RAM.
-
-This leads us to the structure of an embedded program. In rough terms,
-an embedded program is made of sections. It is the responsibility of
-the application programmer to place these sections in the appropriate
-place in target memory. To make this clearer, if using the COFF
-object file format on the Motorola m68k family of microprocessors,
-the following sections will be present:
-
-@itemize @bullet
-
-@item @b{code (@code{.text}) section}:
-is the program's code and it should not be modified.
-This section may be placed in ROM.
-
-@item @b{non-initialized data (@code{.bss}) section}:
-holds uninitialized variables of the program. It can stay in RAM.
-
-@item @b{initialized data (@code{.data}) section}:
-holds the initialized program data which may be modified during the
-program's life. This means they have to be in RAM.
-On the other hand, these variables must be set to predefined values, and
-those predefined values have to be stored in ROM.
-
-@end itemize
-
-@b{NOTE:} Many programs and support libraries unknowingly assume that the
-@code{.bss} section and, possibly, the application heap are initialized
-to zero at program start. This is not required by the ISO/ANSI C Standard
-but is such a common requirement that most BSPs do this.
-
-That brings us up to the notion of the image of an executable: it consists
-of the set of the sections that together constitute the application.
-
-@section Image of an Executable
-
-As a program executable has many sections (note that the user can define
-their own, and that compilers define theirs without any notice), one has to
-specify the placement of each section as well as the type of memory
-(RAM or ROM) the sections will be placed into.
-For instance, a program compiled for a Personal Computer will see all the
-sections to go to RAM, while a program destined to be embedded will see
-some of his sections going into the ROM.
-
-The connection between a section and where that section is loaded into
-memory is made at link time. One has to let the linker know where
-the different sections are to be placed once they are in memory.
-
-The following example shows a simple layout of program sections. With
-some object formats, there are many more sections but the basic
-layout is conceptually similar.
-
-@example
-@group
- +-----------------+
- | .text | RAM or ROM
- +-----------------+
- | .data | RAM
- +-----------------+
- | .bss | RAM
- +-----------------+
-@end group
-@end example
-
-@section Example Linker Command Script
-
-The GNU linker has a command language to specify the image format. This
-command language can be quite complicated but most of what is required
-can be learned by careful examination of a well-documented example.
-The following is a heavily commented version of the linker script
-used with the the @code{gen68340} BSP This file can be found at
-$BSP340_ROOT/startup/linkcmds.
-
-@example
-/*
- * Specify that the output is to be coff-m68k regardless of what the
- * native object format is.
- */
-
-OUTPUT_FORMAT(coff-m68k)
-
-/*
- * Set the amount of RAM on the target board.
- *
- * NOTE: The default may be overridden by passing an argument to ld.
- */
-
-RamSize = DEFINED(RamSize) ? RamSize : 4M;
-
-/*
- * Set the amount of RAM to be used for the application heap. Objects
- * allocated using malloc() come from this area. Having a tight heap
- * size is somewhat difficult and multiple attempts to squeeze it may
- * be needed reducing memory usage is important. If all objects are
- * allocated from the heap at system initialization time, this eases
- * the sizing of the application heap.
- *
- * NOTE 1: The default may be overridden by passing an argument to ld.
- *
- * NOTE 2: The TCP/IP stack requires additional memory in the Heap.
- *
- * NOTE 3: The GNAT/RTEMS run-time requires additional memory in
- * the Heap.
- */
-
-HeapSize = DEFINED(HeapSize) ? HeapSize : 0x10000;
-
-/*
- * Set the size of the starting stack used during BSP initialization
- * until first task switch. After that point, task stacks allocated
- * by RTEMS are used.
- *
- * NOTE: The default may be overridden by passing an argument to ld.
- */
-
-StackSize = DEFINED(StackSize) ? StackSize : 0x1000;
-
-/*
- * Starting addresses and length of RAM and ROM.
- *
- * The addresses must be valid addresses on the board. The
- * Chip Selects should be initialized such that the code addresses
- * are valid.
- */
-
-MEMORY @{
- ram : ORIGIN = 0x10000000, LENGTH = 4M
- rom : ORIGIN = 0x01000000, LENGTH = 4M
-@}
-
-/*
- * This is for the network driver. See the Networking documentation
- * for more details.
- */
-
-ETHERNET_ADDRESS =
- DEFINED(ETHERNET_ADDRESS) ? ETHERNET_ADDRESS : 0xDEAD12;
-
-/*
- * The following defines the order in which the sections should go.
- * It also defines a number of variables which can be used by the
- * application program.
- *
- * NOTE: Each variable appears with 1 or 2 leading underscores to
- * ensure that the variable is accessible from C code with a
- * single underscore. Some object formats automatically add
- * a leading underscore to all C global symbols.
- */
-
-SECTIONS @{
-
- /*
- * Make the RomBase variable available to the application.
- */
-
- _RamSize = RamSize;
- __RamSize = RamSize;
-
- /*
- * Boot PROM - Set the RomBase variable to the start of the ROM.
- */
-
- rom : @{
- _RomBase = .;
- __RomBase = .;
- @} >rom
-
- /*
- * Dynamic RAM - set the RamBase variable to the start of the RAM.
- */
-
- ram : @{
- _RamBase = .;
- __RamBase = .;
- @} >ram
-
- /*
- * Text (code) goes into ROM
- */
-
- .text : @{
- /*
- * Create a symbol for each object (.o).
- */
-
- CREATE_OBJECT_SYMBOLS
-
- /*
- * Put all the object files code sections here.
- */
-
- *(.text)
-
- . = ALIGN (16); /* go to a 16-byte boundary */
-
- /*
- * C++ constructors and destructors
- *
- * NOTE: See the CROSSGCC mailing-list FAQ for
- * more details about the "[......]".
- */
-
- __CTOR_LIST__ = .;
- [......]
- __DTOR_END__ = .;
-
- /*
- * Declares where the .text section ends.
- */
-
- etext = .;
- _etext = .;
- @} >rom
-
- /*
- * Exception Handler Frame section
- */
-
- .eh_fram : @{
- . = ALIGN (16);
- *(.eh_fram)
- @} >ram
-
- /*
- * GCC Exception section
- */
-
- .gcc_exc : @{
- . = ALIGN (16);
- *(.gcc_exc)
- @} >ram
-
- /*
- * Special variable to let application get to the dual-ported
- * memory.
- */
-
- dpram : @{
- m340 = .;
- _m340 = .;
- . += (8 * 1024);
- @} >ram
-
- /*
- * Initialized Data section goes in RAM
- */
-
- .data : @{
- copy_start = .;
- *(.data)
-
- . = ALIGN (16);
- _edata = .;
- copy_end = .;
- @} >ram
-
- /*
- * Uninitialized Data section goes in ROM
- */
-
- .bss : @{
- /*
- * M68K specific: Reserve some room for the Vector Table
- * (256 vectors of 4 bytes).
- */
-
- M68Kvec = .;
- _M68Kvec = .;
- . += (256 * 4);
-
- /*
- * Start of memory to zero out at initialization time.
- */
-
- clear_start = .;
-
- /*
- * Put all the object files uninitialized data sections
- * here.
- */
-
- *(.bss)
-
- *(COMMON)
-
- . = ALIGN (16);
- _end = .;
-
- /*
- * Start of the Application Heap
- */
-
- _HeapStart = .;
- __HeapStart = .;
- . += HeapSize;
-
- /*
- * The Starting Stack goes after the Application Heap.
- * M68K stack grows down so start at high address.
- */
-
- . += StackSize;
- . = ALIGN (16);
- stack_init = .;
-
- clear_end = .;
-
- /*
- * The RTEMS Executive Workspace goes here. RTEMS
- * allocates tasks, stacks, semaphores, etc. from this
- * memory.
- */
-
- _WorkspaceBase = .;
- __WorkspaceBase = .;
- @} >ram
-@}
-@end example
-
-@section Initialized Data
-
-Now there's a problem with the initialized data: the @code{.data} section
-has to be in RAM as this data may be modified during the program execution.
-But how will the values be initialized at boot time?
-
-One approach is to place the entire program image in RAM and reload
-the image in its entirety each time the program is run. This is fine
-for use in a debug environment where a high-speed connection is available
-between the development host computer and the target. But even in this
-environment, it is cumbersome.
-
-The solution is to place a copy of the initialized data in a separate
-area of memory and copy it into the proper location each time the
-program is started. It is common practice to place a copy of the initialized
-@code{.data} section at the end of the code (@code{.text}) section
-in ROM when building a PROM image. The GNU tool @code{objcopy}
-can be used for this purpose.
-
-The following figure illustrates the steps a linked program goes through
-to become a downloadable image.
-
-@example
-@group
-+--------------+ +--------------------+
-| .data RAM | | .data RAM |
-+--------------+ +--------------------+
-| .bss RAM | | .bss RAM |
-+--------------+ +--------------------+ +----------------+
-| .text ROM | | .text ROM | | .text |
-+--------------+ +--------------------+ +----------------+
- | copy of .data ROM | | copy of .data |
- +--------------------+ +----------------+
-
- Step 1 Step 2 Step 3
-@end group
-@end example
-
-In Step 1, the program is linked together using the BSP linker script.
-
-In Step 2, a copy is made of the @code{.data} section and placed
-after the @code{.text} section so it can be placed in PROM. This step
-is done after the linking time. There is an example
-of doing this in the file $RTEMS_ROOT/make/custom/gen68340.cfg:
-
-@example
-# make a PROM image using objcopy
-m68k-rtems-objcopy \
---adjust-section-vma .data= \
-
-`m68k-rtems-objdump --section-headers \
-$(basename $@@).exe \
-| awk '[...]` \
-$(basename $@@).exe
-@end example
-
-NOTE: The address of the "copy of @code{.data} section" is
-created by extracting the last address in the @code{.text}
-section with an @code{awk} script. The details of how
-this is done are not relevant.
-
-Step 3 shows the final executable image as it logically appears in
-the target's non-volatile program memory. The board initialization
-code will copy the ""copy of @code{.data} section" (which are stored in
-ROM) to their reserved location in RAM.
-
diff --git a/doc/bsp_howto/makefiles.t b/doc/bsp_howto/makefiles.t
deleted file mode 100644
index d665d0a0a7..0000000000
--- a/doc/bsp_howto/makefiles.t
+++ /dev/null
@@ -1,218 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2008.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Makefiles
-
-This chapter discusses the Makefiles associated with a BSP. It does not
-describe the process of configuring, building, and installing RTEMS.
-This chapter will not provide detailed information about this process.
-Nonetheless, it is important to remember that the general process consists
-of four phases as shown here:
-
-@ifset use-ascii
-@example
-@group
-@itemize @bullet
-@item bootstrap
-@item configure
-@item build
-@item install
-@end itemize
-@end group
-@end example
-@end ifset
-
-@ifset use-tex
-@image{Developer-User-Timeline,6in,,Developer User Timeline,.png}
-@c @image{FILENAME[, WIDTH[, HEIGHT[, ALTTEXT[, EXTENSION]]]]}
-@end ifset
-
-@ifset use-html
-@html
-<center>
-<IMG SRC="Developer-User-Timeline.png" WIDTH=800 ALT="Developer User Timeline">
-</center>
-@end html
-@end ifset
-
-
-During the bootstrap phase, you are using the @code{configure.ac} and
-@code{Makefile.am} files as input to GNU autoconf and automake to
-generate a variety of files. This is done by running the @code{bootstrap}
-script found at the top of the RTEMS source tree.
-
-During the configure phase, a number of files are generated. These
-generated files are tailored for the specific host/target combination
-by the configure script. This set of files includes the Makefiles used
-to actually compile and install RTEMS.
-
-During the build phase, the source files are compiled into object files
-and libraries are built.
-
-During the install phase, the libraries, header files, and other support
-files are copied to the BSP specific installation point. After installation
-is successfully completed, the files generated by the configure and build
-phases may be removed.
-
-@section Makefiles Used During The BSP Building Process
-
-RTEMS uses the @b{GNU automake} and @b{GNU autoconf} automatic
-configuration package. Consequently, there are a number of
-automatically generated files in each directory in the RTEMS
-source tree. The @code{bootstrap} script found in the top level
-directory of the RTEMS source tree is executed to produce the
-automatically generated files. That script must be run from
-a directory with a @code{configure.ac} file in it. The @code{bootstrap}
-command is usually invoked in one of the following manners:
-
-@itemize @bullet
-@item @code{bootstrap} to regenerate all files that are generated by
-autoconf and automake.
-@item @code{bootstrap -c} to remove all files generated by autoconf and
-automake.
-@item @code{bootstrap -p} to regenerate @code{preinstall.am} files.
-@end itemize
-
-There is a file named @code{Makefile.am} in each directory of
-a BSP. This file is used by @b{automake} to produce the file named
-@code{Makefile.in} which is also found in each directory of a BSP.
-When modifying a @code{Makefile.am}, you can probably find examples of
-anything you need to do in one of the BSPs.
-
-
-The configure process specializes the @code{Makefile.in} files at the time that RTEMS
-is configured for a specific development host and target. Makefiles
-are automatically generated from the @code{Makefile.in} files. It is
-necessary for the BSP developer to provide the @code{Makefile.am}
-files and generate the @code{Makefile.in} files. Most of the
-time, it is possible to copy the @code{Makefile.am} from another
-similar directory and edit it.
-
-The @code{Makefile} files generated are processed when configuring
-and building RTEMS for a given BSP.
-
-The BSP developer is responsible for generating @code{Makefile.am}
-files which properly build all the files associated with their BSP.
-Most BSPs will only have a single @code{Makefile.am} which details
-the set of source files to build to compose the BSP support library
-along with the set of include files that are to be installed.
-
-This single @code{Makefile.am} at the top of the BSP tree specifies
-the set of header files to install. This fragment from the SPARC/ERC32
-BSP results in four header files being installed.
-
-@example
-include_HEADERS = include/bsp.h
-include_HEADERS += include/tm27.h
-include_HEADERS += include/erc32.h
-include_HEADERS += include/coverhd.h
-@end example
-
-When adding new include files, you will be adding to the set of
-@code{include_HEADERS}. When you finish editing the @code{Makefile.am}
-file, do not forget to run @code{bootstrap -p} to regenerate the
-@code{preinstall.am}.
-
-The @code{Makefile.am} also specifies which source files to build.
-By convention, logical components within the BSP each assign their
-source files to a unique variable. These variables which define
-the source files are collected into a single variable which instructs
-the GNU autotools that we are building @code{libbsp.a}. This fragment
-from the SPARC/ERC32 BSP shows how the startup related, miscellaneous
-support code, and the console device driver source is managed
-in the @code{Makefile.am}.
-
-@example
-startup_SOURCES = ../../sparc/shared/bspclean.c ../../shared/bsplibc.c \
- ../../shared/bsppredriverhook.c \
- ../../shared/bsppost.c ../../sparc/shared/bspstart.c \
- ../../shared/bootcard.c ../../shared/sbrk.c startup/setvec.c \
- startup/spurious.c startup/erc32mec.c startup/boardinit.S
-clock_SOURCES = clock/ckinit.c
-...
-noinst_LIBRARIES = libbsp.a
-libbsp_a_SOURCES = $(startup_SOURCES) $(console_SOURCES) ...
-@end example
-
-When adding new files to an existing directory, do not forget to add
-the new files to the list of files to be built in the corresponding
-@code{XXX_SOURCES} variable in the @code{Makefile.am} and run
-@code{bootstrap}.
-
-Some BSPs use code that is built in @code{libcpu}. If you BSP does
-this, then you will need to make sure the objects are pulled into your
-BSP library. The following from the SPARC/ERC32 BSP pulls in the cache,
-register window management and system call support code from the directory
-corresponding to its @code{RTEMS_CPU} model.
-
-@example
-libbsp_a_LIBADD = ../../../libcpu/@@RTEMS_CPU@@/cache.rel \
- ../../../libcpu/@@RTEMS_CPU@@/reg_win.rel \
- ../../../libcpu/@@RTEMS_CPU@@/syscall.rel
-@end example
-
-@b{NOTE:} The @code{Makefile.am} files are ONLY processed by
-@code{bootstrap} and the resulting @code{Makefile.in} files are only
-processed during the configure process of a RTEMS build. Therefore,
-when developing a BSP and adding a new file to a @code{Makefile.am},
-the already generated @code{Makefile} will not automatically
-include the new references unless you configured RTEMS with the
-@code{--enable-maintainer-mode} option. Otherwise, the new file not
-being be taken into account!
-
-@section Creating a New BSP Make Customization File
-
-When building a BSP or an application using that BSP, it is necessary
-to tailor the compilation arguments to account for compiler flags, use
-custom linker scripts, include the RTEMS libraries, etc.. The BSP
-must be built using this information. Later, once the BSP is installed
-with the toolset, this same information must be used when building the
-application. So a BSP must include a build configuration file. The
-configuration file is @code{make/custom/BSP.cfg}.
-
-The configuration file is taken into account when building one's
-application using the RTEMS template Makefiles (@code{make/templates}).
-These application template Makefiles have been included with the
-RTEMS source distribution since the early 1990's. However there is
-a desire in the RTEMS user community to move all provided examples to
-GNU autoconf. They are included in the 4.9 release series and used for
-all examples provided with RTEMS. There is no definite time table for
-obsoleting them. You are free to use these but be warned they have
-fallen out of favor with many in the RTEMS community and may disappear
-in the future.
-
-The following is a slightly shortened version of the make customization
-file for the gen68340 BSP. The original source for this file can be
-found in the @code{make/custom} directory.
-
-@example
-# The RTEMS CPU Family and Model
-RTEMS_CPU=m68k
-RTEMS_CPU_MODEL=m68340
-
-include $(RTEMS_ROOT)/make/custom/default.cfg
-
-# This is the actual bsp directory used during the build process.
-RTEMS_BSP_FAMILY=gen68340
-
-# This contains the compiler options necessary to select the CPU model
-# and (hopefully) optimize for it.
-CPU_CFLAGS = -mcpu=cpu32
-
-# optimize flag: typically -O2
-CFLAGS_OPTIMIZE_V = -O2 -g -fomit-frame-pointer
-@end example
-
-The make customization files have generally grown simpler and simpler
-with each RTEMS release. Beginning in the 4.9 release series, the rules
-for linking an RTEMS application are shared by all BSPs. Only BSPs which
-need to perform a transformation from linked ELF file to a downloadable
-format have any additional actions for program link time. In 4.8 and
-older, every BSP specified the "make executable" or @code{make-exe}
-rule and duplicated the same actions.
-
-It is generally easier to copy a @code{make/custom} file from a
-BSP similar to the one being developed.
-
diff --git a/doc/bsp_howto/nvmem.t b/doc/bsp_howto/nvmem.t
deleted file mode 100644
index 7668e3a325..0000000000
--- a/doc/bsp_howto/nvmem.t
+++ /dev/null
@@ -1,231 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Non-Volatile Memory Driver
-
-The Non-Volatile driver is responsible for providing an
-interface to various types of non-volatile memory. These
-types of memory include, but are not limited to, Flash, EEPROM,
-and battery backed RAM. The capabilities provided
-by this class of device driver are:
-
-@itemize @bullet
-@item Initialize the Non-Volatile Memory Driver
-@item Optional Disable Read and Write Handlers
-@item Open a Particular Memory Partition
-@item Close a Particular Memory Partition
-@item Read from a Particular Memory Partition
-@item Write to a Particular Memory Partition
-@item Erase the Non-Volatile Memory Area
-@end itemize
-
-There is currently only one non-volatile device driver included in the
-RTEMS source tree. The information provided in this chapter
-is based on drivers developed for applications using RTEMS.
-It is hoped that this driver model information can form the
-basis for a standard non-volatile memory driver model that
-can be supported in future RTEMS distribution.
-
-@section Major and Minor Numbers
-
-The @b{major} number of a device driver is its index in the
-RTEMS Device Address Table.
-
-A @b{minor} number is associated with each device instance
-managed by a particular device driver. An RTEMS minor number
-is an @code{unsigned32} entity. Convention calls
-dividing the bits in the minor number down into categories
-that specify an area of non-volatile memory and a partition
-with that area. This results in categories
-like the following:
-
-@itemize @bullet
-
-@item @b{area} - indicates a block of non-volatile memory
-@item @b{partition} - indicates a particular address range with an area
-
-@end itemize
-
-From the above, it should be clear that a single device driver
-can support multiple types of non-volatile memory in a single system.
-The minor number is used to distinguish the types of memory and
-blocks of memory used for different purposes.
-
-@section Non-Volatile Memory Driver Configuration
-
-There is not a standard non-volatile driver configuration table but some
-fields are common across different drivers. The non-volatile memory driver
-configuration table is typically an array of structures with each
-structure containing the information for a particular area of
-non-volatile memory.
-The following is a list of the type of information normally required
-to configure each area of non-volatile memory.
-
-@table @b
-@item memory_type
-is the type of memory device in this area. Choices are battery backed RAM,
-EEPROM, Flash, or an optional user-supplied type. If the user-supplied type
-is configured, then the user is responsible for providing a set of
-routines to program the memory.
-
-@item memory
-is the base address of this memory area.
-
-@item attributes
-is a pointer to a memory type specific attribute block. Some of
-the fields commonly contained in this memory type specific attribute
-structure area:
-
-@table @b
-@item use_protection_algorithm
-is set to TRUE to indicate that the protection (i.e. locking) algorithm
-should be used for this area of non-volatile memory. A particular
-type of non-volatile memory may not have a protection algorithm.
-
-@item access
-is an enumerated type to indicate the organization of the memory
-devices in this memory area. The following is a list of the
-access types supported by the current driver implementation:
-
-@itemize @bullet
-@item simple unsigned8
-@item simple unsigned16
-@item simple unsigned32
-@item simple unsigned64
-@item single unsigned8 at offset 0 in an unsigned16
-@item single unsigned8 at offset 1 in an unsigned16
-@item single unsigned8 at offset 0 in an unsigned32
-@item single unsigned8 at offset 1 in an unsigned32
-@item single unsigned8 at offset 2 in an unsigned32
-@item single unsigned8 at offset 3 in an unsigned32
-@end itemize
-
-@item depth
-is the depth of the progamming FIFO on this particular chip. Some
-chips, particularly EEPROMs, have the same programming algorithm but
-vary in the depth of the amount of data that can be programmed in a single
-block.
-
-@end table
-
-@item number_of_partitions
-is the number of logical partitions within this area.
-
-@item Partitions
-is the address of the table that contains an entry to describe each
-partition in this area. Fields within each element of this
-table are defined as follows:
-
-@table @b
-
-@item offset
-is the offset of this partition from the base address of this area.
-
-@item length
-is the length of this partition.
-
-@end table
-@end table
-
-By dividing an area of memory into multiple partitions, it is possible
-to easily divide the non-volatile memory for different purposes.
-
-@section Initialize the Non-Volatile Memory Driver
-
-At system initialization, the non-volatile memory driver's
-initialization entry point will be invoked. As part of
-initialization, the driver will perform
-whatever initializatin is required on each non-volatile memory area.
-
-The discrete I/O driver may register device names for memory
-partitions of particular interest to the system. Normally this
-will be restricted to the device "/dev/nv_memory" to indicate
-the entire device driver.
-
-@section Disable Read and Write Handlers
-
-Depending on the target's non-volatile memory configuration, it may be
-possible to write to a status register and make the memory area completely
-inaccessible. This is target dependent and beyond the standard capabilities
-of any memory type. The user has the optional capability to provide
-handlers to disable and enable access to a partiticular memory area.
-
-@section Open a Particular Memory Partition
-
-This is the driver open call. Usually this call does nothing other than
-validate the minor number.
-
-With some drivers, it may be necessary to allocate memory when a particular
-device is opened. If that is the case, then this is often the place
-to do this operation.
-
-@section Close a Particular Memory Partition
-
-This is the driver close call. Usually this call does nothing.
-
-With some drivers, it may be necessary to allocate memory when a particular
-device is opened. If that is the case, then this is the place
-where that memory should be deallocated.
-
-@section Read from a Particular Memory Partition
-
-This corresponds to the driver read call. After validating the minor
-number and arguments, this call enables reads from the specified
-memory area by invoking the user supplied "enable reads handler"
-and then reads the indicated memory area. When
-invoked the @code{argument_block} is actually a pointer to the following
-structure type:
-
-@example
-@group
-typedef struct @{
- uint32_t offset;
- void *buffer;
- uint32_t length;
- uint32_t status;
-@} Non_volatile_memory_Driver_arguments;
-@end group
-@end example
-
-The driver reads @code{length} bytes starting at @code{offset} into
-the partition and places them at @code{buffer}. The result is returned
-in @code{status}.
-
-After the read operation is complete, the user supplied "disable reads handler"
-is invoked to protect the memory area again.
-
-@section Write to a Particular Memory Partition
-
-This corresponds to the driver write call. After validating the minor
-number and arguments, this call enables writes to the specified
-memory area by invoking the "enable writes handler", then unprotecting
-the memory area, and finally actually writing to the indicated memory
-area. When invoked the @code{argument_block} is actually a pointer to
-the following structure type:
-
-@example
-@group
-typedef struct @{
- uint32_t offset;
- void *buffer;
- uint32_t length;
- uint32_t status;
-@} Non_volatile_memory_Driver_arguments;
-@end group
-@end example
-
-The driver writes @code{length} bytes from @code{buffer} and
-writes them to the non-volatile memory starting at @code{offset} into
-the partition. The result is returned in @code{status}.
-
-After the write operation is complete, the "disable writes handler"
-is invoked to protect the memory area again.
-
-@section Erase the Non-Volatile Memory Area
-
-This is one of the IOCTL functions supported by the I/O control
-device driver entry point. When this IOCTL function is invoked,
-the specified area of non-volatile memory is erased.
-
diff --git a/doc/bsp_howto/rtc.t b/doc/bsp_howto/rtc.t
deleted file mode 100644
index 796f2c9ce4..0000000000
--- a/doc/bsp_howto/rtc.t
+++ /dev/null
@@ -1,225 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Real-Time Clock Driver
-
-@section Introduction
-
-The Real-Time Clock (@b{RTC}) driver is responsible for providing an
-interface to an @b{RTC} device. [NOTE: In this chapter, the abbreviation
-@b{TOD} is used for @b{Time of Day}.] The capabilities provided by this
-driver are:
-
-@itemize @bullet
-@item Set the RTC TOD to RTEMS TOD
-@item Set the RTEMS TOD to the RTC TOD
-@item Get the RTC TOD
-@item Set the RTC TOD to the Specified TOD
-@item Get the Difference Between the RTEMS and RTC TOD
-@end itemize
-
-The reference implementation for a real-time clock driver can
-be found in @code{c/src/lib/libbsp/shared/tod.c}. This driver
-is based on the libchip concept and can be easily configured
-to work with any of the RTC chips supported by the RTC
-chip drivers in the directory @code{c/src/lib/lib/libchip/rtc}.
-There is a README file in this directory for each supported
-RTC chip. Each of these README explains how to configure the
-shared libchip implementation of the RTC driver for that particular
-RTC chip.
-
-The DY-4 DMV177 BSP used the shared libchip implementation of the RTC
-driver. There were no DMV177 specific configuration routines. A BSP
-could use configuration routines to dynamically determine what type
-of real-time clock is on a particular board. This would be useful for
-a BSP supporting multiple board models. The relevant ports of
-the DMV177's @code{RTC_Table} configuration table is below:
-
-@example
-
-#include <bsp.h>
-#include <libchip/rtc.h>
-#include <libchip/icm7170.h>
-
-bool dmv177_icm7170_probe(int minor);
-
-rtc_tbl RTC_Table[] = @{
- @{ "/dev/rtc0", /* sDeviceName */
- RTC_ICM7170, /* deviceType */
- &icm7170_fns, /* pDeviceFns */
- dmv177_icm7170_probe, /* deviceProbe */
- (void *) ICM7170_AT_1_MHZ, /* pDeviceParams */
- DMV170_RTC_ADDRESS, /* ulCtrlPort1 */
- 0, /* ulDataPort */
- icm7170_get_register_8, /* getRegister */
- icm7170_set_register_8, /* setRegister */
- @}
-@};
-
-unsigned long RTC_Count = (sizeof(RTC_Table)/sizeof(rtc_tbl));
-rtems_device_minor_number RTC_Minor;
-
-bool dmv177_icm7170_probe(int minor)
-@{
- volatile unsigned16 *card_resource_reg;
-
- card_resource_reg = (volatile unsigned16 *) DMV170_CARD_RESORCE_REG;
-
- if ( (*card_resource_reg & DMV170_RTC_INST_MASK) == DMV170_RTC_INSTALLED )
- return TRUE;
- return FALSE;
-@}
-
-@end example
-
-@section Initialization
-
-The @code{rtc_initialize} routine is responsible for initializing the
-RTC chip so it can be used. The shared libchip implementation of this
-driver supports multiple RTCs and bases its initialization order on
-the order the chips are defined in the @code{RTC_Table}. Each chip
-defined in the table may or may not be present on this particular board.
-It is the responsibility of the @code{deviceProbe} to indicate the
-presence of a particular RTC chip. The first RTC found to be present
-is considered the preferred RTC.
-
-In the shared libchip based implementation
-of the driver, the following actions are performed:
-
-@example
-@group
-rtems_device_driver rtc_initialize(
- rtems_device_major_number major,
- rtems_device_minor_number minor_arg,
- void *arg
-)
-@{
- for each RTC configured in RTC_Table
- if the deviceProbe for this RTC indicates it is present
- set RTC_Minor to this device
- set RTC_Present to TRUE
- break out of this loop
-
- if RTC_Present is not TRUE
- return RTEMS_INVALID_NUMBER to indicate that no RTC is present
-
- register this minor number as the "/dev/rtc"
-
- perform the deviceInitialize routine for the preferred RTC chip
-
- for RTCs past this one in the RTC_Table
- if the deviceProbe for this RTC indicates it is present
- perform the deviceInitialize routine for this RTC chip
- register the configured name for this RTC
-@}
-@end group
-@end example
-
-The @code{deviceProbe} routine returns TRUE if the device
-configured by this entry in the @code{RTC_Table} is present.
-This configuration scheme allows one to support multiple versions
-of the same board with a single BSP. For example, if the first
-generation of a board had Vendor A's RTC chip and the second
-generation had Vendor B's RTC chip, RTC_Table could contain
-information for both. The @code{deviceProbe} configured
-for Vendor A's RTC chip would need to return TRUE if the
-board was a first generation one. The @code{deviceProbe}
-routines are very board dependent and must be provided by
-the BSP.
-
-@section setRealTimeToRTEMS
-
-The @code{setRealTimeToRTEMS} routine sets the current RTEMS TOD to that
-of the preferred RTC.
-
-@example
-@group
-void setRealTimeToRTEMS(void)
-@{
- if no RTCs are present
- return
-
- invoke the deviceGetTime routine for the preferred RTC
- set the RTEMS TOD using rtems_clock_set
-@}
-@end group
-@end example
-
-@section setRealTimeFromRTEMS
-
-The @code{setRealTimeFromRTEMS} routine sets the preferred RTC TOD to the
-current RTEMS TOD.
-
-@example
-@group
-void setRealTimeFromRTEMS(void)
-@{
- if no RTCs are present
- return
-
- obtain the RTEMS TOD using rtems_clock_get
- invoke the deviceSetTime routine for the preferred RTC
-@}
-@end group
-@end example
-
-@section getRealTime
-
-The @code{getRealTime} returns the preferred RTC TOD to the
-caller.
-
-@example
-@group
-void getRealTime( rtems_time_of_day *tod )
-@{
- if no RTCs are present
- return
-
- invoke the deviceGetTime routine for the preferred RTC
-@}
-@end group
-@end example
-
-@section setRealTime
-
-The @code{setRealTime} routine sets the preferred RTC TOD to the
-TOD specified by the caller.
-
-@example
-@group
-void setRealTime( rtems_time_of_day *tod )
-@{
- if no RTCs are present
- return
-
- invoke the deviceSetTime routine for the preferred RTC
-@}
-@end group
-@end example
-
-@section checkRealTime
-
-The @code{checkRealTime} routine returns the number of seconds
-difference between the RTC TOD and the current RTEMS TOD.
-
-@example
-@group
-int checkRealTime( void )
-@{
- if no RTCs are present
- return -1
-
-
- obtain the RTEMS TOD using rtems_clock_get
- get the TOD from the preferred RTC using the deviceGetTime routine
-
- convert the RTEMS TOD to seconds
- convert the RTC TOD to seconds
-
- return the RTEMS TOD in seconds - RTC TOD in seconds
-@}
-@end group
-@end example
-
diff --git a/doc/bsp_howto/shmsupp.t b/doc/bsp_howto/shmsupp.t
deleted file mode 100644
index 427461f264..0000000000
--- a/doc/bsp_howto/shmsupp.t
+++ /dev/null
@@ -1,266 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Shared Memory Support Driver
-
-The Shared Memory Support Driver is responsible for providing glue
-routines and configuration information required by the Shared
-Memory Multiprocessor Communications Interface (MPCI). The
-Shared Memory Support Driver tailors the portable Shared
-Memory Driver to a particular target platform.
-
-This driver is only required in shared memory multiprocessing
-systems that use the RTEMS mulitprocessing support. For more
-information on RTEMS multiprocessing capabilities and the
-MPCI, refer to the @b{Multiprocessing Manager} chapter
-of the @b{RTEMS Application C User's Guide}.
-
-@section Shared Memory Configuration Table
-
-The Shared Memory Configuration Table is defined in the following
-structure:
-
-@example
-@group
-typedef volatile uint32_t vol_u32;
-
-typedef struct @{
- vol_u32 *address; /* write here for interrupt */
- vol_u32 value; /* this value causes interrupt */
- vol_u32 length; /* for this length (0,1,2,4) */
-@} Shm_Interrupt_information;
-
-struct shm_config_info @{
- vol_u32 *base; /* base address of SHM */
- vol_u32 length; /* length (in bytes) of SHM */
- vol_u32 format; /* SHM is big or little endian */
- vol_u32 (*convert)(); /* neutral conversion routine */
- vol_u32 poll_intr; /* POLLED or INTR driven mode */
- void (*cause_intr)( uint32_t );
- Shm_Interrupt_information Intr; /* cause intr information */
-@};
-
-typedef struct shm_config_info shm_config_table;
-@end group
-@end example
-
-where the fields are defined as follows:
-
-@table @b
-@item base
-is the base address of the shared memory buffer used to pass
-messages between the nodes in the system.
-
-@item length
-is the length (in bytes) of the shared memory buffer used to pass
-messages between the nodes in the system.
-
-@item format
-is either SHM_BIG or SHM_LITTLE to indicate that the neutral format
-of the shared memory area is big or little endian. The format
-of the memory should be chosen to match most of the inter-node traffic.
-
-@item convert
-is the address of a routine which converts from native format to
-neutral format. Ideally, the neutral format is the same as the
-native format so this routine is quite simple.
-
-@item poll_intr
-is either INTR_MODE or POLLED_MODE to indicate how the node will be
-informed of incoming messages.
-
-@item cause_intr
-
-@item Intr
-is the information required to cause an interrupt on a node. This
-structure contains the following fields:
-@table @b
-@item address
-is the address to write at to cause an interrupt on that node.
-For a polled node, this should be NULL.
-
-@item value
-is the value to write to cause an interrupt.
-
-@item length
-is the length of the entity to write on the node to cause an interrupt.
-This can be 0 to indicate polled operation, 1 to write a byte, 2 to
-write a sixteen-bit entity, and 4 to write a thirty-two bit entity.
-@end table
-@end table
-
-@section Primitives
-
-@subsection Convert Address
-
-The @code{Shm_Convert_address} is responsible for converting an address
-of an entity in the shared memory area into the address that should be
-used from this node. Most targets will simply return the address
-passed to this routine. However, some target boards will have a special
-window onto the shared memory. For example, some VMEbus boards have
-special address windows to access addresses that are normally reserved
-in the CPU's address space.
-
-@example
-@group
-void *Shm_Convert_address( void *address )
-@{
- return the local address version of this bus address
-@}
-@end group
-@end example
-
-@subsection Get Configuration
-
-The @code{Shm_Get_configuration} routine is responsible for filling in the
-Shared Memory Configuration Table passed to it.
-
-@example
-@group
-void Shm_Get_configuration(
- uint32_t localnode,
- shm_config_table **shmcfg
-)
-@{
- fill in the Shared Memory Configuration Table
-@}
-@end group
-@end example
-
-@subsection Locking Primitives
-
-This is a collection of routines that are invoked by the portable
-part of the Shared Memory Driver to manage locks in the shared
-memory buffer area. Accesses to the shared memory must be
-atomic. Two nodes in a multiprocessor system must not be manipulating
-the shared data structures simultaneously. The locking primitives
-are used to insure this.
-
-To avoid deadlock, local processor interrupts should be disabled the entire
-time the locked queue is locked.
-
-The locking primitives operate on the lock
-@code{field} of the @code{Shm_Locked_queue_Control}
-data structure. This structure is defined as follows:
-
-@example
-@group
-typedef struct @{
- vol_u32 lock; /* lock field for this queue */
- vol_u32 front; /* first envelope on queue */
- vol_u32 rear; /* last envelope on queue */
- vol_u32 owner; /* receiving (i.e. owning) node */
-@} Shm_Locked_queue_Control;
-@end group
-@end example
-
-where each field is defined as follows:
-
-@table @b
-@item lock
-is the lock field. Every node in the system must agree on how this
-field will be used. Many processor families provide an atomic
-"test and set" instruction that is used to manage this field.
-
-@item front
-is the index of the first message on this locked queue.
-
-@item rear
-is the index of the last message on this locked queue.
-
-@item owner
-is the node number of the node that currently has this structure locked.
-
-@end table
-
-@subsubsection Initializing a Shared Lock
-
-The @code{Shm_Initialize_lock} routine is responsible for
-initializing the lock field. This routines usually is implemented
-as follows:
-
-@example
-@group
-void Shm_Initialize_lock(
- Shm_Locked_queue_Control *lq_cb
-)
-@{
- lq_cb->lock = LQ_UNLOCKED;
-@}
-@end group
-@end example
-
-@subsubsection Acquiring a Shared Lock
-
-The @code{Shm_Lock} routine is responsible for
-acquiring the lock field. Interrupts should be
-disabled while that lock is acquired. If the lock
-is currently unavailble, then the locking routine
-should delay a few microseconds to allow the other
-node to release the lock. Doing this reduces bus contention
-for the lock. This routines usually is implemented as follows:
-
-@example
-@group
-void Shm_Lock(
- Shm_Locked_queue_Control *lq_cb
-)
-@{
- disable processor interrupts
- set Shm_isrstat to previous interrupt disable level
-
- while ( TRUE ) @{
- atomically attempt to acquire the lock
- if the lock was acquired
- return
- delay some small period of time
- @}
-@}
-@end group
-@end example
-
-@subsubsection Releasing a Shared Lock
-
-The @code{Shm_Unlock} routine is responsible for
-releasing the lock field and reenabling processor
-interrupts. This routines usually is implemented as follows:
-
-@example
-@group
-void Shm_Unlock(
- Shm_Locked_queue_Control *lq_cb
-)
-@{
- set the lock to the unlocked value
- reenable processor interrupts to their level prior
- to the lock being acquired. This value was saved
- in the global variable Shm_isrstat
-@}
-@end group
-@end example
-
-@section Installing the MPCI ISR
-
-The @code{Shm_setvec} is invoked by the portable portion
-of the shared memory to install the interrupt service routine
-that is invoked when an incoming message is announced. Some
-target boards support an interprocessor interrupt or mailbox
-scheme and this is where the ISR for that interrupt would be
-installed.
-
-On an interrupt driven node, this routine would be implemented
-as follows:
-
-@example
-@group
-void Shm_setvec( void )
-@{
- install the interprocessor communications ISR
-@}
-@end group
-@end example
-
-On a polled node, this routine would be empty.
-
diff --git a/doc/bsp_howto/stamp-vti b/doc/bsp_howto/stamp-vti
deleted file mode 100644
index 5634951ec8..0000000000
--- a/doc/bsp_howto/stamp-vti
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 24 February 2013
-@set UPDATED-MONTH February 2013
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0
diff --git a/doc/bsp_howto/support.t b/doc/bsp_howto/support.t
deleted file mode 100644
index 47ec92b2be..0000000000
--- a/doc/bsp_howto/support.t
+++ /dev/null
@@ -1,363 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2011.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Miscellaneous Support Files
-
-@section GCC Compiler Specifications File
-
-The file @code{bsp_specs} defines the start files and libraries
-that are always used with this BSP. The format of this file
-is admittedly cryptic and this document will make no attempt
-to explain it completely. Below is the @code{bsp_specs}
-file from the PowerPC psim BSP:
-
-@example
-@group
-%rename endfile old_endfile
-%rename startfile old_startfile
-%rename link old_link
-
-*startfile:
-%@{!qrtems: %(old_startfile)@} \
-%@{!nostdlib: %@{qrtems: ecrti%O%s rtems_crti%O%s crtbegin.o%s start.o%s@}@}
-
-*link:
-%@{!qrtems: %(old_link)@} %@{qrtems: -Qy -dp -Bstatic -e _start -u __vectors@}
-
-*endfile:
-%@{!qrtems: %(old_endfile)@} %@{qrtems: crtend.o%s ecrtn.o%s@}
-@end group
-@end example
-
-The first section of this file renames the built-in definition of
-some specification variables so they can be augmented without
-embedded their original definition. The subsequent sections
-specify what behavior is expected when the @code{-qrtems} option is specified.
-
-The @code{*startfile} section specifies that the BSP specific file
-@code{start.o} will be used instead of @code{crt0.o}. In addition,
-various EABI support files (@code{ecrti.o} etc.) will be linked in with
-the executable.
-
-The @code{*link} section adds some arguments to the linker when it is
-invoked by GCC to link an application for this BSP.
-
-The format of this file is specific to the GNU Compiler Suite. The
-argument used to override and extend the compiler built-in specifications
-is available in all recent GCC versions. The @code{-specs} option is
-present in all @code{egcs} distributions and @code{gcc} distributions
-starting with version 2.8.0.
-
-@section README Files
-
-Most BSPs provide one or more @code{README} files. Generally, there
-is a @code{README} file at the top of the BSP source. This file
-describes the board and its hardware configuration, provides vendor
-information, local configuration information, information on downloading
-code to the board, debugging, etc.. The intent of this
-file is to help someone begin to use the BSP faster.
-
-A @code{README} file in a BSP subdirectory typically explains something
-about the contents of that subdirectory in greater detail. For example,
-it may list the documentation available for a particular peripheral
-controller and how to obtain that documentation. It may also explain some
-particularly cryptic part of the software in that directory or provide
-rationale on the implementation.
-
-@section times
-
-This file contains the results of the RTEMS Timing Test Suite. It is
-in a standard format so that results from one BSP can be easily compared
-with those of another target board.
-
-If a BSP supports multiple variants, then there may be multiple @code{times}
-files. Usually these are named @code{times.VARIANTn}.
-
-@section Tools Subdirectory
-
-Some BSPs provide additional tools that aid in using the target board.
-These tools run on the development host and are built as part of building
-the BSP. Most common is a script to automate running the RTEMS Test Suites
-on the BSP. Examples of this include:
-
-@itemize @bullet
-
-@item @code{powerpc/psim} includes scripts to ease use of the simulator
-
-@item @code{m68k/mvme162} includes a utility to download across the
-VMEbus into target memory if the host is a VMEbus board in the same
-chasis.
-
-@end itemize
-
-@section bsp.h Include File
-
-The file @code{include/bsp.h} contains prototypes and definitions
-specific to this board. Every BSP is required to provide a @code{bsp.h}.
-The best approach to writing a @code{bsp.h} is copying an existing one
-as a starting point.
-
-Many @code{bsp.h} files provide prototypes of variables defined
-in the linker script (@code{linkcmds}).
-
-@section tm27.h Include File
-
-The @code{tm27} test from the RTEMS Timing Test Suite is designed to measure the length of time required to vector to and return from an interrupt handler. This test requires some help from the BSP to know how to cause and manipulate the interrupt source used for this measurement. The following is a list of these:
-
-@itemize @bullet
-@item @code{MUST_WAIT_FOR_INTERRUPT} - modifies behavior of @code{tm27}.
-
-@item @code{Install_tm27_vector} - installs the interrupt service
-routine for the Interrupt Benchmark Test (@code{tm27}).
-
-@item @code{Cause_tm27_intr} - generates the interrupt source
-used in the Interrupt Benchmark Test (@code{tm27}).
-
-@item @code{Clear_tm27_intr} - clears the interrupt source
-used in the Interrupt Benchmark Test (@code{tm27}).
-
-@item @code{Lower_tm27_intr} - lowers the interrupt mask so the
-interrupt source used in the Interrupt Benchmark Test (@code{tm27})
-can generate a nested interrupt.
-
-@end itemize
-
-All members of the Timing Test Suite are designed to run @b{WITHOUT}
-the Clock Device Driver installed. This increases the predictability
-of the tests' execution as well as avoids occassionally including the
-overhead of a clock tick interrupt in the time reported. Because of
-this it is sometimes possible to use the clock tick interrupt source
-as the source of this test interrupt. On other architectures, it is
-possible to directly force an interrupt to occur.
-
-@section Calling Overhead File
-
-The file @code{include/coverhd.h} contains the overhead associated
-with invoking each directive. This overhead consists of the execution
-time required to package the parameters as well as to execute the "jump to
-subroutine" and "return from subroutine" sequence. The intent of this
-file is to help separate the calling overhead from the actual execution
-time of a directive. This file is only used by the tests in the
-RTEMS Timing Test Suite.
-
-The numbers in this file are obtained by running the "Timer Overhead"
-@code{tmoverhd} test. The numbers in this file may be 0 and no
-overhead is subtracted from the directive execution times reported by
-the Timing Suite.
-
-There is a shared implementation of @code{coverhd.h} which sets all of
-the overhead constants to 0. On faster processors, this is usually the
-best alternative for the BSP as the calling overhead is extremely small.
-This file is located at:
-
-@example
-c/src/lib/libbsp/shared/include/coverhd.h
-@end example
-
-@section sbrk() Implementation
-
-Although nearly all BSPs give all possible memory to the C Program Heap
-at initialization, it is possible for a BSP to configure the initial
-size of the heap small and let it grow on demand. If the BSP wants
-to dynamically extend the heap used by the C Library memory allocation
-routines (i.e. @code{malloc} family), then the@code{sbrk} routine must
-be functional. The following is the prototype for this routine:
-
-@example
-void * sbrk(size_t increment)
-@end example
-
-The @code{increment} amount is based upon the @code{sbrk_amount}
-parameter passed to the @code{bsp_libc_init} during system initialization.
-
-@findex CONFIGURE_MALLOC_BSP_SUPPORTS_SBRK
-If your BSP does not want to support dynamic heap extension, then you do not have to do anything special. However, if you want to support @code{sbrk}, you must provide an implementation of this method and define @code{CONFIGURE_MALLOC_BSP_SUPPORTS_SBRK} in @code{bsp.h}. This informs @code{rtems/confdefs.h} to configure the Malloc Family Extensions which support @code{sbrk}.
-
-@section bsp_fatal_extension() - Cleanup the Hardware
-
-The @code{bsp_fatal_extension()} is an optional BSP specific initial extension
-invoked once a fatal system state is reached. Most of the BSPs use the same
-shared version of @code{bsp_fatal_extension()} that does nothing or performs a
-system reset. This implementation is located in the following file:
-
-@example
-c/src/lib/libbsp/shared/bspclean.c
-@end example
-
-The @code{bsp_fatal_extension()} routine can be used to return to a ROM
-monitor, insure that interrupt sources are disabled, etc.. This routine is the
-last place to ensure a clean shutdown of the hardware. The fatal source,
-internal error indicator, and the fatal code arguments are available to
-evaluate the fatal condition. All of the non-fatal shutdown sequences
-ultimately pass their exit status to @code{rtems_shutdown_executive} and this
-is what is passed to this routine in case the fatal source is
-RTEMS_FATAL_SOURCE_EXIT.
-
-On some BSPs, it prints a message indicating that the application
-completed execution and waits for the user to press a key before
-resetting the board. The PowerPC/gen83xx and PowerPC/gen5200 BSPs do
-this when they are built to support the FreeScale evaluation boards.
-This is convenient when using the boards in a development environment
-and may be disabled for production use.
-
-@section Configuration Macros
-
-Each BSP can define macros in bsp.h which alter some of the the default configuration parameters in @code{rtems/confdefs.h}. This section describes those macros:
-
-@itemize @bullet
-
-@findex CONFIGURE_MALLOC_BSP_SUPPORTS_SBRK
-@item @code{CONFIGURE_MALLOC_BSP_SUPPORTS_SBRK} must be defined if the
-BSP has proper support for @code{sbrk}. This is discussed in more detail
-in the previous section.
-
-@findex BSP_IDLE_TASK_BODY
-@item @code{BSP_IDLE_TASK_BODY} may be defined to the entry point of a
-BSP specific IDLE thread implementation. This may be overridden if the
-application provides its own IDLE task implementation.
-
-@findex BSP_IDLE_TASK_STACK_SIZE
-@item @code{BSP_IDLE_TASK_STACK_SIZE} may be defined to the desired
-default stack size for the IDLE task as recommended when using this BSP.
-
-@findex BSP_INTERRUPT_STACK_SIZE
-@item @code{BSP_INTERRUPT_STACK_SIZE} may be defined to the desired default interrupt stack size as recommended when using this BSP. This is sometimes required when the BSP developer has knowledge of stack intensive interrupt handlers.
-
-@findex BSP_ZERO_WORKSPACE_AUTOMATICALLY
-@item @code{BSP_ZERO_WORKSPACE_AUTOMATICALLY} is defined when the BSP
-requires that RTEMS zero out the RTEMS C Program Heap at initialization.
-If the memory is already zeroed out by a test sequence or boot ROM,
-then the boot time can be reduced by not zeroing memory twice.
-
-@findex BSP_DEFAULT_UNIFIED_WORK_AREAS
-@item @code{BSP_DEFAULT_UNIFIED_WORK_AREAS} is defined when the BSP
-recommends that the unified work areas configuration should always
-be used. This is desirable when the BSP is known to always have very
-little RAM and thus saving memory by any means is desirable.
-
-@end itemize
-
-@section set_vector() - Install an Interrupt Vector
-
-On targets with Simple Vectored Interrupts, the BSP must provide
-an implementation of the @code{set_vector} routine. This routine is
-responsible for installing an interrupt vector. It invokes the support
-routines necessary to install an interrupt handler as either a "raw"
-or an RTEMS interrupt handler. Raw handlers bypass the RTEMS interrupt
-structure and are responsible for saving and restoring all their own
-registers. Raw handlers are useful for handling traps, debug vectors,
-etc..
-
-The @code{set_vector} routine is a central place to perform interrupt
-controller manipulation and encapsulate that information. It is usually
-implemented as follows:
-
-@example
-@group
-rtems_isr_entry set_vector( /* returns old vector */
- rtems_isr_entry handler, /* isr routine */
- rtems_vector_number vector, /* vector number */
- int type /* RTEMS or RAW intr */
-)
-@{
- if the type is RAW
- install the raw vector
- else
- use rtems_interrupt_catch to install the vector
-
- perform any interrupt controller necessary to unmask
- the interrupt source
-
- return the previous handler
-@}
-@end group
-@end example
-
-@b{NOTE:} The i386, PowerPC and ARM ports use a Programmable
-Interrupt Controller model which does not require the BSP to implement
-@code{set_vector}. BSPs for these architectures must provide a different
-set of support routines.
-
-@section Interrupt Delay Profiling
-
-The RTEMS profiling needs support by the BSP for the interrupt delay times. In
-case profiling is enabled via the RTEMS build configuration option
-@code{--enable-profiling} (in this case the pre-processor symbol
-@code{RTEMS_PROFILING} is defined) a BSP may provide data for the interrupt
-delay times. The BSP can feed interrupt delay times with the
-@code{_Profiling_Update_max_interrupt_delay()} function
-(@code{#include <rtems/score/profiling.h>}). For an example please have a look
-at @code{c/src/lib/libbsp/sparc/leon3/clock/ckinit.c}.
-
-@section Programmable Interrupt Controller API
-
-A BSP can use the PIC API to install Interrupt Service Routines through
-a set of generic methods. In order to do so, the header files
-libbsp/shared/include/irq-generic.h and libbsp/shared/include/irq-info.h
-must be included by the bsp specific irq.h file present in the include/
-directory. The irq.h acts as a BSP interrupt support configuration file which
-is used to define some important MACROS. It contains the declarations for
-any required global functions like bsp_interrupt_dispatch(). Thus later on,
-every call to the PIC interface requires including <bsp/irq.h>
-
-The generic interrupt handler table is intitalized by invoking the
-@code{bsp_interrupt_initialize()} method from bsp_start() in the bspstart.c
-file which sets up this table to store the ISR addresses, whose size is based
-on the definition of macros, BSP_INTERRUPT_VECTOR_MIN & BSP_INTERRUPT_VECTOR_MAX
-in include/bsp.h
-
-For the generic handler table to properly function, some bsp specific code is
-required, that should be present in irq/irq.c . The bsp-specific functions required
-to be writen by the BSP developer are :
-
-@itemize @bullet
-
-@findex bsp_interrupt_facility_initialize()
-@item @code{bsp_interrupt_facility_initialize()} contains bsp specific interrupt
-initialization code(Clear Pending interrupts by modifying registers, etc.).
-This method is called from bsp_interrupt_initialize() internally while setting up
-the table.
-
-@findex bsp_interrupt_handler_default()
-@item @code{bsp_interrupt_handler_default()} acts as a fallback handler when
-no ISR address has been provided corresponding to a vector in the table.
-
-@findex bsp_interrupt_dispatch()
-@item @code{bsp_interrupt_dispatch()} service the ISR by handling
-any bsp specific code & calling the generic method bsp_interrupt_handler_dispatch()
-which in turn services the interrupt by running the ISR after looking it up in
-the table. It acts as an entry to the interrupt switchboard, since the bsp
-branches to this function at the time of occurrence of an interrupt.
-
-@findex bsp_interrupt_vector_enable()
-@item @code{bsp_interrupt_vector_enable()} enables interrupts and is called in
-irq-generic.c while setting up the table.
-
-@findex bsp_interrupt_vector_disable()
-@item @code{bsp_interrupt_vector_disable()} disables interrupts and is called in
-irq-generic.c while setting up the table & during other important parts.
-
-@end itemize
-
-An interrupt handler is installed or removed with the help of the following functions :
-
-@example
-@group
-rtems_status_code rtems_interrupt_handler_install( /* returns status code */
- rtems_vector_number vector, /* interrupt vector */
- const char *info, /* custom identification text */
- rtems_option options, /* Type of Interrupt */
- rtems_interrupt_handler handler, /* interrupt handler */
- void *arg /* parameter to be passed to handler at the time of invocation */
-)
-
-rtems_status_code rtems_interrupt_handler_remove( /* returns status code */
- rtems_vector_number vector, /* interrupt vector */
- rtems_interrupt_handler handler, /* interrupt handler */
- void *arg /* parameter to be passed to handler */
-)
-
-@end group
-@end example
diff --git a/doc/bsp_howto/target.t b/doc/bsp_howto/target.t
deleted file mode 100644
index b2ccfe7ffc..0000000000
--- a/doc/bsp_howto/target.t
+++ /dev/null
@@ -1,236 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Target Dependent Files
-
-RTEMS has a multi-layered approach to portability. This is done to
-maximize the amount of software that can be reused. Much of the
-RTEMS source code can be reused on all RTEMS platforms. Other parts
-of the executive are specific to hardware in some sense.
-RTEMS classifies target dependent code based upon its dependencies
-into one of the following categories.
-
-@itemize @bullet
-@item CPU dependent
-@item Board dependent
-@item Peripheral dependent
-@end itemize
-
-@section CPU Dependent
-
-This class of code includes the foundation
-routines for the executive proper such as the context switch and
-the interrupt subroutine implementations. Sources for the supported
-processor families can be found in @code{cpukit/score/cpu}.
-A good starting point for a new family of processors is the
-@code{no_cpu} directory, which holds both prototypes and
-descriptions of each needed CPU dependent function.
-
-CPU dependent code is further subcategorized if the implementation is
-dependent on a particular CPU model. For example, the MC68000 and MC68020
-processors are both members of the m68k CPU family but there are significant
-differences between these CPU models which RTEMS must take into account.
-
-The source code found in the @code{cpukit/score/cpu} is required to
-only depend upon the CPU model variations that GCC distinguishes
-for the purposes of multilib'ing. Multilib is the term the GNU
-community uses to refer to building a single library source multiple
-times with different compiler options so the binary code generated
-is compatible. As an example, from GCC's perspective, many PowerPC
-CPU models are just a PPC603e. Remember that GCC only cares about
-the CPU code itself and need not be aware of any peripherals. In
-the embedded community, we are exposed to thousands of CPU models
-which are all based upon only a relative small number of CPU cores.
-
-Similarly for the SPARC/ERC32 BSP, the @code{RTEMS_CPU} is specified as
-@code{erc32} which is the name of the CPU model and BSP for this SPARC V7
-system on chip. But the multilib variant used is actually @code{v7}
-which indicates the ERC32 CPU core is a SPARC V7.
-
-@section Board Dependent
-
-This class of code provides the most specific glue between RTEMS and
-a particular board. This code is represented by the Board Support Packages
-and associated Device Drivers. Sources for the BSPs included in the
-RTEMS distribution are located in the directory @code{c/src/lib/libbsp}.
-The BSP source directory is further subdivided based on the CPU family
-and BSP.
-
-Some BSPs may support multiple board models within a single board family.
-This is necessary when the board supports multiple variants on a
-single base board. For example, the Motorola MVME162 board family has a
-fairly large number of variations based upon the particular CPU model
-and the peripherals actually placed on the board.
-
-@section Peripheral Dependent
-
-This class of code provides a reusable library of peripheral device
-drivers which can be tailored easily to a particular board. The
-libchip library is a collection of reusable software objects that
-correspond to standard controllers. Just as the hardware engineer
-chooses a standard controller when designing a board, the goal of
-this library is to let the software engineer do the same thing.
-
-The source code for the reusable peripheral driver library may be found
-in the directory @code{c/src/lib/libchip}. The source code is further
-divided based upon the class of hardware. Example classes include serial
-communications controllers, real-time clocks, non-volatile memory, and
-network controllers.
-
-@section Questions to Ask
-
-When evaluating what is required to support RTEMS applications on
-a particular target board, the following questions should be asked:
-
-@itemize @bullet
-
-@item Does a BSP for this board exist?
-
-@item Does a BSP for a similar board exists?
-
-@item Is the board's CPU supported?
-
-@end itemize
-
-If there is already a BSP for the board, then things may already be ready
-to start developing application software. All that remains is to verify
-that the existing BSP provides device drivers for all the peripherals
-on the board that the application will be using. For example, the application
-in question may require that the board's Ethernet controller be used and
-the existing BSP may not support this.
-
-If the BSP does not exist and the board's CPU model is supported, then
-examine the reusable chip library and existing BSPs for a close match.
-Other BSPs and libchip provide starting points for the development
-of a new BSP. It is often possible to copy existing components in
-the reusable chip library or device drivers from BSPs from different
-CPU families as the starting point for a new device driver.
-This will help reduce the development effort required.
-
-If the board's CPU family is supported but the particular CPU model on
-that board is not, then the RTEMS port to that CPU family will have to
-be augmented. After this is done, development of the new BSP can proceed.
-
-Otherwise both CPU dependent code and the BSP will have to be written.
-
-This type of development often requires specialized skills. If
-you need help in making these modifications to RTEMS, please
-consider using one of the RTEMS Service Providers. The current
-list of these is at @uref{@value{RTEMSHTTPURL}/support.html}.
-
-@section CPU Dependent Executive Files
-
-The CPU dependent files in the RTEMS executive source code are found
-in the following directory:
-
-@example
-cpukit/score/cpu/@i{CPU}
-@end example
-
-where @i{CPU} is replaced with the CPU family name.
-
-Within each CPU dependent directory inside the executive proper is a
-file named @code{@i{CPU}.h} which contains information about each of the
-supported CPU models within that family.
-
-@section CPU Dependent Support Files
-
-The CPU dependent support files contain routines which aid in the development
-of applications using that CPU family. For example, the support routines
-may contain standard trap handlers for alignment or floating point exceptions
-or device drivers for peripheral controllers found on the CPU itself.
-This class of code may be found in the following directory:
-
-@example
-c/src/lib/libcpu/@i{CPU}
-@end example
-
-CPU model dependent support code is found in the following directory:
-
-@example
-c/src/lib/libcpu/@i{CPU}/@i{CPU_MODEL}
-@end example
-
-@i{CPU_MODEL} may be a specific CPU model name or a name indicating a CPU
-core or a set of related CPU models. The file @code{configure.ac} in each
-@code{c/src/lib/libcpu/@i{CPU}} directory contains the logic which enables
-the appropriate subdirectories for the specific CPU model your BSP has.
-
-@section Board Support Package Structure
-
-The BSPs are all under the @code{c/src/lib/libbsp} directory. Below this
-directory, there is a subdirectory for each CPU family. Each BSP
-is found under the subdirectory for the appropriate processor
-family (m68k, powerpc, etc.). In addition, there is source code
-available which may be shared across all BSPs regardless of
-the CPU family or just across BSPs within a single CPU family. This
-results in a BSP using the following directories:
-
-@example
-c/src/lib/libbsp/shared
-c/src/lib/libbsp/@i{CPU}/shared
-c/src/lib/libbsp/@i{CPU}/@i{BSP}
-@end example
-
-Under each BSP specific directory, there is a collection of
-subdirectories. For commonly provided functionality, the BSPs
-follow a convention on subdirectory naming. The following list
-describes the commonly found subdirectories under each BSP.
-
-@itemize @bullet
-
-@item @b{console}:
-is technically the serial driver for the BSP rather
-than just a console driver, it deals with the board
-UARTs (i.e. serial devices).
-
-@item @b{clock}:
-support for the clock tick -- a regular time basis to the kernel.
-
-@item @b{timer}:
-support of timer devices.
-
-@item @b{rtc} or @code{tod}:
-support for the hardware real-time clock.
-
-@item @b{nvmem}:
-support for non-volatile memory such as EEPROM or Flash.
-
-@item @b{network}:
-the Ethernet driver.
-
-@item @b{shmsupp}:
-support of shared memory driver MPCI layer in a multiprocessor system,
-
-@item @b{include}:
-include files for this BSP.
-
-@item @b{gnatsupp}:
-BSP specific support for the GNU Ada run-time. Each BSP that wishes
-to have the possibility to map faults or exceptions into Ada language
-exceptions or hardware interrupts into Ada interrupt tasks must provide
-this support.
-
-@end itemize
-
-There may be other directories in the BSP tree and the name should
-be indicative of the functionality of the code within that directory.
-
-The build order of the BSP is determined by the Makefile structure.
-This structure is discussed in more detail in the @ref{Makefiles}
-chapter.
-
-@b{NOTE:} This manual refers to the gen68340 BSP for numerous concrete
-examples. You should have a copy of the gen68340 BSP available while
-reading this piece of documentation. This BSP is located in the
-following directory:
-
-@example
-c/src/lib/libbsp/m68k/gen68340
-@end example
-
-Later in this document, the $BSP340_ROOT label will be used
-to refer to this directory.
-
diff --git a/doc/bsp_howto/timer.t b/doc/bsp_howto/timer.t
deleted file mode 100644
index fdefd72971..0000000000
--- a/doc/bsp_howto/timer.t
+++ /dev/null
@@ -1,103 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Timer Driver
-
-The timer driver is primarily used by the RTEMS Timing Tests.
-This driver provides as accurate a benchmark timer as possible.
-It typically reports its time in microseconds, CPU cycles, or
-bus cycles. This information can be very useful for determining
-precisely what pieces of code require optimization and to measure the
-impact of specific minor changes.
-
-The gen68340 BSP also uses the Timer Driver to support a high performance
-mode of the on-CPU UART.
-
-@section Benchmark Timer
-
-The RTEMS Timing Test Suite requires a benchmark timer. The
-RTEMS Timing Test Suite is very helpful for determining
-the performance of target hardware and comparing its performance
-to that of other RTEMS targets.
-
-This section describes the routines which are assumed to exist by
-the RTEMS Timing Test Suite. The names used are @b{EXACTLY} what
-is used in the RTEMS Timing Test Suite so follow the naming convention.
-
-@subsection benchmark_timer_initialize
-
-Initialize the timer source.
-
-@example
-void benchmark_timer_initialize(void)
-@{
- initialize the benchmark timer
-@}
-@end example
-
-@subsection Read_timer
-
-The @code{benchmark_timer_read} routine returns the number of benchmark
-time units (typically microseconds) that have elapsed since the last
-call to @code{benchmark_timer_initialize}.
-
-@example
-benchmark_timer_t benchmark_timer_read(void)
-@{
- stop time = read the hardware timer
- if the subtract overhead feature is enabled
- subtract overhead from stop time
- return the stop time
-@}
-@end example
-
-Many implementations of this routine subtract the overhead required
-to initialize and read the benchmark timer. This makes the times reported
-more accurate.
-
-Some implementations report 0 if the harware timer value change is
-sufficiently small. This is intended to indicate that the execution time
-is below the resolution of the timer.
-
-@subsection benchmark_timer_disable_subtracting_average_overhead
-
-This routine is invoked by the "Check Timer" (@code{tmck}) test in the
-RTEMS Timing Test Suite. It makes the @code{benchmark_timer_read}
-routine NOT subtract the overhead required
-to initialize and read the benchmark timer. This is used
-by the @code{tmoverhd} test to determine the overhead
-required to initialize and read the timer.
-
-@example
-void benchmark_timer_disable_subtracting_average_overhead(bool find_flag)
-@{
- disable the subtract overhead feature
-@}
-@end example
-
-The @code{benchmark_timer_find_average_overhead} variable is used to
-indicate the state of the "subtract overhead feature".
-
-@section gen68340 UART FIFO Full Mode
-
-The gen68340 BSP is an example of the use of the timer to support the UART
-input FIFO full mode (FIFO means First In First Out and roughly means
-buffer). This mode consists in the UART raising an interrupt when n
-characters have been received (@i{n} is the UART's FIFO length). It results
-in a lower interrupt processing time, but the problem is that a scanf
-primitive will block on a receipt of less than @i{n} characters. The solution
-is to set a timer that will check whether there are some characters
-waiting in the UART's input FIFO. The delay time has to be set carefully
-otherwise high rates will be broken:
-
-@itemize @bullet
-
-@item if no character was received last time the interrupt subroutine was
-entered, set a long delay,
-
-@item otherwise set the delay to the delay needed for @i{n} characters
-receipt.
-
-@end itemize
diff --git a/doc/bsp_howto/version.texi b/doc/bsp_howto/version.texi
deleted file mode 100644
index c0e4bbb7b6..0000000000
--- a/doc/bsp_howto/version.texi
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 17 July 2015
-@set UPDATED-MONTH July 2015
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0
diff --git a/doc/common/cpright.texi b/doc/common/cpright.texi
deleted file mode 100644
index 5a0bd426a0..0000000000
--- a/doc/common/cpright.texi
+++ /dev/null
@@ -1,39 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2015.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@c
-@c The following puts a space somewhere on an otherwise empty page so we
-@c can force the copyright description onto a left hand page.
-@c
-
-@tex
-{\parskip=0pt \hfill On-Line Applications Research Corporation\par \hfill
-\TeX{}info \texinfoversion\par }
-@end tex
-
-@vskip 0pt plus 1filll
-COPYRIGHT @copyright{} 1988 - 2015.@*
-On-Line Applications Research Corporation (OAR).@*
-
-The authors have used their best efforts in preparing
-this material. These efforts include the development, research,
-and testing of the theories and programs to determine their
-effectiveness. No warranty of any kind, expressed or implied,
-with regard to the software or the material contained in this
-document is provided. No liability arising out of the
-application or use of any product described in this document is
-assumed. The authors reserve the right to revise this material
-and to make changes from time to time in the content hereof
-without obligation to notify anyone of such revision or changes.
-
-The RTEMS Project is hosted at @uref{http://www.rtems.org}. Any
-inquiries concerning RTEMS, its related support components, or its
-documentation should be directed to the Community Project hosted at
-@uref{http://www.rtems.org}.
-
-Any inquiries for commercial services including training, support, custom
-development, application development assistance should be directed to
-@uref{http://www.rtems.com}.
-
diff --git a/doc/common/opengroup_manpage_acknowledgement.texi b/doc/common/opengroup_manpage_acknowledgement.texi
deleted file mode 100644
index d840fff5fa..0000000000
--- a/doc/common/opengroup_manpage_acknowledgement.texi
+++ /dev/null
@@ -1,32 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2009.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@c
-@c The RTEMS Project has been granted permission from The Open Group
-@c IEEE to excerpt and use portions of the POSIX standards documents
-@c in the RTEMS POSIX API User's Guide and RTEMS Shell User's Guide.
-@c We have to include a specific acknowledgement paragraph in these
-@c documents (e.g. preface or copyright page) and another slightly
-@c different paragraph for each manual page that excerpts and uses
-@c text from the standards.
-@c
-@c This file should help ensure that the paragraphs are consistent
-@c and not duplicated.
-@c
-
-@quotation
-Portions of this text are reprinted and reproduced in electronic
-form from IEEE Std 1003.1, 2004 Edition, Standard for Information
-Technology — Operating System Interface (POSIX), The Open
-Group Base Specifications Issue 6, Copyright © 2001-2004 by the
-Institute of Electrical and Electronics Engineers, Inc and The
-Open Group. In the event of any discrepancy between this version
-and the original IEEE and The Open Group Standard, the original
-IEEE and The Open Group Standard is the referee document. The
-original Standard can be obtained online at
-@uref{http://www.opengroup.org/unix/online.html,
-http://www.opengroup.org/unix/online.html}.
-@end quotation
-
diff --git a/doc/common/opengroup_preface_acknowledgement.texi b/doc/common/opengroup_preface_acknowledgement.texi
deleted file mode 100644
index e740114db2..0000000000
--- a/doc/common/opengroup_preface_acknowledgement.texi
+++ /dev/null
@@ -1,37 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2009.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@c
-@c The RTEMS Project has been granted permission from The Open Group
-@c IEEE to excerpt and use portions of the POSIX standards documents
-@c in the RTEMS POSIX API User's Guide and RTEMS Shell User's Guide.
-@c We have to include a specific acknowledgement paragraph in these
-@c documents (e.g. preface or copyright page) and another slightly
-@c different paragraph for each manual page that excerpts and uses
-@c text from the standards.
-@c
-@c This file should help ensure that the paragraphs are consistent
-@c and not duplicated
-@c
-
-@quotation
-The Institute of Electrical and Electronics Engineers, Inc and The
-Open Group, have given us permission to reprint portions of their
-documentation.
-
-Portions of this text are reprinted and reproduced in electronic
-form from IEEE Std 1003.1, 2004 Edition, Standard for Information
-Technology — Operating System Interface (POSIX), The Open
-Group Base Specifications Issue 6, Copyright © 2001-2004 by the
-Institute of Electrical and Electronics Engineers, Inc and The
-Open Group. In the event of any discrepancy between this version
-and the original IEEE and The Open Group Standard, the original
-IEEE and The Open Group Standard is the referee document. The
-original Standard can be obtained online at
-@uref{http://www.opengroup.org/unix/online.html,
-http://www.opengroup.org/unix/online.html}.
-
-This notice shall appear on any product containing this material.
-@end quotation
diff --git a/doc/common/rtems.texi.in b/doc/common/rtems.texi.in
deleted file mode 100644
index 063e5e90ee..0000000000
--- a/doc/common/rtems.texi.in
+++ /dev/null
@@ -1,6 +0,0 @@
-@set RTEMSUSERS users@@rtems.org
-@set RTEMSDEVEL devel@@rtems.org
-@set RTEMSHTTPURL http://www.rtems.org
-@set RTEMSPREFIX @RTEMSPREFIX@
-@set RTEMSAPI @RTEMSAPI@
-@set RTEMSRPMPREFIX @RTEMSRPMPREFIX@
diff --git a/doc/common/setup.texi b/doc/common/setup.texi
deleted file mode 100644
index 1e34e8e44d..0000000000
--- a/doc/common/setup.texi
+++ /dev/null
@@ -1,60 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@c
-@c The following determines which set of the tables and figures we will use.
-@c We default to ASCII but if available TeX or HTML versions will
-@c be used instead.
-@c
-
-@set use-ascii
-@c @clear use-html
-@c @clear use-tex
-
-@iftex
-@clear use-ascii
-@clear use-html
-@set use-tex
-@end iftex
-
-@ifhtml
-@clear use-ascii
-@clear use-tex
-@set use-html
-@end ifhtml
-
-@c
-@c The following variable says to use texinfo or html for the two column
-@c texinfo tables. For somethings the format does not look good in html.
-@c With our adjustment to the left column in TeX, it nearly always looks
-@c good printed.
-@c
-@ifset use-ascii
-@set use-texinfo-tables
-@end ifset
-@ifset use-tex
-@set use-texinfo-tables
-@end ifset
-@ifset use-html
-@clear use-texinfo-tables
-@end ifset
-
-@c
-@c Custom whitespace adjustments. We could fiddle a bit more.
-@c
-@tex
-\global\parindent 0in
-\global\chapheadingskip = 15pt plus 4pt minus 2pt
-\global\secheadingskip = 12pt plus 4pt minus 2pt
-\global\subsecheadingskip = 9pt plus 4pt minus 2pt
-\global\hbadness = 10000
-\global\tolerance = 6000
-\global\tableindent = 1.5in
-\global\itemindent = 0.5in
-
-@ifclear smallbook
-\global\parskip 6pt plus 1pt
-@end ifclear
-@end tex
diff --git a/doc/common/treedef.tex b/doc/common/treedef.tex
deleted file mode 100644
index 26eda0c28c..0000000000
--- a/doc/common/treedef.tex
+++ /dev/null
@@ -1,317 +0,0 @@
-% treedef.tex
-%
-% These definitions for tree macros are taken from "Trees in TeX",
-% by David Eppstein, as published in TUGboat 6#1, March 1985.
-% David Eppstein's address (as of 15 June 1988) is
-% Computer Science Department
-% Columbia University
-% New York, NY 10027
-% Eppstein@cs.Columbia.edu
-%
-% Tree -- a macro to make aligned (horizontal) trees in TeX
-%
-% Input is of the form
-% \tree
-% item
-% \subtree
-% \leaf{item}
-% .
-% .
-% .
-% \endsubtree
-% \subtree
-% .
-% .
-% .
-% \endsubtree
-% \endsubtree
-% \endtree
-%
-% Nesting is to any level. \leaf is defined as a subtree of one item:
-% \def\leaf#1{\subtree#1\endsubtree}.
-%
-% A structure:
-% \subtree
-% item_part1
-% item_part2
-% .
-% .
-% .
-%
-% will print item_part2 directly below item_part1 as a single item
-% as if they were in a \box.
-%
-% The macro is a 3-pass macro. On the first pass it sets up a data
-% structure from the \subtree ... \endsubtree definitions. On the second pass
-% it recursively calculates the width of each level of the tree. On the third
-% pass it sets up the boxes, glue and rules.
-%
-% By David Eppstein, TUGboat, vol. 6 (1985), no. 1, pp. 31--35.
-% Transcribed by Margaret Kromer (peg), Feb., 1986.
-%
-% Pass 1
-% At the end of pass 1, the tree is coded as a nested collection of \hboxes
-% and \vboxes.
-\newbox\treebox\newcount\treeboxcnt
-\def\tree{\message{Begin tree}\treeboxcnt=1\global\setbox\treebox=\boxtree}
-\def\subtree{\ettext \advance\treeboxcnt by 1 \boxtree}
-\def\leaf#1{\subtree#1\endsubtree}
-\def\endsubtree{\ettext \egroup \advance\treeboxcnt-1{}%
- \ifnum\treeboxcnt=-1 \treeerrora\fi}
-\def\endtree{\endsubtree \ifnum\treeboxcnt>0 \treeerrorb\fi%
- \settreesizes \typesettree \message{-- end tree}}
-% Error messages for unbalanced tree
-\def\treeerrora{\errhelp=\treeerrorahelp%
- \errmessage{Unbalanced tree -- too many endsubtrees}}
-\newhelp\treeerrorahelp{There are more subtrees closed than opened}
-\def\treeerrorb{\errhelp=\treeerrorbhelp%
- \errmessage{Unbalanced tree -- not enough endsubtrees}}
-\newhelp\treeerrorbhelp{Not all the subtrees of the tree are closed.
-If you continue, you'll get some mysterious secondary errors.}
-% Set up \vbox containing root of tree
-\newif\iftreetext\treetextfalse % Whether still aligning text
-\def\boxtree{\hbox\bgroup % Start outer box of tree or subtree
- \baselineskip 2.5ex % Narrow line spacing slightly
- \tabskip 0pt % No spurious glue in alignment
- \vbox\bgroup % Start inner text \vbox
- \treetexttrue % Remember for \ettext
- \let\par\crcr \obeylines % New line breaks without explicit \cr
- \halign\bgroup##\hfil\cr} % Start alignment with simple template
-\def\ettext{\iftreetext % Are we still in inner text \vbox?
- \crcr\egroup \egroup \fi} % Yes, end alignment and box
-% Pass 2
-% Recursively calculate widths of tree with \setsizes; keep results in
-% \treesizes; \treewidth contains total width calculated so far. \treeworkbox
-% is workspace containing subtree being sized.
-\newbox\treeworkbox
-\def\cons#1#2{\edef#2{\xmark #1#2}} % Add something to start of list
-\def\car#1{\expandafter\docar#1\docar} % Take first element of list
-\def\docar\xmark#1\xmark#2\docar{#1} % ..by ignoring rest in expansion
-\def\cdr#1{\expandafter\docdr#1\docdr#1}% Similarly, drop first element
-\def\docdr\xmark#1\xmark#2\docdr#3{\def#3{\xmark #2}}
-\def\xmark{\noexpand\xmark} % List separator expands to self
-\def\nil{\xmark} % Empty list is just separator
-\def\settreesizes{\setbox\treeworkbox=\copy\treebox%
- \global\let\treesizes\nil \setsizes}
-\newdimen\treewidth % Width of this part of the tree
-\def\setsizes{\setbox\treeworkbox=\hbox\bgroup% Get a horiz list as a workspace
- \unhbox\treeworkbox\unskip % Take tree, unpack it into horiz list
- \inittreewidth % Get old width at this level
- \sizesubtrees % Recurse through all subtrees
- \sizelevel % Now set width from remaining \vbox
- \egroup} % All done, finish our \hbox
-\def\inittreewidth{\ifx\treesizes\nil % If this is the first at this level
- \treewidth=0pt % ..then we have no previous max width
- \else \treewidth=\car\treesizes % Otherwise take old max level width
- \global\cdr\treesizes % ..and advance level width storage
- \fi} % ..in preparation for next level.
-\def\sizesubtrees{\loop % For each box in horiz list (subtree)
- \setbox\treeworkbox=\lastbox \unskip % ..pull it off list and flush glue
- \ifhbox\treeworkbox \setsizes % If hbox, it's a subtree - recurse
- \repeat} % ..and loop; end loop on tree text
-\def\sizelevel{%
- \ifdim\treewidth<\wd\treeworkbox % If greater than previous maximum
- \treewidth=\wd\treeworkbox \fi % Then set max to new high
- \global\cons{\the\treewidth}\treesizes}% In either case, put back on list
-% Pass 3
-% Recursively typeset tree with \maketree by adding an \hbox containing
-% a subtree (in \treebox) to the horizontal list.
-\newdimen\treeheight % Height of this part of the tree
-\newif\ifleaf % Tree has no subtrees (is a leaf)
-\newif\ifbotsub % Bottom subtree of parent
-\newif\iftopsub % Top subtree of parent
-\def\typesettree{\medskip\maketree\medskip} % Make whole tree
-\def\maketree{\hbox{\treewidth=\car\treesizes % Get width at this level
- \cdr\treesizes % Set up width list for recursion
- \makesubtreebox\unskip % Set \treebox to text, make subtrees
- \ifleaf \makeleaf % No subtrees, add glue
- \else \makeparent \fi}} % Have subtrees, stick them at right
-{\catcode`@=11 % Be able to use \voidb@x
-\gdef\makesubtreebox{\unhbox\treebox % Open up tree or subtree
- \unskip\global\setbox\treebox\lastbox % Pick up very last box
- \ifvbox\treebox % If we're already at the \vbox
- \global\leaftrue \let\next\relax % ..then this is a leaf
- \else \botsubtrue % Otherwise, we have subtrees
- \setbox\treeworkbox\box\voidb@x % Init stack of processed subs
- \botsubtrue \let\next\makesubtree % ..and call \maketree on them
- \fi \next}} % Finish up for whichever it was
-\def\makesubtree{\setbox1\maketree % Call \maketree on this subtree
- \unskip\global\setbox\treebox\lastbox % Pick up box before it
- \treeheight=\ht1 % Get height of subtree we made
- \advance\treeheight 2ex % Add some room around the edges
- \ifhbox\treebox \topsubfalse % If picked up box is a \vbox,
- \else \topsubtrue \fi % ..this is the top, otherwise not
- \addsubtreebox % Stack subtree with the rest
- \iftopsub \global\leaffalse % If top, remember not a leaf
- \let\next\relax \else % ..(after recursion), set return
- \botsubfalse \let\next\makesubtree % Otherwise, we have more subtrees
- \fi \next} % Do tail recursion or return
-\def\addsubtreebox{\setbox\treeworkbox=\vbox{\subtreebox\unvbox\treeworkbox}}
-\def\subtreebox{\hbox\bgroup % Start \hbox of tree and lines
- \vbox to \treeheight\bgroup % Start \vbox for vertical rules
- \ifbotsub \iftopsub \vfil % If both bottom and top subtree
- \hrule width 0.4pt % ..vertical rule is just a dot
- \else \treehalfrule \fi \vfil % Bottom gets half-height rule
- \else \iftopsub \vfil \treehalfrule % Top gets half-height the other way
- \else \hrule width 0.4pt height \treeheight \fi\fi % Middle, full height
- \egroup % Finish vertical rule \vbox
- \treectrbox{\hrule width 1em}\hskip 0.2em\treectrbox{\box1}\egroup}
-\def\treectrbox#1{\vbox to \treeheight{\vfil #1\vfil}}
-\def\treehalfrule{\dimen\treeworkbox=\treeheight % Get total height
- \divide\dimen\treeworkbox 2%
- \advance\dimen\treeworkbox 0.2pt % Divide by two, add half horiz height
- \hrule width 0.4pt height \dimen\treeworkbox}% Make a vertical rule that high
-\def\makeleaf{\box\treebox} % Add leaf box to horiz list
-\def\makeparent{\ifdim\ht\treebox>%
- \ht\treeworkbox % If text is higher than subtrees
- \treeheight=\ht\treebox % ..use that height
- \else \treeheight=\ht\treeworkbox \fi % Otherwise use height of subtrees
- \advance\treewidth-\wd\treebox % Take remainder of level width
- \advance\treewidth 1em % ..after accounting for text and glue
- \treectrbox{\box\treebox}\hskip 0.2em % Add text, space before connection
-\treectrbox{\hrule width \treewidth}%
- \treectrbox{\box\treeworkbox}} % Add \hrule, subs
-
-************************************************
-% Plain TeX driver for tree.tex
-
-\def\uncatcodespecials{\catcode`@=12\def\do##1{\catcode`##1=12}\dospecials}
-\def\setupverbatim{\tt\obeylines\uncatcodespecials\obeyspaces}
-{\obeyspaces\global\let =\ }
-\def\beginshowoff{\par\begingroup\setupverbatim\doverbatim}
-{\catcode`\!=0 \catcode`\\=12
-!obeylines!gdef!doverbatim^^M#1\endshowoff{#1!endgroup!medbreak!filbreak%
-!smallskip}}
-
-% see The TeXbook, exercise 22.14
-%\input tree.tex
-\centerline{\bf TREE TREE}
-\bigskip
-\tree
- {Tree}
- Uses
- \subtree
- Computer
- Science
- \subtree
- Data
- Structures
- \leaf{Search Tree}
- \leaf{Priority Queue}
- \endsubtree
- \subtree
- Parsing
- \leaf{Parse Tree}
- \leaf{Symbol Table}
- \endsubtree
- \subtree
- Structured
- Programming
- \endsubtree
- \endsubtree
- \subtree
- Genealogy
- \leaf{Ancestors}
- \leaf{Descendants}
- \endsubtree
- \subtree
- Electrical
- Engineering
- \subtree
- Paper
- \leaf{{\it Vitae}}
- \leaf{Announcements}
- \leaf{Proposals}
- \leaf{\TeX{} Samples}
- \endsubtree
- \endsubtree
- \subtree
- Construction
- \leaf{Fences}
- \subtree
- Buildings
- \subtree
- Houses
- \leaf{Human}
- \leaf{Dog}
- \leaf{Bird}
- \leaf{Tree}
- \endsubtree
- \leaf{Barns}
- \leaf{Other}
- \endsubtree
- \leaf{\dots}
- \endsubtree
- \subtree
- Taxonomies
- \leaf{Tree Uses}
- \endsubtree
-\endtree
-
-\vskip.5truein
-\beginshowoff
-% see The TeXbook, exercise 22.14
-\input tree.tex
-\centerline{TREE TREE}
-\bigskip
-\tree
- Tree
- Uses
- \subtree
- Computer
- Science
- \subtree
- Data
- Structures
- \leaf{Search Tree}
- \leaf{Priority Queue}
- \endsubtree
- \subtree
- Parsing
- \leaf{Parse Tree}
- \leaf{Symbol Table}
- \endsubtree
- \subtree
- Structured
- Programming
- \endsubtree
- \endsubtree
- \subtree
- Genealogy
- \leaf{Ancestors}
- \leaf{Descendants}
- \endsubtree
- \subtree
- Electrical
- Engineering
- \subtree
- Paper
- \leaf{{\it Vitae}}
- \leaf{Announcements}
- \leaf{Proposals}
- \leaf{\TeX{} Samples}
- \endsubtree
- \endsubtree
- \subtree
- Construction
- \leaf{Fences}
- \subtree
- Buildings
- \subtree
- Houses
- \leaf{Human}
- \leaf{Dog}
- \leaf{Bird}
- \leaf{Tree}
- \endsubtree
- \leaf{Barns}
- \leaf{Other}
- \endsubtree
- \leaf{\dots}
- \endsubtree
- \subtree
- Taxonomies
- \leaf{Tree Uses}
- \endsubtree
-\endtree
-\endshowoff
diff --git a/doc/common/wksheets.t b/doc/common/wksheets.t
deleted file mode 100644
index 61a3d7485e..0000000000
--- a/doc/common/wksheets.t
+++ /dev/null
@@ -1,406 +0,0 @@
-@c ****** This comment is here to remind you not to edit the wksheets.t
-@c ****** in any directory but common.
-@c
-@c Figures ...
-@c RTEMS RAM Workspace Worksheet
-@c RTEMS Code Space Worksheet
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Memory Requirements
-
-@section Introduction
-
-Memory is typically a limited resource in real-time
-embedded systems, therefore, RTEMS can be configured to utilize
-the minimum amount of memory while meeting all of the
-applications requirements. Worksheets are provided which allow
-the RTEMS application developer to determine the amount of RTEMS
-code and RAM workspace which is required by the particular
-configuration. Also provided are the minimum code space,
-maximum code space, and the constant data space required by
-RTEMS.
-
-@section Data Space Requirements
-
-RTEMS requires a small amount of memory for its
-private variables. This data area must be in RAM and is
-separate from the RTEMS RAM Workspace. The following
-illustrates the data space required for all configurations of
-RTEMS:
-
-@itemize @bullet
-@item Data Space: RTEMS_DATA_SPACE
-@end itemize
-
-@section Minimum and Maximum Code Space Requirements
-
-A maximum configuration of RTEMS includes the core
-and all managers, including the multiprocessing manager.
-Conversely, a minimum configuration of RTEMS includes only the
-core and the following managers: initialization, task, interrupt
-and fatal error. The following illustrates the code space
-required by these configurations of RTEMS:
-
-@itemize @bullet
-@item Minimum Configuration: RTEMS_MINIMUM_CONFIGURATION
-@item Maximum Configuration: RTEMS_MAXIMUM_CONFIGURATION
-@end itemize
-
-@section RTEMS Code Space Worksheet
-
-The RTEMS Code Space Worksheet is a tool provided to
-aid the RTEMS application designer to accurately calculate the
-memory required by the RTEMS run-time environment. RTEMS allows
-the custom configuration of the executive by optionally
-excluding managers which are not required by a particular
-application. This worksheet provides the included and excluded
-size of each manager in tabular form allowing for the quick
-calculation of any custom configuration of RTEMS. The RTEMS
-Code Space Worksheet is below:
-
-@ifset use-ascii
-@page
-@end ifset
-@ifset use-tex
-@page
-@end ifset
-
-@page
-@center @b{RTEMS Code Space Worksheet}
-@sp 1
-
-@ifset use-ascii
-
-The following is a list of the components of the RTEMS code space. The first
-number in parentheses is the size when the component is included,
-while the second number indicates its size when not included. If the second
-number is "NA", then the component must always be included.
-
-@itemize @bullet
-@item Core (RTEMS_CORE_CODE_SIZE, NA)
-@item Initialization (RTEMS_INITIALIZATION_CODE_SIZE, NA)
-@item Task (RTEMS_TASK_CODE_SIZE, NA)
-@item Interrupt (RTEMS_INTERRUPT_CODE_SIZE, NA)
-@item Clock (RTEMS_CLOCK_CODE_SIZE, NA)
-@item Timer (RTEMS_TIMER_CODE_SIZE, RTEMS_TIMER_CODE_OPTSIZE)
-@item Semaphore (RTEMS_SEMAPHORE_CODE_SIZE, RTEMS_SEMAPHORE_CODE_OPTSIZE)
-@item Message (RTEMS_MESSAGE_CODE_SIZE, RTEMS_MESSAGE_CODE_OPTSIZE)
-@item Event (RTEMS_EVENT_CODE_SIZE, RTEMS_EVENT_CODE_OPTSIZE)
-@item Signal (RTEMS_SIGNAL_CODE_SIZE, RTEMS_SIGNAL_CODE_OPTSIZE)
-@item Partition (RTEMS_PARTITION_CODE_SIZE, RTEMS_PARTITION_CODE_OPTSIZE)
-@item Region (RTEMS_REGION_CODE_SIZE, RTEMS_REGION_CODE_OPTSIZE)
-@item Dual Ported Memory (RTEMS_DPMEM_CODE_SIZE, RTEMS_DPMEM_CODE_OPTSIZE)
-@item I/O (RTEMS_IO_CODE_SIZE, RTEMS_IO_CODE_OPTSIZE)
-@item Fatal Error (RTEMS_FATAL_ERROR_CODE_SIZE, NA)
-@item Rate Monotonic (RTEMS_RATE_MONOTONIC_CODE_SIZE, RTEMS_RATE_MONOTONIC_CODE_OPTSIZE)
-@item Multiprocessing (RTEMS_MULTIPROCESSING_CODE_SIZE, RTEMS_MULTIPROCESSING_CODE_OPTSIZE)
-@end itemize
-@end ifset
-
-@ifset use-tex
-
-@tex
-\line{\hskip 0.50in\vbox{\offinterlineskip\halign{
-\vrule\strut#&
-\hbox to 2.25in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 1.00in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 1.00in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 1.25in{\enskip\hfil#\hfil}&
-\vrule#\cr
-\noalign{\hrule}
-&\bf Component && \bf Included && \bf Not Included && \bf Size &\cr\noalign{\hrule}
-&Core && RTEMS_CORE_CODE_SIZE && NA && &\cr\noalign{\hrule}
-&Initialization && RTEMS_INITIALIZATION_CODE_SIZE && NA && &\cr\noalign{\hrule}
-&Task && RTEMS_TASK_CODE_SIZE && NA && &\cr\noalign{\hrule}
-&Interrupt && RTEMS_INTERRUPT_CODE_SIZE && NA && &\cr\noalign{\hrule}
-&Clock && RTEMS_CLOCK_CODE_SIZE && NA && &\cr\noalign{\hrule}
-&Timer && RTEMS_TIMER_CODE_SIZE && RTEMS_TIMER_CODE_OPTSIZE && &\cr\noalign{\hrule}
-&Semaphore && RTEMS_SEMAPHORE_CODE_SIZE && RTEMS_SEMAPHORE_CODE_OPTSIZE && &\cr\noalign{\hrule}
-&Message && RTEMS_MESSAGE_CODE_SIZE && RTEMS_MESSAGE_CODE_OPTSIZE && &\cr\noalign{\hrule}
-&Event && RTEMS_EVENT_CODE_SIZE && RTEMS_EVENT_CODE_OPTSIZE && &\cr\noalign{\hrule}
-&Signal && RTEMS_SIGNAL_CODE_SIZE && RTEMS_SIGNAL_CODE_OPTSIZE && &\cr\noalign{\hrule}
-&Partition && RTEMS_PARTITION_CODE_SIZE && RTEMS_PARTITION_CODE_OPTSIZE && &\cr\noalign{\hrule}
-&Region && RTEMS_REGION_CODE_SIZE && RTEMS_REGION_CODE_OPTSIZE && &\cr\noalign{\hrule}
-&Dual Ported Memory && RTEMS_DPMEM_CODE_SIZE && RTEMS_DPMEM_CODE_OPTSIZE && &\cr\noalign{\hrule}
-&I/O && RTEMS_IO_CODE_SIZE && RTEMS_IO_CODE_OPTSIZE && &\cr\noalign{\hrule}
-&Fatal Error && RTEMS_FATAL_ERROR_CODE_SIZE && NA && &\cr\noalign{\hrule}
-&Rate Monotonic && RTEMS_RATE_MONOTONIC_CODE_SIZE && RTEMS_RATE_MONOTONIC_CODE_OPTSIZE && &\cr\noalign{\hrule}
-&Multiprocessing && RTEMS_MULTIPROCESSING_CODE_SIZE && RTEMS_MULTIPROCESSING_CODE_OPTSIZE && &\cr\noalign{\hrule}
-&\multispan 5 \bf\hfil Total Code Space Requirements\qquad\hfil&&&\cr\noalign{\hrule}
-}}\hfil}
-@end tex
-@end ifset
-
-@ifset use-html
-@html
-<CENTER>
- <TABLE COLS=4 WIDTH="80%" BORDER=2>
-<TR><TD ALIGN=center><STRONG>Component</STRONG></TD>
- <TD ALIGN=center><STRONG>Included</STRONG></TD>
- <TD ALIGN=center><STRONG>Not Included</STRONG></TD>
- <TD ALIGN=center><STRONG>Size</STRONG></TD></TR>
-<TR><TD ALIGN=center>Core</TD>
- <TD ALIGN=center>RTEMS_CORE_CODE_SIZE</TD>
- <TD ALIGN=center>NA</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=center>Initialization</TD>
- <TD ALIGN=center>RTEMS_INITIALIZATION_CODE_SIZE</TD>
- <TD ALIGN=center>NA</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=center>Task</TD>
- <TD ALIGN=center>RTEMS_TASK_CODE_SIZE</TD>
- <TD ALIGN=center>NA</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=center>Interrupt</TD>
- <TD ALIGN=center>RTEMS_INTERRUPT_CODE_SIZE</TD>
- <TD ALIGN=center>NA</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=center>Clock</TD>
- <TD ALIGN=center>RTEMS_CLOCK_CODE_SIZE</TD>
- <TD ALIGN=center>NA</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=center>Timer</TD>
- <TD ALIGN=center>RTEMS_TIMER_CODE_SIZE</TD>
- <TD ALIGN=center>RTEMS_TIMER_CODE_OPTSIZE</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=center>Semaphore</TD>
- <TD ALIGN=center>RTEMS_SEMAPHORE_CODE_SIZE</TD>
- <TD ALIGN=center>RTEMS_SEMAPHORE_CODE_OPTSIZE</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=center>Message</TD>
- <TD ALIGN=center>RTEMS_MESSAGE_CODE_SIZE</TD>
- <TD ALIGN=center>RTEMS_MESSAGE_CODE_OPTSIZE</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=center>Event</TD>
- <TD ALIGN=center>RTEMS_EVENT_CODE_SIZE</TD>
- <TD ALIGN=center>RTEMS_EVENT_CODE_OPTSIZE</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=center>Signal</TD>
- <TD ALIGN=center>RTEMS_SIGNAL_CODE_SIZE</TD>
- <TD ALIGN=center>RTEMS_SIGNAL_CODE_OPTSIZE</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=center>Partition</TD>
- <TD ALIGN=center>RTEMS_PARTITION_CODE_SIZE</TD>
- <TD ALIGN=center>RTEMS_PARTITION_CODE_OPTSIZE</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=center>Region</TD>
- <TD ALIGN=center>RTEMS_REGION_CODE_SIZE</TD>
- <TD ALIGN=center>RTEMS_REGION_CODE_OPTSIZE</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=center>Dual Ported Memory</TD>
- <TD ALIGN=center>RTEMS_DPMEM_CODE_SIZE</TD>
- <TD ALIGN=center>RTEMS_DPMEM_CODE_OPTSIZE</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=center>I/O</TD>
- <TD ALIGN=center>RTEMS_IO_CODE_SIZE</TD>
- <TD ALIGN=center>RTEMS_IO_CODE_OPTSIZE</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=center>Fatal Error</TD>
- <TD ALIGN=center>RTEMS_FATAL_ERROR_CODE_SIZE</TD>
- <TD ALIGN=center>NA</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=center>Rate Monotonic</TD>
- <TD ALIGN=center>RTEMS_RATE_MONOTONIC_CODE_SIZE</TD>
- <TD ALIGN=center>RTEMS_RATE_MONOTONIC_CODE_OPTSIZE</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=center>Multiprocessing</TD>
- <TD ALIGN=center>RTEMS_MULTIPROCESSING_CODE_SIZE</TD>
- <TD ALIGN=center>RTEMS_MULTIPROCESSING_CODE_OPTSIZE</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=center COLSPAN=3>
- <STRONG>Total Code Space Requirements</STRONG></TD>
- <TD><BR></TD></TR>
- </TABLE>
-</CENTER>
-@end html
-@end ifset
-
-@page
-
-@c ****** Next node is set by a sed script in the document Makefile.
-@c ****** This comment is here to remind you not to edit the wksheets.t
-@c ****** in any directory but common.
-
-@section RTEMS RAM Workspace Worksheet
-
-The RTEMS RAM Workspace Worksheet is a tool provided
-to aid the RTEMS application designer to accurately calculate
-the minimum memory block to be reserved for RTEMS use. This
-worksheet provides equations for calculating the amount of
-memory required based upon the number of objects configured,
-whether for single or multiple processor versions of the
-executive. This information is presented in tabular form, along
-with the fixed system requirements, allowing for quick
-calculation of any application defined configuration of RTEMS.
-The RTEMS RAM Workspace Worksheet is provided below:
-
-@ifset use-ascii
-@page
-@end ifset
-@ifset use-tex
-@sp 2
-@end ifset
-
-@center @b{RTEMS RAM Workspace Worksheet}
-@sp 2
-
-@ifset use-ascii
-The total RTEMS RAM Workspace required is the sum of the following:
-
-@itemize @bullet
-@item maximum_tasks * RTEMS_BYTES_PER_TASK
-@item maximum_timers * RTEMS_BYTES_PER_TIMER
-@item maximum_semaphores * RTEMS_BYTES_PER_SEMAPHORE
-@item maximum_message_queues * RTEMS_BYTES_PER_MESSAGE_QUEUE
-@item maximum_regions * RTEMS_BYTES_PER_REGION
-@item maximum_partitions * RTEMS_BYTES_PER_PARTITION
-@item maximum_ports * RTEMS_BYTES_PER_PORT
-@item maximum_periods * RTEMS_BYTES_PER_PERIOD
-@item maximum_extensions * RTEMS_BYTES_PER_EXTENSION
-@item Floating Point Tasks * RTEMS_BYTES_PER_FP_TASK
-@item Task Stacks
-@item maximum_nodes * RTEMS_BYTES_PER_NODE
-@item maximum_global_objects * RTEMS_BYTES_PER_GLOBAL_OBJECT
-@item maximum_proxies * RTEMS_BYTES_PER_PROXY
-@item Fixed System Requirements of RTEMS_BYTES_OF_FIXED_SYSTEM_REQUIREMENTS
-@end itemize
-@end ifset
-
-@ifset use-tex
-@tex
-\line{\hskip 0.75in\vbox{\offinterlineskip\halign{
-\vrule\strut#&
-\hbox to 3.0in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 0.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 1.25in{\enskip\hfil#\hfil}&
-\vrule#\cr
-\noalign{\hrule}
-& \bf Description && \bf Equation && \bf Bytes Required &\cr\noalign{\hrule}
-& maximum\_tasks && * RTEMS_BYTES_PER_TASK = &&&\cr\noalign{\hrule}
-& maximum\_timers && * RTEMS_BYTES_PER_TIMER = &&&\cr\noalign{\hrule}
-& maximum\_semaphores && * RTEMS_BYTES_PER_SEMAPHORE = &&&\cr\noalign{\hrule}
-& maximum\_message\_queues && * RTEMS_BYTES_PER_MESSAGE_QUEUE = &&&\cr\noalign{\hrule}
-& maximum\_regions && * RTEMS_BYTES_PER_REGION = &&&\cr\noalign{\hrule}
-& maximum\_partitions && * RTEMS_BYTES_PER_PARTITION = &&&\cr\noalign{\hrule}
-& maximum\_ports && * RTEMS_BYTES_PER_PORT = &&&\cr\noalign{\hrule}
-& maximum\_periods && * RTEMS_BYTES_PER_PERIOD = &&&\cr\noalign{\hrule}
-& maximum\_extensions && * RTEMS_BYTES_PER_EXTENSION = &&&\cr\noalign{\hrule}
-& Floating Point Tasks && * RTEMS_BYTES_PER_FP_TASK = &&&\cr\noalign{\hrule}
-& Task Stacks &&\hskip 2.3em=&&&\cr\noalign{\hrule}
-& Total Single Processor Requirements &&&&&\cr\noalign{\hrule}
-}}\hfil}
-
-\line{\hskip 0.75in\vbox{\offinterlineskip\halign{
-\vrule\strut#&
-\hbox to 3.0in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 0.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 1.25in{\enskip\hfil#\hfil}&
-\vrule#\cr
-\noalign{\hrule}
-& \bf Description && \bf Equation && \bf Bytes Required &\cr\noalign{\hrule}
-& maximum\_nodes && * RTEMS_BYTES_PER_NODE = &&&\cr\noalign{\hrule}
-& maximum\_global\_objects && * RTEMS_BYTES_PER_GLOBAL_OBJECT = &&&\cr\noalign{\hrule}
-& maximum\_proxies && * RTEMS_BYTES_PER_PROXY = &&&\cr\noalign{\hrule}
-}}\hfil}
-
-\line{\hskip 0.75in\vbox{\offinterlineskip\halign{
-\vrule\strut#&
-\hbox to 3.0in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 0.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 1.25in{\enskip\hfil#\hfil}&
-\vrule#\cr
-\noalign{\hrule}
-& Total Multiprocessing Requirements &&&&&\cr\noalign{\hrule}
-& Fixed System Requirements && RTEMS_BYTES_OF_FIXED_SYSTEM_REQUIREMENTS &&&\cr\noalign{\hrule}
-& Total Single Processor Requirements &&&&&\cr\noalign{\hrule}
-& Total Multiprocessing Requirements &&&&&\cr\noalign{\hrule}
-& Minimum Bytes for RTEMS Workspace &&&&&\cr\noalign{\hrule}
-}}\hfil}
-@end tex
-@end ifset
-
-@ifset use-html
-@html
-<CENTER>
- <TABLE COLS=3 WIDTH="80%" BORDER=2>
-<TR><TD ALIGN=center><STRONG>Description</STRONG></TD>
- <TD ALIGN=center><STRONG>Equation</STRONG></TD>
- <TD ALIGN=center><STRONG>Bytes Required</STRONG></TD></TR>
-<TR><TD ALIGN=left>maximum_tasks</TD>
- <TD ALIGN=right>* RTEMS_BYTES_PER_TASK =</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=left>maximum_timers</TD>
- <TD ALIGN=right>* RTEMS_BYTES_PER_TIMER =</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=left>maximum_semaphores</TD>
- <TD ALIGN=right>* RTEMS_BYTES_PER_SEMAPHORE =</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=left>maximum_message_queues</TD>
- <TD ALIGN=right>* RTEMS_BYTES_PER_MESSAGE_QUEUE =</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=left>maximum_regions</TD>
- <TD ALIGN=right>* RTEMS_BYTES_PER_REGION =</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=left>maximum_partitions</TD>
- <TD ALIGN=right>* RTEMS_BYTES_PER_PARTITION =</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=left>maximum_ports</TD>
- <TD ALIGN=right>* RTEMS_BYTES_PER_PORT =</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=left>maximum_periods</TD>
- <TD ALIGN=right>* RTEMS_BYTES_PER_PERIOD =</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=left>maximum_extensions</TD>
- <TD ALIGN=right>* RTEMS_BYTES_PER_EXTENSION =</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=left>Floating Point Tasks</TD>
- <TD ALIGN=right>* RTEMS_BYTES_PER_FP_TASK =</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=left COLSPAN=2>Task Stacks</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=left COLSPAN=2>
- <STRONG>Total Single Processor Requirements</STRONG></TD>
- <TD><BR></TD></TR>
-<TR></TR>
-<TR><TD ALIGN=center><STRONG>Description</STRONG></TD>
- <TD ALIGN=center><STRONG>Equation</STRONG></TD>
- <TD ALIGN=center><STRONG>Bytes Required</STRONG></TD></TR>
-<TR><TD ALIGN=left>maximum_nodes</TD>
- <TD ALIGN=right>* RTEMS_BYTES_PER_NODE =</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=left>maximum_global_objects</TD>
- <TD ALIGN=right>* RTEMS_BYTES_PER_GLOBAL_OBJECT =</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=left>maximum_proxies</TD>
- <TD ALIGN=right>* RTEMS_BYTES_PER_PROXY =</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=left COLSPAN=2>
- <STRONG>Total Multiprocessing Requirements</STRONG></TD>
- <TD><BR></TD></TR>
-<TR></TR>
-<TR><TD ALIGN=left COLSPAN=2>Fixed System Requirements</TD>
- <TD ALIGN=center>RTEMS_BYTES_OF_FIXED_SYSTEM_REQUIREMENTS</TD></TR>
-<TR><TD ALIGN=left COLSPAN=2>Total Single Processor Requirements</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=left COLSPAN=2>Total Multiprocessing Requirements</TD>
- <TD><BR></TD></TR>
-<TR><TD ALIGN=left COLSPAN=2>
- <STRONG>Minimum Bytes for RTEMS Workspace</STRONG></TD>
- <TD><BR></TD></TR>
- </TABLE>
-</CENTER>
-@end html
-@end ifset
-
diff --git a/doc/configure.ac b/doc/configure.ac
deleted file mode 100644
index 097c89979f..0000000000
--- a/doc/configure.ac
+++ /dev/null
@@ -1,184 +0,0 @@
-dnl Process this file with autoconf to produce a configure script.
-
-AC_PREREQ([2.69])
-
-AC_INIT([rtems-doc],[_RTEMS_VERSION],[https://devel.rtems.org/newticket])
-AC_CONFIG_SRCDIR([project.am])
-RTEMS_TOP([..])
-
-AM_INIT_AUTOMAKE([no-define foreign 1.12.2])
-AM_MAINTAINER_MODE
-
-RTEMS_ENABLE_RPMPREFIX
-
-AC_ARG_ENABLE(html,
-[ --disable-html disable html support ],
-[case $enableval in
-yes) ;;
-no) ;;
-*) AC_MSG_ERROR("invalid value");;
-esac],
-[enable_html="yes"]
-)
-
-AC_ARG_ENABLE(dvi,
-[ --disable-dvi disable dvi support ],
-[case $enableval in
-yes) ;;
-no) ;;
-*) AC_MSG_ERROR("invalid value");;
-esac],
-[enable_dvi="yes"]
-)
-
-AC_ARG_ENABLE(pdf,
-[ --disable-pdf disable pdf support ],
-[case $enableval in
-yes) ;;
-no) ;;
-*) AC_MSG_ERROR("invalid value");;
-esac],
-[enable_pdf="yes"]
-)
-
-AC_ARG_ENABLE(ps,
-[ --disable-ps disable ps support ],
-[case $enableval in
-yes) ;;
-no) ;;
-*) AC_MSG_ERROR("invalid value");;
-esac],
-[enable_ps="yes"]
-)
-
-AC_ARG_ENABLE(papersize,
-[ --enable-papersize=[letter|a4|] set papersize [default:system defaults]],
-[case $enableval in
-a4) papersize=a4 ;;
-letter) papersize=letter ;;
-yes) papersize= ;;
-no) papersize= ;;
-*) AC_MSG_ERROR([Invalid papersize])
-;;
-esac],
-[papersize=]
-)
-
-pkgdocdir="\$(datadir)/rtems"
-AC_SUBST(pkgdocdir)
-
-htmldir="\$(pkgdocdir)/html"
-AC_SUBST(htmldir)
-
-dnl Checks for programs.
-AC_PROG_LN_S
-
-AC_CHECK_PROGS(PERL,perl)
-
-AC_CHECK_PROGS(TEXI2ANY,texi2any)
-AC_SUBST(TEXI2ANY)
-AM_CONDITIONAL(USE_TEXI2ANY,
- test "$enable_html" = "yes" \
- && test x"$TEXI2ANY" != x"")
-
-AC_CHECK_PROGS(TEXI2HTML,texi2html)
-AC_SUBST(TEXI2HTML)
-AM_CONDITIONAL(USE_TEXI2HTML,
- test "$enable_html" = "yes" \
- && test x"$TEXI2ANY" = x"" \
- && test x"$TEXI2HTML" != x"")
-
-AC_CHECK_PROGS(GS,gs)
-AM_CONDITIONAL(GS,test x"$GS" != x"")
-
-AC_CHECK_PROGS(TEXI2DVI,texi2dvi)
-AM_CONDITIONAL(TEXI2DVI,test x"$TEXI2DVI" != x"")
-
-AC_CHECK_PROGS(EPSTOPDF,epstopdf)
-AM_CONDITIONAL(EPSTOPDF,
- test "$enable_pdf" = "yes" \
- && test x"$EPSTOPDF" != x"" )
-
-AC_CHECK_PROGS(TEXI2PDF,texi2pdf)
-AM_CONDITIONAL(TEXI2PDF,
- test "$enable_pdf" = "yes" \
- && test x"$TEXI2PDF" != x"")
-
-AM_CONDITIONAL(USE_HTML,
- test "$enable_html" = "yes" \
- && test x"PERL" != x"" )
-
-AM_CONDITIONAL(USE_DVI,
- test "$enable_dvi" = "yes" \
- && test x"$TEXI2DVI" != x"" )
-
-AM_CONDITIONAL(USE_PS,
- test "$enable_ps" = "yes" \
- && test x"$TEXI2DVI" != x"" )
-
-AM_CONDITIONAL(USE_PDF,
- test "$enable_pdf" = "yes" \
- && test x"$TEXI2DVI" != x"" \
- && test x"$TEXI2PDF" != x"" )
-
-case $papersize in
-a4)
- TEXI2DVI="${TEXI2DVI} --texinfo=@afourpaper"
- TEXI2PDF="${TEXI2PDF} --texinfo=@afourpaper"
- DVIPS="dvips -t a4"
-;;
-letter)
- DVIPS="dvips -t letter"
- ;;
-*)
- DVIPS="dvips"
-;;
-esac
-AC_SUBST(DVIPS)
-
-BMENU2='$(top_builddir)/tools/bmenu/bmenu2'
-AC_SUBST(BMENU2)
-
-dnl Checks for libraries.
-
-dnl Checks for header files.
-
-dnl Checks for typedefs, structures, and compiler characteristics.
-
-dnl Checks for library functions.
-
-AC_CONFIG_SUBDIRS(tools)
-
-AC_CONFIG_FILES([Makefile],[],[
-test -d common || mkdir common
-cat << EOF > common/rtems.sed~
-:t
-s/@RTEMSAPI@/_RTEMS_API/;t t
-s,@RTEMSPREFIX@,$prefix,;t t
-s,@RTEMSRPMPREFIX@,$rpmprefix,;t t
-EOF
-_RTEMS_UPDATE_CONDITIONAL([common/rtems.sed],[common/rtems.sed~])
-])
-
-AC_CONFIG_FILES([
-index.html
-develenv/Makefile
-user/Makefile
-bsp_howto/Makefile])
-
-AC_CONFIG_FILES([
-porting/Makefile
-networking/Makefile
-posix_users/Makefile
-posix1003.1/Makefile
-filesystem/Makefile
-ada_user/Makefile
-started/Makefile
-relnotes/Makefile
-new_chapters/Makefile
-cpu_supplement/Makefile
-shell/Makefile
-texi2html_init
-texi2any_init
-])
-AC_OUTPUT
diff --git a/doc/cpu_supplement/Makefile.am b/doc/cpu_supplement/Makefile.am
deleted file mode 100644
index ec13a9a661..0000000000
--- a/doc/cpu_supplement/Makefile.am
+++ /dev/null
@@ -1,131 +0,0 @@
-#
-# COPYRIGHT (c) 1988-2015.
-# On-Line Applications Research Corporation (OAR).
-# All rights reserved.
-
-PROJECT = cpu_supplement
-
-include $(top_srcdir)/project.am
-include $(top_srcdir)/main.am
-
-REPLACE2 = $(PERL) $(top_srcdir)/tools/word-replace2
-
-GENERATED_FILES =
-GENERATED_FILES += general.texi
-GENERATED_FILES += arm.texi
-GENERATED_FILES += bfin.texi
-GENERATED_FILES += epiphany.texi
-GENERATED_FILES += i386.texi
-GENERATED_FILES += lm32.texi
-GENERATED_FILES += m32c.texi
-GENERATED_FILES += m68k.texi
-GENERATED_FILES += microblaze.texi
-GENERATED_FILES += mips.texi
-GENERATED_FILES += or1k.texi
-GENERATED_FILES += powerpc.texi
-GENERATED_FILES += nios2.texi
-GENERATED_FILES += sh.texi
-GENERATED_FILES += sparc.texi
-GENERATED_FILES += sparc64.texi
-GENERATED_FILES += v850.texi
-
-COMMON_FILES += $(top_srcdir)/common/cpright.texi
-
-FILES = preface.texi
-
-info_TEXINFOS = cpu_supplement.texi
-cpu_supplement_TEXINFOS = $(FILES) $(COMMON_FILES) $(GENERATED_FILES)
-
-#
-# Chapters which get automatic processing
-#
-
-general.texi: general.t
- $(BMENU2) -p "Preface" \
- -u "Top" \
- -n "" < $< > $@
-
-arm.texi: arm.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-bfin.texi: bfin.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-epiphany.texi: epiphany.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-i386.texi: i386.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-m32c.texi: m32c.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-lm32.texi: lm32.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-m68k.texi: m68k.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-microblaze.texi: microblaze.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-mips.texi: mips.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-or1k.texi: or1k.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-powerpc.texi: powerpc.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-nios2.texi: nios2.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-sh.texi: sh.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-sparc.texi: sparc.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-sparc64.texi: sparc64.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-v850.texi: v850.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-CLEANFILES += cpu_supplement.info
-CLEANFILES += cpu_supplement.info-1
-CLEANFILES += cpu_supplement.info-2
-
diff --git a/doc/cpu_supplement/arm.t b/doc/cpu_supplement/arm.t
deleted file mode 100644
index dae513d77a..0000000000
--- a/doc/cpu_supplement/arm.t
+++ /dev/null
@@ -1,188 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@ifinfo
-@end ifinfo
-@chapter ARM Specific Information
-
-This chapter discusses the
-@uref{http://en.wikipedia.org/wiki/ARM_architecture,ARM architecture}
-dependencies in this port of RTEMS. The ARMv4T (and compatible), ARMv7-A,
-ARMv7-R and ARMv7-M architecture versions are supported by RTEMS. Processors
-with a MMU use a static configuration which is set up during system start. SMP
-is supported.
-
-@subheading Architecture Documents
-
-For information on the ARM architecture refer to the
-@uref{http://infocenter.arm.com,ARM Infocenter}.
-
-@section CPU Model Dependent Features
-
-This section presents the set of features which vary
-across ARM implementations and are of importance to RTEMS. The set of CPU
-model feature macros are defined in the file
-@file{cpukit/score/cpu/arm/rtems/score/arm.h} based upon the particular CPU
-model flags specified on the compilation command line.
-
-@subsection CPU Model Name
-
-The macro @code{CPU_MODEL_NAME} is a string which designates
-the architectural level of this CPU model. See in
-@file{cpukit/score/cpu/arm/rtems/score/arm.h} for the values.
-
-@subsection Count Leading Zeroes Instruction
-
-The ARMv5 and later has the count leading zeroes @code{clz} instruction which
-could be used to speed up the find first bit operation. The use of this
-instruction should significantly speed up the scheduling associated with a
-thread blocking. This is currently not used.
-
-@subsection Floating Point Unit
-
-The following floating point units are supported.
-
-@itemize @bullet
-
-@item VFPv3-D32/NEON (for example available on Cortex-A processors)
-@item VFPv3-D16 (for example available on Cortex-R processors)
-@item FPv4-SP-D16 (for example available on Cortex-M processors)
-@item FPv5-D16 (for example available the Cortex-M7 processor)
-
-@end itemize
-
-@c
-@c
-@c
-@section Multilibs
-
-The following multilibs are available:
-
-@enumerate
-@item @code{.}: ARMv4T, ARM instruction set
-@item @code{thumb}: ARMv4T, Thumb-1 instruction set
-@item @code{thumb/armv6-m}: ARMv6M, subset of Thumb-2 instruction set
-@item @code{thumb/armv7-a}: ARMv7-A, Thumb-2 instruction set
-@item @code{thumb/armv7-a/neon/hard}: ARMv7-A, Thumb-2 instruction set with
-hard-float ABI Neon and VFP-D32 support
-@item @code{thumb/armv7-r}: ARMv7-R, Thumb-2 instruction set
-@item @code{thumb/armv7-r/vfpv3-d16/hard}: ARMv7-R, Thumb-2 instruction set
-with hard-float ABI VFP-D16 support
-@item @code{thumb/armv7-m}: ARMv7-M, Thumb-2 instruction set with hardware
-integer division (SDIV/UDIV)
-@item @code{thumb/armv7-m/fpv4-sp-d16}: ARMv7-M, Thumb-2 instruction set with
-hardware integer division (SDIV/UDIV) and hard-float ABI FPv4-SP support
-@item @code{thumb/cortex-m7/fpv5-d16}: ARMv7M, Thumb-2 instruction set
-optimized for Cortex-M7 with hard-float ABI VFP-D16 support and support for the
-64-bit floating point unit
-@item @code{eb/thumb/armv7-r}: ARMv7-R, Big-endian Thumb-2 instruction set
-@item @code{eb/thumb/armv7-r/vfpv3-d16/hard}: ARMv7-R, Big-endian Thumb-2
-instruction set with hard-float ABI VFP-D16 support
-@end enumerate
-
-Multilib 1. and 2. support the standard ARM7TDMI and ARM926EJ-S targets.
-
-Multilib 3. supports the Cortex-M0 and Cortex-M1 cores.
-
-Multilib 8. supports the Cortex-M3, Cortex-M4 and Cortex-M7 cores, which have a
-special hardware integer division instruction (this is not present in the A and
-R profiles).
-
-Multilib 9. supports the Cortex-M4 cores with a floating point unit.
-
-Multilib 10. supports the Cortex-M7 core with a floating point unit.
-
-Multilib 4. and 5. support the Cortex-A processors.
-
-Multilib 6., 7., 11. and 12. support the Cortex-R processors. Here also
-big-endian variants are available.
-
-Use for example the following GCC options
-
-@example
--mthumb -march=armv7-a -mfpu=neon -mfloat-abi=hard -mtune=cortex-a9
-@end example
-
-to build an application or BSP for the ARMv7-A architecture and tune the code
-for a Cortex-A9 processor. It is important to select the options used for the
-multilibs. For example
-
-@example
--mthumb -mcpu=cortex-a9
-@end example
-
-alone will not select the ARMv7-A multilib.
-
-@section Calling Conventions
-
-Please refer to the
-@uref{http://infocenter.arm.com/help/topic/com.arm.doc.ihi0042c/IHI0042C_aapcs.pdf,Procedure Call Standard for the ARM Architecture}.
-
-@section Memory Model
-
-A flat 32-bit memory model is supported. The board support package must take
-care about the MMU if necessary.
-
-@section Interrupt Processing
-
-The ARMv4T (and compatible) architecture has seven exception types:
-
-@itemize @bullet
-
-@item Reset
-@item Undefined
-@item Software Interrupt (SWI)
-@item Prefetch Abort
-@item Data Abort
-@item Interrupt (IRQ)
-@item Fast Interrupt (FIQ)
-
-@end itemize
-
-Of these types only the IRQ has explicit operating system support. It is
-intentional that the FIQ is not supported by the operating system. Without
-operating system support for the FIQ it is not necessary to disable them during
-critical sections of the system.
-
-The ARMv7-M architecture has a completely different exception model. Here
-interrupts are disabled with a write of 0x80 to the @code{basepri_max}
-register. This means that all exceptions and interrupts with a priority value
-of greater than or equal to 0x80 are disabled. Thus exceptions and interrupts
-with a priority value of less than 0x80 are non-maskable with respect to the
-operating system and therefore must not use operating system services. Several
-support libraries of chip vendors implicitly shift the priority value somehow
-before the value is written to the NVIC IPR register. This can easily lead to
-confusion.
-
-@subsection Interrupt Levels
-
-There are exactly two interrupt levels on ARM with respect to RTEMS. Level
-zero corresponds to interrupts enabled. Level one corresponds to interrupts
-disabled.
-
-@subsection Interrupt Stack
-
-The board support package must initialize the interrupt stack. The memory for
-the stacks is usually reserved in the linker script.
-
-@section Default Fatal Error Processing
-
-The default fatal error handler for this architecture performs the
-following actions:
-
-@itemize @bullet
-@item disables operating system supported interrupts (IRQ),
-@item places the error code in @code{r0}, and
-@item executes an infinite loop to simulate a halt processor instruction.
-@end itemize
-
-@section Symmetric Multiprocessing
-
-SMP is supported on ARMv7-A. Available platforms are the Altera Cyclone V and
-the Xilinx Zynq.
-
-@section Thread-Local Storage
-
-Thread-local storage is supported.
diff --git a/doc/cpu_supplement/bfin.t b/doc/cpu_supplement/bfin.t
deleted file mode 100644
index 3beed677e4..0000000000
--- a/doc/cpu_supplement/bfin.t
+++ /dev/null
@@ -1,146 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2006.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@ifinfo
-@end ifinfo
-@chapter Blackfin Specific Information
-
-This chapter discusses the Blackfin architecture dependencies in this
-port of RTEMS.
-
-@subheading Architecture Documents
-
-For information on the Blackfin architecture, refer to the following
-documents available from Analog Devices.
-
-TBD
-
-@itemize @bullet
-@item @cite{"ADSP-BF533 Blackfin Processor Hardware Reference."}
-@file{http://www.analog.com/UploadedFiles/Associated_Docs/892485982bf533_hwr.pdf}
-
-@end itemize
-
-
-@section CPU Model Dependent Features
-
-CPUs of the Blackfin 53X only differ in the peripherals and thus in the
-device drivers. This port does not yet support the 56X dual core variants.
-
-@subsection Count Leading Zeroes Instruction
-
-The Blackfin CPU has the BITTST instruction which could be used to speed
-up the find first bit operation. The use of this instruction should
-significantly speed up the scheduling associated with a thread blocking.
-
-@section Calling Conventions
-
-This section is heavily based on content taken from the Blackfin uCLinux
-documentation wiki which is edited by Analog Devices and Arcturus
-Networks. @file{http://docs.blackfin.uclinux.org/}
-
-@subsection Processor Background
-
-The Blackfin architecture supports a simple call and return mechanism.
-A subroutine is invoked via the call (@code{call}) instruction.
-This instruction saves the return address in the @code{RETS} register
-and transfers the execution to the given address.
-
-It is the called funcions responsability to use the link instruction
-to reserve space on the stack for the local variables. Returning from
-a subroutine is done by using the RTS (@code{RTS}) instruction which
-loads the PC with the adress stored in RETS.
-
-It is is important to note that the @code{call} instruction does not
-automatically save or restore any registers. It is the responsibility
-of the high-level language compiler to define the register preservation
-and usage convention.
-
-@subsection Register Usage
-
-A called function may clobber all registers, except RETS, R4-R7, P3-P5,
-FP and SP. It may also modify the first 12 bytes in the caller’s stack
-frame which is used as an argument area for the first three arguments
-(which are passed in R0...R3 but may be placed on the stack by the
-called function).
-
-@subsection Parameter Passing
-
-RTEMS assumes that the Blackfin GCC calling convention is followed.
-The first three parameters are stored in registers R0, R1, and R2.
-All other parameters are put pushed on the stack. The result is returned
-through register R0.
-
-@section Memory Model
-
-The Blackfin family architecutre support a single unified 4 GB byte
-address space using 32-bit addresses. It maps all resources like internal
-and external memory and IO registers into separate sections of this
-common address space.
-
-The Blackfin architcture supports some form of memory
-protection via its Memory Management Unit. Since the
-Blackfin port runs in supervisior mode this memory
-protection mechanisms are not used.
-
-@section Interrupt Processing
-
-Discussed in this chapter are the Blackfin's interrupt response and
-control mechanisms as they pertain to RTEMS. The Blackfin architecture
-support 16 kinds of interrupts broken down into Core and general-purpose
-interrupts.
-
-@subsection Vectoring of an Interrupt Handler
-
-RTEMS maps levels 0 -15 directly to Blackfins event vectors EVT0 -
-EVT15. Since EVT0 - EVT6 are core events and it is suggested to use
-EVT15 and EVT15 for Software interrupts, 7 Interrupts (EVT7-EVT13)
-are left for periferical use.
-
-When installing an RTEMS interrupt handler RTEMS installs a generic
-Interrupt Handler which saves some context and enables nested interrupt
-servicing and then vectors to the users interrupt handler.
-
-@subsection Disabling of Interrupts by RTEMS
-
-During interrupt disable critical sections, RTEMS disables interrupts to
-level four (4) before the execution of this section and restores them
-to the previous level upon completion of the section. RTEMS uses the
-instructions CLI and STI to enable and disable Interrupts. Emulation,
-Reset, NMI and Exception Interrupts are never disabled.
-
-@subsection Interrupt Stack
-
-The Blackfin Architecture works with two different kind of stacks,
-User and Supervisor Stack. Since RTEMS and its Application run
-in supervisor mode, all interrupts will use the interrupted
-tasks stack for execution.
-
-@section Default Fatal Error Processing
-
-The default fatal error handler for the Blackfin performs the following
-actions:
-
-@itemize @bullet
-@item disables processor interrupts,
-@item places the error code in @b{r0}, and
-@item executes an infinite loop (@code{while(0);} to
-simulate a halt processor instruction.
-@end itemize
-
-@section Symmetric Multiprocessing
-
-SMP is not supported.
-
-@section Thread-Local Storage
-
-Thread-local storage is not implemented.
-
-@section Board Support Packages
-
-
-@subsection System Reset
-
-TBD
diff --git a/doc/cpu_supplement/cpu_supplement.texi b/doc/cpu_supplement/cpu_supplement.texi
deleted file mode 100644
index f1c6bd3d15..0000000000
--- a/doc/cpu_supplement/cpu_supplement.texi
+++ /dev/null
@@ -1,117 +0,0 @@
-\input texinfo @c -*-texinfo-*-
-@c %**start of header
-@setfilename cpu_supplement.info
-@setcontentsaftertitlepage
-@syncodeindex vr fn
-@synindex ky cp
-@paragraphindent 0
-@c %**end of header
-
-@c
-@c COPYRIGHT (c) 1989-2013.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@c
-@c Master file for the CPU Supplement
-@c
-
-@include version.texi
-@include common/setup.texi
-@include common/rtems.texi
-
-@ifset use-ascii
-@dircategory RTEMS Target Supplement
-@direntry
-* RTEMS CPU Architecture Supplement: (cpu_supplement).
-@end direntry
-@end ifset
-
-@c
-@c Title Page Stuff
-@c
-
-@c
-@c I don't really like having a short title page. --joel
-@c
-@c @shorttitlepage RTEMS CPU Architecture Supplement
-
-@setchapternewpage odd
-@settitle RTEMS CPU Architecture Supplement
-@titlepage
-@finalout
-
-@title RTEMS CPU Architecture Supplement
-@subtitle Edition @value{EDITION}, for RTEMS @value{VERSION}
-@sp 1
-@subtitle @value{UPDATED}
-@author On-Line Applications Research Corporation
-@page
-@include common/cpright.texi
-@end titlepage
-
-@c This prevents a black box from being printed on "overflow" lines.
-@c The alternative is to rework a sentence to avoid this problem.
-
-@contents
-
-@ifnottex
-@node Top, Preface, (dir), (dir)
-@top RTEMS CPU Architecture Supplement
-
-@menu
-* Preface::
-* Port Specific Information::
-* ARM Specific Information::
-* Blackfin Specific Information::
-* Epiphany Specific Information::
-* Intel/AMD x86 Specific Information::
-* Lattice Mico32 Specific Information::
-* Renesas M32C Specific Information::
-* M68xxx and Coldfire Specific Information::
-* Xilinx MicroBlaze Specific Information::
-* MIPS Specific Information::
-* OpenRISC 1000 Specific Information::
-* Altera Nios II Specific Information::
-* PowerPC Specific Information::
-* SuperH Specific Information::
-* SPARC Specific Information::
-* SPARC-64 Specific Information::
-* Command and Variable Index::
-* Concept Index::
-@end menu
-@end ifnottex
-
-@include preface.texi
-@include general.texi
-@include arm.texi
-@include bfin.texi
-@include epiphany.texi
-@include i386.texi
-@include lm32.texi
-@include m32c.texi
-@include m68k.texi
-@include microblaze.texi
-@include mips.texi
-@include nios2.texi
-@include or1k.texi
-@include powerpc.texi
-@include sh.texi
-@include sparc.texi
-@include sparc64.texi
-
-@node Command and Variable Index, Concept Index, , Top
-@unnumbered Command and Variable Index
-
-There are currently no Command and Variable Index entries.
-
-@c @printindex fn
-
-@node Concept Index, , Command and Variable Index, Top
-@unnumbered Concept Index
-
-There are currently no Concept Index entries.
-@c @printindex cp
-
-@bye
-
diff --git a/doc/cpu_supplement/epiphany.t b/doc/cpu_supplement/epiphany.t
deleted file mode 100644
index 87f74c324f..0000000000
--- a/doc/cpu_supplement/epiphany.t
+++ /dev/null
@@ -1,79 +0,0 @@
-@c
-@c Copyright (c) 2015 University of York.
-@c Hesham ALMatary <hmka501@york.ac.uk>
-
-@ifinfo
-@end ifinfo
-@chapter Epiphany Specific Information
-
-This chapter discusses the
-@uref{http://adapteva.com/docs/epiphany_sdk_ref.pdf, Epiphany Architecture}
-dependencies in this port of RTEMS. Epiphany is a chip that can come with 16 and
-64 cores, each of which can run RTEMS separately or they can work together to
-run a SMP RTEMS application.
-
-@subheading Architecture Documents
-
-For information on the Epiphany architecture refer to the
-@uref{http://adapteva.com/docs/epiphany_arch_ref.pdf,Epiphany Architecture Reference}.
-
-@section Calling Conventions
-
-Please refer to the
-@uref{http://adapteva.com/docs/epiphany_sdk_ref.pdf, Epiphany SDK}
-Appendix A: Application Binary Interface
-
-@subsection Floating Point Unit
-
-A floating point unit is currently not supported.
-
-@section Memory Model
-
-A flat 32-bit memory model is supported, no caches. Each core has its own 32 KiB
-strictly ordered local memory along with an access to a shared 32 MiB external
-DRAM.
-
-@section Interrupt Processing
-
-Every Epiphany core has 10 exception types:
-
-@itemize @bullet
-
-@item Reset
-@item Software Exception
-@item Data Page Fault
-@item Timer 0
-@item Timer 1
-@item Message Interrupt
-@item DMA0 Interrupt
-@item DMA1 Interrupt
-@item WANT Interrupt
-@item User Interrupt
-
-@end itemize
-
-@subsection Interrupt Levels
-
-There are only two levels: interrupts enabled and interrupts disabled.
-
-@subsection Interrupt Stack
-
-The Epiphany RTEMS port uses a dedicated software interrupt stack.
-The stack for interrupts is allocated during interrupt driver initialization.
-When an interrupt is entered, the _ISR_Handler routine is responsible for
-switching from the interrupted task stack to RTEMS software interrupt stack.
-
-@section Default Fatal Error Processing
-
-The default fatal error handler for this architecture performs the
-following actions:
-
-@itemize @bullet
-@item disables operating system supported interrupts (IRQ),
-@item places the error code in @code{r0}, and
-@item executes an infinite loop to simulate a halt processor instruction.
-@end itemize
-
-@section Symmetric Multiprocessing
-
-SMP is not supported.
diff --git a/doc/cpu_supplement/general.t b/doc/cpu_supplement/general.t
deleted file mode 100644
index 43f91e1d14..0000000000
--- a/doc/cpu_supplement/general.t
+++ /dev/null
@@ -1,455 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@ifinfo
-@end ifinfo
-@chapter Port Specific Information
-
-This chaper provides a general description of the type of
-architecture specific information which is in each of
-the architecture specific chapters that follow. The outline
-of this chapter is identical to that of the architecture
-specific chapters.
-
-In each of the architecture specific chapters, this
-introductory section will provide an overview of the
-architecture
-
-@subheading Architecture Documents
-
-In each of the architecture specific chapters, this
-section will provide pointers on where to obtain
-documentation.
-
-@c
-@c
-@c
-@section CPU Model Dependent Features
-
-Microprocessors are generally classified into families with a variety of
-CPU models or implementations within that family. Within a processor
-family, there is a high level of binary compatibility. This family
-may be based on either an architectural specification or on maintaining
-compatibility with a popular processor. Recent microprocessor families
-such as the SPARC or PowerPC are based on an architectural specification
-which is independent or any particular CPU model or implementation.
-Older families such as the Motorola 68000 and the Intel x86 evolved as the
-manufacturer strived to produce higher performance processor models which
-maintained binary compatibility with older models.
-
-RTEMS takes advantage of the similarity of the various models within a
-CPU family. Although the models do vary in significant ways, the high
-level of compatibility makes it possible to share the bulk of the CPU
-dependent executive code across the entire family. Each processor family
-supported by RTEMS has a list of features which vary between CPU models
-within a family. For example, the most common model dependent feature
-regardless of CPU family is the presence or absence of a floating point
-unit or coprocessor. When defining the list of features present on a
-particular CPU model, one simply notes that floating point hardware
-is or is not present and defines a single constant appropriately.
-Conditional compilation is utilized to include the appropriate source
-code for this CPU model's feature set. It is important to note that
-this means that RTEMS is thus compiled using the appropriate feature set
-and compilation flags optimal for this CPU model used. The alternative
-would be to generate a binary which would execute on all family members
-using only the features which were always present.
-
-The set of CPU model feature macros are defined in the file
-@code{cpukit/score/cpu/CPU/rtems/score/cpu.h} based upon the GNU tools
-multilib variant that is appropriate for the particular CPU model defined
-on the compilation command line.
-
-In each of the architecture specific chapters, this section presents
-the set of features which vary across various implementations of the
-architecture that may be of importance to RTEMS application developers.
-
-The subsections will vary amongst the target architecture chapters as
-the specific features may vary. However, each port will include a few
-common features such as the CPU Model Name and presence of a hardware
-Floating Point Unit. The common features are described here.
-
-@subsection CPU Model Name
-
-The macro @code{CPU_MODEL_NAME} is a string which designates
-the name of this CPU model. For example, for the MC68020
-processor model from the m68k architecture, this macro
-is set to the string "mc68020".
-
-@subsection Floating Point Unit
-
-In most architectures, the presence of a floating point unit is an option.
-It does not matter whether the hardware floating point support is
-incorporated on-chip or is an external coprocessor as long as it
-appears an FPU per the ISA. However, if a hardware FPU is not present,
-it is possible that the floating point emulation library for this
-CPU is not reentrant and thus context switched by RTEMS.
-
-RTEMS provides two feature macros to indicate the FPU configuration:
-
-@itemize @bullet
-
-@item CPU_HARDWARE_FP
-is set to TRUE to indicate that a hardware FPU is present.
-
-@item CPU_SOFTWARE_FP
-is set to TRUE to indicate that a hardware FPU is not present and that
-the FP software emulation will be context switched.
-
-@end itemize
-
-@c
-@c
-@c
-@section Multilibs
-
-Newlib and GCC provide several target libraries like the @file{libc.a},
-@file{libm.a} and @file{libgcc.a}. These libraries are artifacts of the GCC
-build process. Newlib is built together with GCC. To provide optimal support
-for various chip derivatives and instruction set revisions multiple variants of
-these libraries are available for each architecture. For example one set may
-use software floating point support and another set may use hardware floating
-point instructions. These sets of libraries are called @emph{multilibs}. Each
-library set corresponds to an application binary interface (ABI) and
-instruction set.
-
-A multilib variant can be usually detected via built-in compiler defines at
-compile-time. This mechanism is used by RTEMS to select for example the
-context switch support for a particular BSP. The built-in compiler defines
-corresponding to multilibs are the only architecture specific defines allowed
-in the @code{cpukit} area of the RTEMS sources.
-
-Invoking the GCC with the @code{-print-multi-lib} option lists the available
-multilibs. Each line of the output describes one multilib variant. The
-default variant is denoted by @code{.} which is selected when no or
-contradicting GCC machine options are selected. The multilib selection for a
-target is specified by target makefile fragments (see file @file{t-rtems} in
-the GCC sources and section
-@uref{https://gcc.gnu.org/onlinedocs/gccint/Target-Fragment.html#Target-Fragment,The Target Makefile Fragment}
-in the @uref{https://gcc.gnu.org/onlinedocs/gccint/,GCC Internals Manual}.
-
-@c
-@c
-@c
-@section Calling Conventions
-
-Each high-level language compiler generates subroutine entry and exit
-code based upon a set of rules known as the compiler's calling convention.
-These rules address the following issues:
-
-@itemize @bullet
-@item register preservation and usage
-@item parameter passing
-@item call and return mechanism
-@end itemize
-
-A compiler's calling convention is of importance when
-interfacing to subroutines written in another language either
-assembly or high-level. Even when the high-level language and
-target processor are the same, different compilers may use
-different calling conventions. As a result, calling conventions
-are both processor and compiler dependent.
-
-@subsection Calling Mechanism
-
-In each of the architecture specific chapters, this subsection will
-describe the instruction(s) used to perform a @i{normal} subroutine
-invocation. All RTEMS directives are invoked as @i{normal} C language
-functions so it is important to the user application to understand the
-call and return mechanism.
-
-@subsection Register Usage
-
-In each of the architecture specific chapters, this subsection will
-detail the set of registers which are @b{NOT} preserved across subroutine
-invocations. The registers which are not preserved are assumed to be
-available for use as scratch registers. Therefore, the contents of these
-registers should not be assumed upon return from any RTEMS directive.
-
-In some architectures, there may be a set of registers made available
-automatically as a side-effect of the subroutine invocation
-mechanism.
-
-@subsection Parameter Passing
-
-In each of the architecture specific chapters, this subsection will
-describe the mechanism by which the parameters or arguments are passed
-by the caller to a subroutine. In some architectures, all parameters
-are passed on the stack while in others some are passed in registers.
-
-@subsection User-Provided Routines
-
-All user-provided routines invoked by RTEMS, such as
-user extensions, device drivers, and MPCI routines, must also
-adhere to these calling conventions.
-
-@c
-@c
-@c
-@section Memory Model
-
-A processor may support any combination of memory
-models ranging from pure physical addressing to complex demand
-paged virtual memory systems. RTEMS supports a flat memory
-model which ranges contiguously over the processor's allowable
-address space. RTEMS does not support segmentation or virtual
-memory of any kind. The appropriate memory model for RTEMS
-provided by the targeted processor and related characteristics
-of that model are described in this chapter.
-
-@subsection Flat Memory Model
-
-Most RTEMS target processors can be initialized to support a flat address
-space. Although the size of addresses varies between architectures, on
-most RTEMS targets, an address is 32-bits wide which defines addresses
-ranging from 0x00000000 to 0xFFFFFFFF (4 gigabytes). Each address is
-represented by a 32-bit value and is byte addressable. The address may be
-used to reference a single byte, word (2-bytes), or long word (4 bytes).
-Memory accesses within this address space may be performed in little or
-big endian fashion.
-
-On smaller CPU architectures supported by RTEMS, the address space
-may only be 20 or 24 bits wide.
-
-If the CPU model has support for virtual memory or segmentation, it is
-the responsibility of the Board Support Package (BSP) to initialize the
-MMU hardware to perform address translations which correspond to flat
-memory model.
-
-In each of the architecture specific chapters, this subsection will
-describe any architecture characteristics that differ from this general
-description.
-
-@c
-@c
-@c
-@section Interrupt Processing
-
-Different types of processors respond to the occurrence of an interrupt
-in its own unique fashion. In addition, each processor type provides
-a control mechanism to allow for the proper handling of an interrupt.
-The processor dependent response to the interrupt modifies the current
-execution state and results in a change in the execution stream. Most
-processors require that an interrupt handler utilize some special control
-mechanisms to return to the normal processing stream. Although RTEMS
-hides many of the processor dependent details of interrupt processing,
-it is important to understand how the RTEMS interrupt manager is mapped
-onto the processor's unique architecture.
-
-RTEMS supports a dedicated interrupt stack for all architectures.
-On architectures with hardware support for a dedicated interrupt stack,
-it will be initialized such that when an interrupt occurs, the processor
-automatically switches to this dedicated stack. On architectures without
-hardware support for a dedicated interrupt stack which is separate from
-those of the tasks, RTEMS will support switching to a dedicated stack
-for interrupt processing.
-
-Without a dedicated interrupt stack, every task in
-the system MUST have enough stack space to accommodate the worst
-case stack usage of that particular task and the interrupt
-service routines COMBINED. By supporting a dedicated interrupt
-stack, RTEMS significantly lowers the stack requirements for
-each task.
-
-A nested interrupt is processed similarly with the exception that since
-the CPU is already executing on the interrupt stack, there is no need
-to switch to the interrupt stack.
-
-In some configurations, RTEMS allocates the interrupt stack from the
-Workspace Area. The amount of memory allocated for the interrupt stack
-is user configured and based upon the @code{confdefs.h} parameter
-@code{CONFIGURE_INTERRUPT_STACK_SIZE}. This parameter is described
-in detail in the Configuring a System chapter of the User's Guide.
-On configurations in which RTEMS allocates the interrupt stack, during
-the initialization process, RTEMS will also install its interrupt stack.
-In other configurations, the interrupt stack is allocated and installed
-by the Board Support Package (BSP).
-
-In each of the architecture specific chapters, this section discesses
-the interrupt response and control mechanisms of the architecture as
-they pertain to RTEMS.
-
-@subsection Vectoring of an Interrupt Handler
-
-In each of the architecture specific chapters, this subsection will
-describe the architecture specific details of the interrupt vectoring
-process. In particular, it should include a description of the
-Interrupt Stack Frame (ISF).
-
-@subsection Interrupt Levels
-
-In each of the architecture specific chapters, this subsection will
-describe how the interrupt levels available on this particular architecture
-are mapped onto the 255 reserved in the task mode. The interrupt level
-value of zero (0) should always mean that interrupts are enabled.
-
-Any use of an interrupt level that is is not undefined on a particular
-architecture may result in behavior that is unpredictable.
-
-@subsection Disabling of Interrupts by RTEMS
-
-During the execution of directive calls, critical sections of code may
-be executed. When these sections are encountered, RTEMS disables all
-external interrupts before the execution of this section and restores
-them to the previous level upon completion of the section. RTEMS has
-been optimized to ensure that interrupts are disabled for the shortest
-number of instructions possible. Since the precise number of instructions
-and their execution time varies based upon target CPU family, CPU model,
-board memory speed, compiler version, and optimization level, it is
-not practical to provide the precise number for all possible RTEMS
-configurations.
-
-Historically, the measurements were made by hand analyzing and counting
-the execution time of instruction sequences during interrupt disable
-critical sections. For reference purposes, on a 16 Mhz Motorola
-MC68020, the maximum interrupt disable period was typically approximately
-ten (10) to thirteen (13) microseconds. This architecture was memory bound
-and had a slow bit scan instruction. In contrast, during the same
-period a 14 Mhz SPARC would have a worst case disable time of approximately
-two (2) to three (3) microseconds because it had a single cycle bit scan
-instruction and used fewer cycles for memory accesses.
-
-If you are interested in knowing the worst case execution time for
-a particular version of RTEMS, please contact OAR Corporation and
-we will be happy to product the results as a consulting service.
-
-Non-maskable interrupts (NMI) cannot be disabled, and
-ISRs which execute at this level MUST NEVER issue RTEMS system
-calls. If a directive is invoked, unpredictable results may
-occur due to the inability of RTEMS to protect its critical
-sections. However, ISRs that make no system calls may safely
-execute as non-maskable interrupts.
-
-
-@c
-@c
-@c
-@section Default Fatal Error Processing
-
-Upon detection of a fatal error by either the application or RTEMS during
-initialization the @code{rtems_fatal_error_occurred} directive supplied
-by the Fatal Error Manager is invoked. The Fatal Error Manager will
-invoke the user-supplied fatal error handlers. If no user-supplied
-handlers are configured or all of them return without taking action to
-shutdown the processor or reset, a default fatal error handler is invoked.
-
-Most of the action performed as part of processing the fatal error are
-described in detail in the Fatal Error Manager chapter in the User's
-Guide. However, the if no user provided extension or BSP specific fatal
-error handler takes action, the final default action is to invoke a
-CPU architecture specific function. Typically this function disables
-interrupts and halts the processor.
-
-In each of the architecture specific chapters, this describes the precise
-operations of the default CPU specific fatal error handler.
-
-@section Symmetric Multiprocessing
-
-This section contains information about the Symmetric Multiprocessing (SMP)
-status of a particular architecture.
-
-@section Thread-Local Storage
-
-In order to support thread-local storage (TLS) the CPU port must implement the
-facilities mandated by the application binary interface (ABI) of the CPU
-architecture. The CPU port must initialize the TLS area in the
-@code{_CPU_Context_Initialize()} function. There are support functions available
-via @code{#include <rtems/score/tls.h>} which implement Variants I and II
-according to Ulrich Drepper, @cite{ELF Handling For Thread-Local Storage}.
-
-@table @code
-
-@item _TLS_TCB_at_area_begin_initialize()
-Uses Variant I, TLS offsets emitted by linker takes the TCB into account. For
-a reference implementation see @file{cpukit/score/cpu/arm/cpu.c}.
-
-@item _TLS_TCB_before_TLS_block_initialize()
-Uses Variant I, TLS offsets emitted by linker neglects the TCB. For a
-reference implementation see
-@file{c/src/lib/libcpu/powerpc/new-exceptions/cpu.c}.
-
-@item _TLS_TCB_after_TLS_block_initialize()
-Uses Variant II. For a reference implementation see
-@file{cpukit/score/cpu/sparc/cpu.c}.
-
-@end table
-
-The board support package (BSP) must provide the following sections and symbols
-in its linker command file:
-
-@example
-.tdata : @{
- _TLS_Data_begin = .;
- *(.tdata .tdata.* .gnu.linkonce.td.*)
- _TLS_Data_end = .;
-@}
-.tbss : @{
- _TLS_BSS_begin = .;
- *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
- _TLS_BSS_end = .;
-@}
-_TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
-_TLS_Data_begin = _TLS_Data_size != 0 ? _TLS_Data_begin : _TLS_BSS_begin;
-_TLS_Data_end = _TLS_Data_size != 0 ? _TLS_Data_end : _TLS_BSS_begin;
-_TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
-_TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
-_TLS_Alignment = MAX (ALIGNOF (.tdata), ALIGNOF (.tbss));
-@end example
-
-@section CPU counter
-
-The CPU support must implement the CPU counter interface. A CPU counter is
-some free-running counter. It ticks usually with a frequency close to the CPU
-or system bus clock. On some architectures the actual implementation is board
-support package dependent. The CPU counter is used for profiling of low-level
-functions. It is also used to implement two busy wait functions
-@code{rtems_counter_delay_ticks()} and @code{rtems_counter_delay_nanoseconds()}
-which may be used in device drivers. It may be also used as an entropy source
-for random number generators.
-
-The CPU counter interface uses a CPU port specific unsigned integer type
-@code{CPU_Counter_ticks} to represent CPU counter values. The CPU port must
-provide the following two functions
-
-@itemize
-@item @code{_CPU_Counter_read()} to read the current CPU counter value, and
-@item @code{_CPU_Counter_difference()} to get the difference between two CPU
-counter values.
-@end itemize
-
-@section Interrupt Profiling
-
-The RTEMS profiling needs support by the CPU port for the interrupt entry and
-exit times. In case profiling is enabled via the RTEMS build configuration
-option @code{--enable-profiling} (in this case the pre-processor symbol
-@code{RTEMS_PROFILING} is defined) the CPU port may provide data for the
-interrupt entry and exit times of the outer-most interrupt. The CPU port can
-feed interrupt entry and exit times with the
-@code{_Profiling_Outer_most_interrupt_entry_and_exit()} function
-(@code{#include <rtems/score/profiling.h>}). For an example please have a look
-at @code{cpukit/score/cpu/arm/arm_exc_interrupt.S}.
-
-@c
-@c
-@c
-
-@section Board Support Packages
-
-An RTEMS Board Support Package (BSP) must be designed to support a
-particular processor model and target board combination.
-
-In each of the architecture specific chapters, this section will present
-a discussion of architecture specific BSP issues. For more information
-on developing a BSP, refer to BSP and Device Driver Development Guide
-and the chapter titled Board Support Packages in the RTEMS
-Applications User's Guide.
-
-@subsection System Reset
-
-An RTEMS based application is initiated or re-initiated when the processor
-is reset or transfer is passed to it from a boot monitor or ROM monitor.
-
-In each of the architecture specific chapters, this subsection describes
-the actions that the BSP must tak assuming the application gets control
-when the microprocessor is reset.
diff --git a/doc/cpu_supplement/i386.t b/doc/cpu_supplement/i386.t
deleted file mode 100644
index 77acacefc2..0000000000
--- a/doc/cpu_supplement/i386.t
+++ /dev/null
@@ -1,373 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@ifinfo
-@end ifinfo
-@chapter Intel/AMD x86 Specific Information
-
-This chapter discusses the Intel x86 architecture dependencies
-in this port of RTEMS. This family has multiple implementations
-from multiple vendors and suffers more from having evolved rather
-than being designed for growth.
-
-For information on the i386 processor, refer to the
-following documents:
-
-@itemize @bullet
-@item @cite{386 Programmer's Reference Manual, Intel, Order No. 230985-002}.
-
-@item @cite{386 Microprocessor Hardware Reference Manual, Intel,
-Order No. 231732-003}.
-
-@item @cite{80386 System Software Writer's Guide, Intel, Order No. 231499-001}.
-
-@item @cite{80387 Programmer's Reference Manual, Intel, Order No. 231917-001}.
-@end itemize
-
-@c
-@c
-@c
-@section CPU Model Dependent Features
-
-This section presents the set of features which vary
-across i386 implementations and are of importance to RTEMS.
-The set of CPU model feature macros are defined in the file
-@code{cpukit/score/cpu/i386/i386.h} based upon the particular CPU
-model specified on the compilation command line.
-
-@subsection bswap Instruction
-
-The macro @code{I386_HAS_BSWAP} is set to 1 to indicate that
-this CPU model has the @code{bswap} instruction which
-endian swaps a thirty-two bit quantity. This instruction
-appears to be present in all CPU models
-i486's and above.
-
-@c
-@c
-@c
-@section Calling Conventions
-
-@subsection Processor Background
-
-The i386 architecture supports a simple yet effective
-call and return mechanism. A subroutine is invoked via the call
-(@code{call}) instruction. This instruction pushes the return address
-on the stack. The return from subroutine (@code{ret}) instruction pops
-the return address off the current stack and transfers control
-to that instruction. It is is important to note that the i386
-call and return mechanism does not automatically save or restore
-any registers. It is the responsibility of the high-level
-language compiler to define the register preservation and usage
-convention.
-
-@subsection Calling Mechanism
-
-All RTEMS directives are invoked using a call instruction and return to
-the user application via the ret instruction.
-
-@subsection Register Usage
-
-As discussed above, the call instruction does not automatically save
-any registers. RTEMS uses the registers EAX, ECX, and EDX as scratch
-registers. These registers are not preserved by RTEMS directives
-therefore, the contents of these registers should not be assumed upon
-return from any RTEMS directive.
-
-@subsection Parameter Passing
-
-RTEMS assumes that arguments are placed on the
-current stack before the directive is invoked via the call
-instruction. The first argument is assumed to be closest to the
-return address on the stack. This means that the first argument
-of the C calling sequence is pushed last. The following
-pseudo-code illustrates the typical sequence used to call a
-RTEMS directive with three (3) arguments:
-
-@example
-push third argument
-push second argument
-push first argument
-invoke directive
-remove arguments from the stack
-@end example
-
-The arguments to RTEMS are typically pushed onto the
-stack using a push instruction. These arguments must be removed
-from the stack after control is returned to the caller. This
-removal is typically accomplished by adding the size of the
-argument list in bytes to the stack pointer.
-
-@c
-@c
-@c
-
-@section Memory Model
-
-@subsection Flat Memory Model
-
-RTEMS supports the i386 protected mode, flat memory
-model with paging disabled. In this mode, the i386
-automatically converts every address from a logical to a
-physical address each time it is used. The i386 uses
-information provided in the segment registers and the Global
-Descriptor Table to convert these addresses. RTEMS assumes the
-existence of the following segments:
-
-@itemize @bullet
-@item a single code segment at protection level (0) which
-contains all application and executive code.
-
-@item a single data segment at protection level zero (0) which
-contains all application and executive data.
-@end itemize
-
-The i386 segment registers and associated selectors
-must be initialized when the initialize_executive directive is
-invoked. RTEMS treats the segment registers as system registers
-and does not modify or context switch them.
-
-This i386 memory model supports a flat 32-bit address
-space with addresses ranging from 0x00000000 to 0xFFFFFFFF (4
-gigabytes). Each address is represented by a 32-bit value and
-is byte addressable. The address may be used to reference a
-single byte, half-word (2-bytes), or word (4 bytes).
-
-@c
-@c
-@c
-
-@section Interrupt Processing
-
-Although RTEMS hides many of the processor
-dependent details of interrupt processing, it is important to
-understand how the RTEMS interrupt manager is mapped onto the
-processor's unique architecture. Discussed in this chapter are
-the the processor's response and control mechanisms as they
-pertain to RTEMS.
-
-@subsection Vectoring of Interrupt Handler
-
-Although the i386 supports multiple privilege levels,
-RTEMS and all user software executes at privilege level 0. This
-decision was made by the RTEMS designers to enhance
-compatibility with processors which do not provide sophisticated
-protection facilities like those of the i386. This decision
-greatly simplifies the discussion of i386 processing, as one
-need only consider interrupts without privilege transitions.
-
-Upon receipt of an interrupt the i386 automatically
-performs the following actions:
-
-@itemize @bullet
-@item pushes the EFLAGS register
-
-@item pushes the far address of the interrupted instruction
-
-@item vectors to the interrupt service routine (ISR).
-@end itemize
-
-A nested interrupt is processed similarly by the
-i386.
-
-@subsection Interrupt Stack Frame
-
-The structure of the Interrupt Stack Frame for the
-i386 which is placed on the interrupt stack by the processor in
-response to an interrupt is as follows:
-
-@ifset use-ascii
-@example
-@group
- +----------------------+
- | Old EFLAGS Register | ESP+8
- +----------+-----------+
- | UNUSED | Old CS | ESP+4
- +----------+-----------+
- | Old EIP | ESP
- +----------------------+
-@end group
-@end example
-@end ifset
-
-@ifset use-tex
-@sp 1
-@tex
-\centerline{\vbox{\offinterlineskip\halign{
-\strut\vrule#&
-\hbox to 1.00in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 1.00in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 0.75in{\enskip\hfil#\hfil}
-\cr
-\multispan{4}\hrulefill\cr
-& \multispan{3} Old EFLAGS Register\quad&&ESP+8\cr
-\multispan{4}\hrulefill\cr
-&UNUSED &&Old CS &&ESP+4\cr
-\multispan{4}\hrulefill\cr
-& \multispan{3} Old EIP && ESP\cr
-\multispan{4}\hrulefill\cr
-}}\hfil}
-@end tex
-@end ifset
-
-@ifset use-html
-@html
-<CENTER>
- <TABLE COLS=3 WIDTH="40%" BORDER=2>
-<TR><TD ALIGN=center COLSPAN=2><STRONG>Old EFLAGS Register</STRONG></TD>
- <TD ALIGN=center>0x0</TD></TR>
-<TR><TD ALIGN=center><STRONG>UNUSED</STRONG></TD>
- <TD ALIGN=center><STRONG>Old CS</STRONG></TD>
- <TD ALIGN=center>0x2</TD></TR>
-<TR><TD ALIGN=center COLSPAN=2><STRONG>Old EIP</STRONG></TD>
- <TD ALIGN=center>0x4</TD></TR>
- </TABLE>
-</CENTER>
-@end html
-@end ifset
-
-@subsection Interrupt Levels
-
-Although RTEMS supports 256 interrupt levels, the
-i386 only supports two -- enabled and disabled. Interrupts are
-enabled when the interrupt-enable flag (IF) in the extended
-flags (EFLAGS) is set. Conversely, interrupt processing is
-inhibited when the IF is cleared. During a non-maskable
-interrupt, all other interrupts, including other non-maskable
-ones, are inhibited.
-
-RTEMS interrupt levels 0 and 1 such that level zero
-(0) indicates that interrupts are fully enabled and level one
-that interrupts are disabled. All other RTEMS interrupt levels
-are undefined and their behavior is unpredictable.
-
-@subsection Interrupt Stack
-
-The i386 family does not support a dedicated hardware
-interrupt stack. On this processor, RTEMS allocates and manages
-a dedicated interrupt stack. As part of vectoring a non-nested
-interrupt service routine, RTEMS switches from the stack of the
-interrupted task to a dedicated interrupt stack. When a
-non-nested interrupt returns, RTEMS switches back to the stack
-of the interrupted stack. The current stack pointer is not
-altered by RTEMS on nested interrupt.
-
-@c
-@c
-@c
-
-@section Default Fatal Error Processing
-
-The default fatal error handler for this architecture disables processor
-interrupts, places the error code in EAX, and executes a HLT instruction
-to halt the processor.
-
-@section Symmetric Multiprocessing
-
-SMP is not supported.
-
-@section Thread-Local Storage
-
-Thread-local storage is not implemented.
-
-@c
-@c
-@c
-
-@section Board Support Packages
-
-@subsection System Reset
-
-An RTEMS based application is initiated when the i386 processor is reset.
-When the i386 is reset,
-
-@itemize @bullet
-
-@item The EAX register is set to indicate the results of the processor's
-power-up self test. If the self-test was not executed, the contents of
-this register are undefined. Otherwise, a non-zero value indicates the
-processor is faulty and a zero value indicates a successful self-test.
-
-@item The DX register holds a component identifier and revision level. DH
-contains 3 to indicate an i386 component and DL contains a unique revision
-level indicator.
-
-@item Control register zero (CR0) is set such that the processor is in real
-mode with paging disabled. Other portions of CR0 are used to indicate the
-presence of a numeric coprocessor.
-
-@item All bits in the extended flags register (EFLAG) which are not
-permanently set are cleared. This inhibits all maskable interrupts.
-
-@item The Interrupt Descriptor Register (IDTR) is set to point at address
-zero.
-
-@item All segment registers are set to zero.
-
-@item The instruction pointer is set to 0x0000FFF0. The first instruction
-executed after a reset is actually at 0xFFFFFFF0 because the i386 asserts
-the upper twelve address until the first intersegment (FAR) JMP or CALL
-instruction. When a JMP or CALL is executed, the upper twelve address
-lines are lowered and the processor begins executing in the first megabyte
-of memory.
-
-@end itemize
-
-Typically, an intersegment JMP to the application's initialization code is
-placed at address 0xFFFFFFF0.
-
-@subsection Processor Initialization
-
-This initialization code is responsible for initializing all data
-structures required by the i386 in protected mode and for actually entering
-protected mode. The i386 must be placed in protected mode and the segment
-registers and associated selectors must be initialized before the
-initialize_executive directive is invoked.
-
-The initialization code is responsible for initializing the Global
-Descriptor Table such that the i386 is in the thirty-two bit flat memory
-model with paging disabled. In this mode, the i386 automatically converts
-every address from a logical to a physical address each time it is used.
-For more information on the memory model used by RTEMS, please refer to the
-Memory Model chapter in this document.
-
-Since the processor is in real mode upon reset, the processor must be
-switched to protected mode before RTEMS can execute. Before switching to
-protected mode, at least one descriptor table and two descriptors must be
-created. Descriptors are needed for a code segment and a data segment. (
-This will give you the flat memory model.) The stack can be placed in a
-normal read/write data segment, so no descriptor for the stack is needed.
-Before the GDT can be used, the base address and limit must be loaded into
-the GDTR register using an LGDT instruction.
-
-If the hardware allows an NMI to be generated, you need to create the IDT
-and a gate for the NMI interrupt handler. Before the IDT can be used, the
-base address and limit for the idt must be loaded into the IDTR register
-using an LIDT instruction.
-
-Protected mode is entered by setting thye PE bit in the CR0 register.
-Either a LMSW or MOV CR0 instruction may be used to set this bit. Because
-the processor overlaps the interpretation of several instructions, it is
-necessary to discard the instructions from the read-ahead cache. A JMP
-instruction immediately after the LMSW changes the flow and empties the
-processor if intructions which have been pre-fetched and/or decoded. At
-this point, the processor is in protected mode and begins to perform
-protected mode application initialization.
-
-If the application requires that the IDTR be some value besides zero, then
-it should set it to the required value at this point. All tasks share the
-same i386 IDTR value. Because interrupts are enabled automatically by
-RTEMS as part of the initialize_executive directive, the IDTR MUST be set
-properly before this directive is invoked to insure correct interrupt
-vectoring. If processor caching is to be utilized, then it should be
-enabled during the reset application initialization code. The reset code
-which is executed before the call to initialize_executive has the following
-requirements:
-
-For more information regarding the i386 data structures and their
-contents, refer to Intel's 386 Programmer's Reference Manual.
-
diff --git a/doc/cpu_supplement/lm32.t b/doc/cpu_supplement/lm32.t
deleted file mode 100644
index 6aab8e30f8..0000000000
--- a/doc/cpu_supplement/lm32.t
+++ /dev/null
@@ -1,192 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-@c Jukka Pietarinen <jukka.pietarinen@mrf.fi>, 2008,
-@c Micro-Research Finland Oy
-@c
-
-@ifinfo
-@end ifinfo
-@chapter Lattice Mico32 Specific Information
-
-This chaper discusses the Lattice Mico32 architecture dependencies in
-this port of RTEMS. The Lattice Mico32 is a 32-bit Harvard, RISC
-architecture "soft" microprocessor, available for free with an open IP
-core licensing agreement. Although mainly targeted for Lattice FPGA
-devices the microprocessor can be implemented on other vendors' FPGAs,
-too.
-
-@subheading Architecture Documents
-
-For information on the Lattice Mico32 architecture, refer to the
-following documents available from Lattice Semiconductor
-@file{http://www.latticesemi.com/}.
-
-@itemize @bullet
-@item @cite{"LatticeMico32 Processor Reference Manual"}
-@file{http://www.latticesemi.com/dynamic/view_document.cfm?document_id=20890}
-@end itemize
-
-@c
-@c
-@c
-@section CPU Model Dependent Features
-
-The Lattice Mico32 architecture allows for different configurations of
-the processor. This port is based on the assumption that the following options are implemented:
-
-@itemize @bullet
-@item hardware multiplier
-@item hardware divider
-@item hardware barrel shifter
-@item sign extension instructions
-@item instruction cache
-@item data cache
-@item debug
-@end itemize
-
-@c
-@c
-@c
-@section Register Architecture
-
-This section gives a brief introduction to the register architecture
-of the Lattice Mico32 processor.
-
-The Lattice Mico32 is a RISC archictecture processor with a
-32-register file of 32-bit registers.
-
-@multitable {Register Name} {general pupose / global pointer}
-@headitem Register Name @tab Function
-@item r0 @tab holds value zero
-@item r1-r25 @tab general purpose
-@item r26/gp @tab general pupose / global pointer
-@item r27/fp @tab general pupose / frame pointer
-@item r28/sp @tab stack pointer
-@item r29/ra @tab return address
-@item r30/ea @tab exception address
-@item r31/ba @tab breakpoint address
-@end multitable
-
-Note that on processor startup all register values are undefined
-including r0, thus r0 has to be initialized to zero.
-
-@c
-@c
-@c
-@section Calling Conventions
-
-@subsection Calling Mechanism
-
-A call instruction places the return address to register r29 and a
-return from subroutine (ret) is actually a branch to r29/ra.
-
-@subsection Register Usage
-
-A subroutine may freely use registers r1 to r10 which are @b{not}
-preserved across subroutine invocations.
-
-@subsection Parameter Passing
-
-When calling a C function the first eight arguments are stored in
-registers r1 to r8. Registers r1 and r2 hold the return value.
-
-@c
-@c
-@c
-@section Memory Model
-
-The Lattice Mico32 processor supports a flat memory model with a 4
-Gbyte address space with 32-bit addresses.
-
-The following data types are supported:
-
-@multitable {unsigned half-word} {Bits} {unsigned int / unsigned long}
-@headitem Type @tab Bits @tab C Compiler Type
-@item unsigned byte @tab 8 @tab unsigned char
-@item signed byte @tab 8 @tab char
-@item unsigned half-word @tab 16 @tab unsigned short
-@item signed half-word @tab 16 @tab short
-@item unsigned word @tab 32 @tab unsigned int / unsigned long
-@item signed word @tab 32 @tab int / long
-@end multitable
-
-Data accesses need to be aligned, with unaligned accesses result are
-undefined.
-
-@c
-@c
-@c
-@section Interrupt Processing
-
-The Lattice Mico32 has 32 interrupt lines which are however served by
-only one exception vector. When an interrupt occurs following happens:
-
-@itemize @bullet
-@item address of next instruction placed in r30/ea
-@item IE field of IE CSR saved to EIE field and IE field cleared preventing further exceptions from occuring.
-@item branch to interrupt exception address EBA CSR + 0xC0
-@end itemize
-
-The interrupt exception handler determines from the state of the
-interrupt pending registers (IP CSR) and interrupt enable register (IE
-CSR) which interrupt to serve and jumps to the interrupt routine
-pointed to by the corresponding interrupt vector.
-
-For now there is no dedicated interrupt stack so every task in
-the system MUST have enough stack space to accommodate the worst
-case stack usage of that particular task and the interrupt
-service routines COMBINED.
-
-Nested interrupts are not supported.
-
-@c
-@c
-@c
-@section Default Fatal Error Processing
-
-Upon detection of a fatal error by either the application or RTEMS during
-initialization the @code{rtems_fatal_error_occurred} directive supplied
-by the Fatal Error Manager is invoked. The Fatal Error Manager will
-invoke the user-supplied fatal error handlers. If no user-supplied
-handlers are configured or all of them return without taking action to
-shutdown the processor or reset, a default fatal error handler is invoked.
-
-Most of the action performed as part of processing the fatal error are
-described in detail in the Fatal Error Manager chapter in the User's
-Guide. However, the if no user provided extension or BSP specific fatal
-error handler takes action, the final default action is to invoke a
-CPU architecture specific function. Typically this function disables
-interrupts and halts the processor.
-
-In each of the architecture specific chapters, this describes the precise
-operations of the default CPU specific fatal error handler.
-
-@section Symmetric Multiprocessing
-
-SMP is not supported.
-
-@section Thread-Local Storage
-
-Thread-local storage is not implemented.
-
-@c
-@c
-@c
-
-@section Board Support Packages
-
-An RTEMS Board Support Package (BSP) must be designed to support a
-particular processor model and target board combination.
-
-In each of the architecture specific chapters, this section will present
-a discussion of architecture specific BSP issues. For more information
-on developing a BSP, refer to BSP and Device Driver Development Guide
-and the chapter titled Board Support Packages in the RTEMS
-Applications User's Guide.
-
-@subsection System Reset
-
-An RTEMS based application is initiated or re-initiated when the processor
-is reset.
diff --git a/doc/cpu_supplement/m32c.t b/doc/cpu_supplement/m32c.t
deleted file mode 100644
index 98d86c1cf2..0000000000
--- a/doc/cpu_supplement/m32c.t
+++ /dev/null
@@ -1,11 +0,0 @@
-@c Copyright (c) 2014 embedded brains GmbH. All rights reserved.
-
-@chapter Renesas M32C Specific Information
-
-@section Symmetric Multiprocessing
-
-SMP is not supported.
-
-@section Thread-Local Storage
-
-Thread-local storage is not implemented.
diff --git a/doc/cpu_supplement/m68k.t b/doc/cpu_supplement/m68k.t
deleted file mode 100644
index 7201571541..0000000000
--- a/doc/cpu_supplement/m68k.t
+++ /dev/null
@@ -1,439 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@ifinfo
-@end ifinfo
-@chapter M68xxx and Coldfire Specific Information
-
-This chapter discusses the Freescale (formerly Motorola) MC68xxx
-and Coldfire architectural dependencies. The MC68xxx family has a
-wide variety of CPU models within it based upon different CPU core
-implementations. Ignoring the Coldfire parts, the part numbers for
-these models are generally divided into MC680xx and MC683xx. The MC680xx
-models are more general purpose processors with no integrated peripherals.
-The MC683xx models, on the other hand, are more specialized and have a
-variety of peripherals on chip including sophisticated timers and serial
-communications controllers.
-
-@subheading Architecture Documents
-
-For information on the MC68xxx and Coldfire architecture, refer to the following documents available from Freescale website (@file{http//www.freescale.com/}):
-
-@itemize @bullet
-@item @cite{M68000 Family Reference, Motorola, FR68K/D}.
-@item @cite{MC68020 User's Manual, Motorola, MC68020UM/AD}.
-@item @cite{MC68881/MC68882 Floating-Point Coprocessor User's Manual,
-Motorola, MC68881UM/AD}.
-@end itemize
-
-@c
-@c
-@c
-@section CPU Model Dependent Features
-
-
-This section presents the set of features which vary
-across m68k/Coldfire implementations that are of importance to RTEMS.
-The set of CPU model feature macros are defined in the file
-@code{cpukit/score/cpu/m68k/m68k.h} based upon the particular CPU
-model selected on the compilation command line.
-
-@subsection BFFFO Instruction
-
-The macro @code{M68K_HAS_BFFFO} is set to 1 to indicate that
-this CPU model has the bfffo instruction.
-
-@subsection Vector Base Register
-
-The macro @code{M68K_HAS_VBR} is set to 1 to indicate that
-this CPU model has a vector base register (vbr).
-
-@subsection Separate Stacks
-
-The macro @code{M68K_HAS_SEPARATE_STACKS} is set to 1 to
-indicate that this CPU model has separate interrupt, user, and
-supervisor mode stacks.
-
-@subsection Pre-Indexing Address Mode
-
-The macro @code{M68K_HAS_PREINDEXING} is set to 1 to indicate that
-this CPU model has the pre-indexing address mode.
-
-@subsection Extend Byte to Long Instruction
-
-The macro @code{M68K_HAS_EXTB_L} is set to 1 to indicate that this CPU model
-has the extb.l instruction. This instruction is supposed to be available
-in all models based on the cpu32 core as well as mc68020 and up models.
-
-@c
-@c
-@c
-@section Calling Conventions
-
-The MC68xxx architecture supports a simple yet effective call and
-return mechanism. A subroutine is invoked via the branch to subroutine
-(@code{bsr}) or the jump to subroutine (@code{jsr}) instructions.
-These instructions push the return address on the current stack.
-The return from subroutine (@code{rts}) instruction pops the return
-address off the current stack and transfers control to that instruction.
-It is is important to note that the MC68xxx call and return mechanism does
-not automatically save or restore any registers. It is the responsibility
-of the high-level language compiler to define the register preservation
-and usage convention.
-
-@subsection Calling Mechanism
-
-All RTEMS directives are invoked using either a @code{bsr} or @code{jsr}
-instruction and return to the user application via the rts instruction.
-
-@subsection Register Usage
-
-As discussed above, the @code{bsr} and @code{jsr} instructions do not
-automatically save any registers. RTEMS uses the registers D0, D1,
-A0, and A1 as scratch registers. These registers are not preserved by
-RTEMS directives therefore, the contents of these registers should not
-be assumed upon return from any RTEMS directive.
-
-@subsection Parameter Passing
-
-RTEMS assumes that arguments are placed on the current stack before
-the directive is invoked via the bsr or jsr instruction. The first
-argument is assumed to be closest to the return address on the stack.
-This means that the first argument of the C calling sequence is pushed
-last. The following pseudo-code illustrates the typical sequence used
-to call a RTEMS directive with three (3) arguments:
-
-@example
-@group
-push third argument
-push second argument
-push first argument
-invoke directive
-remove arguments from the stack
-@end group
-@end example
-
-The arguments to RTEMS are typically pushed onto the stack using a move
-instruction with a pre-decremented stack pointer as the destination.
-These arguments must be removed from the stack after control is returned
-to the caller. This removal is typically accomplished by adding the
-size of the argument list in bytes to the current stack pointer.
-
-@c
-@c
-@c
-@section Memory Model
-
-The MC68xxx family supports a flat 32-bit address
-space with addresses ranging from 0x00000000 to 0xFFFFFFFF (4
-gigabytes). Each address is represented by a 32-bit value and
-is byte addressable. The address may be used to reference a
-single byte, word (2-bytes), or long word (4 bytes). Memory
-accesses within this address space are performed in big endian
-fashion by the processors in this family.
-
-Some of the MC68xxx family members such as the
-MC68020, MC68030, and MC68040 support virtual memory and
-segmentation. The MC68020 requires external hardware support
-such as the MC68851 Paged Memory Management Unit coprocessor
-which is typically used to perform address translations for
-these systems. RTEMS does not support virtual memory or
-segmentation on any of the MC68xxx family members.
-
-@c
-@c
-@c
-@section Interrupt Processing
-
-Discussed in this section are the MC68xxx's interrupt response and
-control mechanisms as they pertain to RTEMS.
-
-@subsection Vectoring of an Interrupt Handler
-
-Depending on whether or not the particular CPU supports a separate
-interrupt stack, the MC68xxx family has two different interrupt handling
-models.
-
-@subsubsection Models Without Separate Interrupt Stacks
-
-Upon receipt of an interrupt the MC68xxx family members without separate
-interrupt stacks automatically perform the following actions:
-
-@itemize @bullet
-@item To Be Written
-@end itemize
-
-@subsubsection Models With Separate Interrupt Stacks
-
-Upon receipt of an interrupt the MC68xxx family members with separate
-interrupt stacks automatically perform the following actions:
-
-@itemize @bullet
-@item saves the current status register (SR),
-
-@item clears the master/interrupt (M) bit of the SR to
-indicate the switch from master state to interrupt state,
-
-@item sets the privilege mode to supervisor,
-
-@item suppresses tracing,
-
-@item sets the interrupt mask level equal to the level of the
-interrupt being serviced,
-
-@item pushes an interrupt stack frame (ISF), which includes
-the program counter (PC), the status register (SR), and the
-format/exception vector offset (FVO) word, onto the supervisor
-and interrupt stacks,
-
-@item switches the current stack to the interrupt stack and
-vectors to an interrupt service routine (ISR). If the ISR was
-installed with the interrupt_catch directive, then the RTEMS
-interrupt handler will begin execution. The RTEMS interrupt
-handler saves all registers which are not preserved according to
-the calling conventions and invokes the application's ISR.
-@end itemize
-
-A nested interrupt is processed similarly by these
-CPU models with the exception that only a single ISF is placed
-on the interrupt stack and the current stack need not be
-switched.
-
-The FVO word in the Interrupt Stack Frame is examined
-by RTEMS to determine when an outer most interrupt is being
-exited. Since the FVO is used by RTEMS for this purpose, the
-user application code MUST NOT modify this field.
-
-The following shows the Interrupt Stack Frame for
-MC68xxx CPU models with separate interrupt stacks:
-
-@ifset use-ascii
-@example
-@group
- +----------------------+
- | Status Register | 0x0
- +----------------------+
- | Program Counter High | 0x2
- +----------------------+
- | Program Counter Low | 0x4
- +----------------------+
- | Format/Vector Offset | 0x6
- +----------------------+
-@end group
-@end example
-@end ifset
-
-@ifset use-tex
-@sp 1
-@tex
-\centerline{\vbox{\offinterlineskip\halign{
-\strut\vrule#&
-\hbox to 2.00in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 0.50in{\enskip\hfil#\hfil}
-\cr
-\multispan{3}\hrulefill\cr
-& Status Register && 0x0\cr
-\multispan{3}\hrulefill\cr
-& Program Counter High && 0x2\cr
-\multispan{3}\hrulefill\cr
-& Program Counter Low && 0x4\cr
-\multispan{3}\hrulefill\cr
-& Format/Vector Offset && 0x6\cr
-\multispan{3}\hrulefill\cr
-}}\hfil}
-@end tex
-@end ifset
-
-@ifset use-html
-@html
-<CENTER>
- <TABLE COLS=2 WIDTH="40%" BORDER=2>
-<TR><TD ALIGN=center><STRONG>Status Register</STRONG></TD>
- <TD ALIGN=center>0x0</TD></TR>
-<TR><TD ALIGN=center><STRONG>Program Counter High</STRONG></TD>
- <TD ALIGN=center>0x2</TD></TR>
-<TR><TD ALIGN=center><STRONG>Program Counter Low</STRONG></TD>
- <TD ALIGN=center>0x4</TD></TR>
-<TR><TD ALIGN=center><STRONG>Format/Vector Offset</STRONG></TD>
- <TD ALIGN=center>0x6</TD></TR>
- </TABLE>
-</CENTER>
-@end html
-@end ifset
-
-@subsection CPU Models Without VBR and RAM at 0
-
-This is from a post by Zoltan Kocsi <zoltan@@bendor.com.au> and is
-a nice trick in certain situations. In his words:
-
-I think somebody on this list asked about the interupt vector handling
-w/o VBR and RAM at 0. The usual trick is to initialise the vector table
-(except the first 2 two entries, of course) to point to the same location
-BUT you also add the vector number times 0x1000000 to them. That is,
-bits 31-24 contain the vector number and 23-0 the address of the common
-handler. Since the PC is 32 bit wide but the actual address bus is only
-24, the top byte will be in the PC but will be ignored when jumping onto
-your routine.
-
-Then your common interrupt routine gets this info by loading the PC
-into some register and based on that info, you can jump to a vector in
-a vector table pointed by a virtual VBR:
-
-@example
-//
-// Real vector table at 0
-//
-
- .long initial_sp
- .long initial_pc
- .long myhandler+0x02000000
- .long myhandler+0x03000000
- .long myhandler+0x04000000
- ...
- .long myhandler+0xff000000
-
-
-//
-// This handler will jump to the interrupt routine of which
-// the address is stored at VBR[ vector_no ]
-// The registers and stackframe will be intact, the interrupt
-// routine will see exactly what it would see if it was called
-// directly from the HW vector table at 0.
-//
-
- .comm VBR,4,2 // This defines the 'virtual' VBR
- // From C: extern void *VBR;
-
-myhandler: // At entry, PC contains the full vector
- move.l %d0,-(%sp) // Save d0
- move.l %a0,-(%sp) // Save a0
- lea 0(%pc),%a0 // Get the value of the PC
- move.l %a0,%d0 // Copy it to a data reg, d0 is VV??????
- swap %d0 // Now d0 is ????VV??
- and.w #0xff00,%d0 // Now d0 is ????VV00 (1)
- lsr.w #6,%d0 // Now d0.w contains the VBR table offset
- move.l VBR,%a0 // Get the address from VBR to a0
- move.l (%a0,%d0.w),%a0 // Fetch the vector
- move.l 4(%sp),%d0 // Restore d0
- move.l %a0,4(%sp) // Place target address to the stack
- move.l (%sp)+,%a0 // Restore a0, target address is on TOS
- ret // This will jump to the handler and
- // restore the stack
-
-(1) If 'myhandler' is guaranteed to be in the first 64K, e.g. just
- after the vector table then that insn is not needed.
-
-@end example
-
-There are probably shorter ways to do this, but it I believe is enough
-to illustrate the trick. Optimisation is left as an exercise to the
-reader :-)
-
-
-@subsection Interrupt Levels
-
-Eight levels (0-7) of interrupt priorities are
-supported by MC68xxx family members with level seven (7) being
-the highest priority. Level zero (0) indicates that interrupts
-are fully enabled. Interrupt requests for interrupts with
-priorities less than or equal to the current interrupt mask
-level are ignored.
-
-Although RTEMS supports 256 interrupt levels, the
-MC68xxx family only supports eight. RTEMS interrupt levels 0
-through 7 directly correspond to MC68xxx interrupt levels. All
-other RTEMS interrupt levels are undefined and their behavior is
-unpredictable.
-
-@c
-@c
-@c
-@section Default Fatal Error Processing
-
-The default fatal error handler for this architecture disables processor
-interrupts to level 7, places the error code in D0, and executes a
-@code{stop} instruction to simulate a halt processor instruction.
-
-@section Symmetric Multiprocessing
-
-SMP is not supported.
-
-@section Thread-Local Storage
-
-Thread-local storage is supported.
-
-@c
-@c
-@c
-
-@section Board Support Packages
-
-@subsection System Reset
-
-An RTEMS based application is initiated or re-initiated when the MC68020
-processor is reset. When the MC68020 is reset, the processor performs
-the following actions:
-
-@itemize @bullet
-@item The tracing bits of the status register are cleared to
-disable tracing.
-
-@item The supervisor interrupt state is entered by setting the
-supervisor (S) bit and clearing the master/interrupt (M) bit of
-the status register.
-
-@item The interrupt mask of the status register is set to
-level 7 to effectively disable all maskable interrupts.
-
-@item The vector base register (VBR) is set to zero.
-
-@item The cache control register (CACR) is set to zero to
-disable and freeze the processor cache.
-
-@item The interrupt stack pointer (ISP) is set to the value
-stored at vector 0 (bytes 0-3) of the exception vector table
-(EVT).
-
-@item The program counter (PC) is set to the value stored at
-vector 1 (bytes 4-7) of the EVT.
-
-@item The processor begins execution at the address stored in
-the PC.
-@end itemize
-
-@subsection Processor Initialization
-
-The address of the application's initialization code should be stored in
-the first vector of the EVT which will allow the immediate vectoring to
-the application code. If the application requires that the VBR be some
-value besides zero, then it should be set to the required value at this
-point. All tasks share the same MC68020's VBR value. Because interrupts
-are enabled automatically by RTEMS as part of the context switch to the
-first task, the VBR MUST be set by either RTEMS of the BSP before this
-occurs ensure correct interrupt vectoring. If processor caching is
-to be utilized, then it should be enabled during the reset application
-initialization code.
-
-In addition to the requirements described in the
-Board Support Packages chapter of the Applications User's
-Manual for the reset code which is executed before the call to
-initialize executive, the MC68020 version has the following
-specific requirements:
-
-@itemize @bullet
-@item Must leave the S bit of the status register set so that
-the MC68020 remains in the supervisor state.
-
-@item Must set the M bit of the status register to remove the
-MC68020 from the interrupt state.
-
-@item Must set the master stack pointer (MSP) such that a
-minimum stack size of MINIMUM_STACK_SIZE bytes is provided for
-the initialize executive directive.
-
-@item Must initialize the MC68020's vector table.
-@end itemize
-
diff --git a/doc/cpu_supplement/microblaze.t b/doc/cpu_supplement/microblaze.t
deleted file mode 100644
index ff52d2e4ee..0000000000
--- a/doc/cpu_supplement/microblaze.t
+++ /dev/null
@@ -1,11 +0,0 @@
-@c Copyright (c) 2014 embedded brains GmbH. All rights reserved.
-
-@chapter Xilinx MicroBlaze Specific Information
-
-@section Symmetric Multiprocessing
-
-SMP is not supported.
-
-@section Thread-Local Storage
-
-Thread-local storage is not implemented.
diff --git a/doc/cpu_supplement/mips.t b/doc/cpu_supplement/mips.t
deleted file mode 100644
index c966bf5e9c..0000000000
--- a/doc/cpu_supplement/mips.t
+++ /dev/null
@@ -1,151 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@ifinfo
-@end ifinfo
-@chapter MIPS Specific Information
-
-This chapter discusses the MIPS architecture dependencies
-in this port of RTEMS. The MIPS family has a wide variety
-of implementations by a wide range of vendors. Consequently,
-there are many, many CPU models within it.
-
-@subheading Architecture Documents
-
-IDT docs are online at http://www.idt.com/products/risc/Welcome.html
-
-For information on the XXX architecture, refer to the following documents
-available from VENDOR (@file{http//www.XXX.com/}):
-
-@itemize @bullet
-@item @cite{XXX Family Reference, VENDOR, PART NUMBER}.
-@end itemize
-
-@c
-@c
-@c
-
-@section CPU Model Dependent Features
-
-This section presents the set of features which vary
-across MIPS implementations and are of importance to RTEMS.
-The set of CPU model feature macros are defined in the file
-@code{cpukit/score/cpu/mips/mips.h} based upon the particular CPU
-model specified on the compilation command line.
-
-@subsection Another Optional Feature
-
-The macro XXX
-
-@c
-@c
-@c
-
-@section Calling Conventions
-
-@subsection Processor Background
-
-TBD
-
-@subsection Calling Mechanism
-
-TBD
-
-@subsection Register Usage
-
-TBD
-
-@subsection Parameter Passing
-
-TBD
-
-@c
-@c
-@c
-@section Memory Model
-
-@subsection Flat Memory Model
-
-The MIPS family supports a flat 32-bit address
-space with addresses ranging from 0x00000000 to 0xFFFFFFFF (4
-gigabytes). Each address is represented by a 32-bit value and
-is byte addressable. The address may be used to reference a
-single byte, word (2-bytes), or long word (4 bytes). Memory
-accesses within this address space are performed in big endian
-fashion by the processors in this family.
-
-Some of the MIPS family members such as the support virtual memory and
-segmentation. RTEMS does not support virtual memory or
-segmentation on any of these family members.
-
-@c
-@c
-@c
-
-@section Interrupt Processing
-
-Although RTEMS hides many of the processor dependent
-details of interrupt processing, it is important to understand
-how the RTEMS interrupt manager is mapped onto the processor's
-unique architecture. Discussed in this chapter are the MIPS's
-interrupt response and control mechanisms as they pertain to
-RTEMS.
-
-@subsection Vectoring of an Interrupt Handler
-
-Upon receipt of an interrupt the XXX family
-members with separate interrupt stacks automatically perform the
-following actions:
-
-@itemize @bullet
-@item TBD
-
-@end itemize
-
-A nested interrupt is processed similarly by these
-CPU models with the exception that only a single ISF is placed
-on the interrupt stack and the current stack need not be
-switched.
-
-@subsection Interrupt Levels
-
-TBD
-
-@c
-@c
-@c
-@section Default Fatal Error Processing
-
-The default fatal error handler for this target architecture disables
-processor interrupts, places the error code in @b{XXX}, and executes a
-@code{XXX} instruction to simulate a halt processor instruction.
-
-@section Symmetric Multiprocessing
-
-SMP is not supported.
-
-@section Thread-Local Storage
-
-Thread-local storage is not implemented.
-
-@c
-@c
-@c
-@section Board Support Packages
-
-@subsection System Reset
-
-An RTEMS based application is initiated or
-re-initiated when the processor is reset. When the
-processor is reset, it performs the following actions:
-
-@itemize @bullet
-@item TBD
-
-@end itemize
-
-@subsection Processor Initialization
-
-TBD
diff --git a/doc/cpu_supplement/nios2.t b/doc/cpu_supplement/nios2.t
deleted file mode 100644
index 2d423c7e3b..0000000000
--- a/doc/cpu_supplement/nios2.t
+++ /dev/null
@@ -1,11 +0,0 @@
-@c Copyright (c) 2014 embedded brains GmbH. All rights reserved.
-
-@chapter Altera Nios II Specific Information
-
-@section Symmetric Multiprocessing
-
-SMP is not supported.
-
-@section Thread-Local Storage
-
-Thread-local storage is not implemented.
diff --git a/doc/cpu_supplement/or1k.t b/doc/cpu_supplement/or1k.t
deleted file mode 100644
index 4d14f74ede..0000000000
--- a/doc/cpu_supplement/or1k.t
+++ /dev/null
@@ -1,80 +0,0 @@
-@c
-@c COPYRIGHT (c) 2014 Hesham ALMatary <heshamelmatary@gmail.com>
-@c All rights reserved.
-
-@ifinfo
-@end ifinfo
-@chapter OpenRISC 1000 Specific Information
-
-This chapter discusses the
-@uref{http://opencores.org/or1k/Main_Page, OpenRISC 1000 architecture}
-dependencies in this port of RTEMS. There are many implementations
-for OpenRISC like or1200 and mor1kx. Currently RTEMS supports basic
-features that all implementations should have.
-
-@subheading Architecture Documents
-
-For information on the OpenRISC 1000 architecture refer to the
-@uref{http://openrisc.github.io/or1k.html,OpenRISC 1000 architecture manual}.
-
-@section Calling Conventions
-
-Please refer to the
-@uref{http://openrisc.github.io/or1k.html#__RefHeading__504887_595890882,Function Calling Sequence}.
-
-@subsection Floating Point Unit
-
-A floating point unit is currently not supported.
-
-@section Memory Model
-
-A flat 32-bit memory model is supported.
-
-@section Interrupt Processing
-
-OpenRISC 1000 architecture has 13 exception types:
-
-@itemize @bullet
-
-@item Reset
-@item Bus Error
-@item Data Page Fault
-@item Instruction Page Fault
-@item Tick Timer
-@item Alignment
-@item Illegal Instruction
-@item External Interrupt
-@item D-TLB Miss
-@item I-TLB Miss
-@item Range
-@item System Call
-@item Floating Point
-@item Trap
-
-@end itemize
-
-@subsection Interrupt Levels
-
-There are only two levels: interrupts enabled and interrupts disabled.
-
-@subsection Interrupt Stack
-
-The OpenRISC RTEMS port uses a dedicated software interrupt stack.
-The stack for interrupts is allocated during interrupt driver initialization.
-When an interrupt is entered, the _ISR_Handler routine is responsible for
-switching from the interrupted task stack to RTEMS software interrupt stack.
-
-@section Default Fatal Error Processing
-
-The default fatal error handler for this architecture performs the
-following actions:
-
-@itemize @bullet
-@item disables operating system supported interrupts (IRQ),
-@item places the error code in @code{r0}, and
-@item executes an infinite loop to simulate a halt processor instruction.
-@end itemize
-
-@section Symmetric Multiprocessing
-
-SMP is not supported.
diff --git a/doc/cpu_supplement/powerpc.t b/doc/cpu_supplement/powerpc.t
deleted file mode 100644
index 4e7af1f958..0000000000
--- a/doc/cpu_supplement/powerpc.t
+++ /dev/null
@@ -1,721 +0,0 @@
-@c
-@c COPYRIGHT (c) 1989-2007.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@ifinfo
-@end ifinfo
-@chapter PowerPC Specific Information
-
-This chapter discusses the PowerPC architecture dependencies
-in this port of RTEMS. The PowerPC family has a wide variety
-of implementations by a range of vendors. Consequently,
-there are many, many CPU models within it.
-
-It is highly recommended that the PowerPC RTEMS
-application developer obtain and become familiar with the
-documentation for the processor being used as well as the
-specification for the revision of the PowerPC architecture which
-corresponds to that processor.
-
-@subheading PowerPC Architecture Documents
-
-For information on the PowerPC architecture, refer to
-the following documents available from Motorola and IBM:
-
-@itemize @bullet
-
-@item @cite{PowerPC Microprocessor Family: The Programming Environment}
-(Motorola Document MPRPPCFPE-01).
-
-@item @cite{IBM PPC403GB Embedded Controller User's Manual}.
-
-@item @cite{PoweRisControl MPC500 Family RCPU RISC Central Processing
-Unit Reference Manual} (Motorola Document RCPUURM/AD).
-
-@item @cite{PowerPC 601 RISC Microprocessor User's Manual}
-(Motorola Document MPR601UM/AD).
-
-@item @cite{PowerPC 603 RISC Microprocessor User's Manual}
-(Motorola Document MPR603UM/AD).
-
-@item @cite{PowerPC 603e RISC Microprocessor User's Manual}
-(Motorola Document MPR603EUM/AD).
-
-@item @cite{PowerPC 604 RISC Microprocessor User's Manual}
-(Motorola Document MPR604UM/AD).
-
-@item @cite{PowerPC MPC821 Portable Systems Microprocessor User's Manual}
-(Motorola Document MPC821UM/AD).
-
-@item @cite{PowerQUICC MPC860 User's Manual} (Motorola Document MPC860UM/AD).
-
-@end itemize
-
-Motorola maintains an on-line electronic library for the PowerPC
-at the following URL:
-
-@itemize @code{ }
-@item @cite{http://www.mot.com/powerpc/library/library.html}
-@end itemize
-
-This site has a a wealth of information and examples. Many of the
-manuals are available from that site in electronic format.
-
-@subheading PowerPC Processor Simulator Information
-
-PSIM is a program which emulates the Instruction Set Architecture
-of the PowerPC microprocessor family. It is reely available in source
-code form under the terms of the GNU General Public License (version
-2 or later). PSIM can be integrated with the GNU Debugger (gdb) to
-execute and debug PowerPC executables on non-PowerPC hosts. PSIM
-supports the addition of user provided device models which can be
-used to allow one to develop and debug embedded applications using
-the simulator.
-
-The latest version of PSIM is included in GDB and enabled on pre-built
-binaries provided by the RTEMS Project.
-
-@c
-@c
-@c
-@section CPU Model Dependent Features
-
-This section presents the set of features which vary
-across PowerPC implementations and are of importance to RTEMS.
-The set of CPU model feature macros are defined in the file
-@code{cpukit/score/cpu/powerpc/powerpc.h} based upon the particular CPU
-model specified on the compilation command line.
-
-@subsection Alignment
-
-The macro PPC_ALIGNMENT is set to the PowerPC model's worst case alignment
-requirement for data types on a byte boundary. This value is used
-to derive the alignment restrictions for memory allocated from
-regions and partitions.
-
-@subsection Cache Alignment
-
-The macro PPC_CACHE_ALIGNMENT is set to the line size of the cache. It is
-used to align the entry point of critical routines so that as much code
-as possible can be retrieved with the initial read into cache. This
-is done for the interrupt handler as well as the context switch routines.
-
-In addition, the "shortcut" data structure used by the PowerPC implementation
-to ease access to data elements frequently accessed by RTEMS routines
-implemented in assembly language is aligned using this value.
-
-@subsection Maximum Interrupts
-
-The macro PPC_INTERRUPT_MAX is set to the number of exception sources
-supported by this PowerPC model.
-
-@subsection Has Double Precision Floating Point
-
-The macro PPC_HAS_DOUBLE is set to 1 to indicate that the PowerPC model
-has support for double precision floating point numbers. This is
-important because the floating point registers need only be four bytes
-wide (not eight) if double precision is not supported.
-
-@subsection Critical Interrupts
-
-The macro PPC_HAS_RFCI is set to 1 to indicate that the PowerPC model
-has the Critical Interrupt capability as defined by the IBM 403 models.
-
-@subsection Use Multiword Load/Store Instructions
-
-The macro PPC_USE_MULTIPLE is set to 1 to indicate that multiword load and
-store instructions should be used to perform context switch operations.
-The relative efficiency of multiword load and store instructions versus
-an equivalent set of single word load and store instructions varies based
-upon the PowerPC model.
-
-@subsection Instruction Cache Size
-
-The macro PPC_I_CACHE is set to the size in bytes of the instruction cache.
-
-@subsection Data Cache Size
-
-The macro PPC_D_CACHE is set to the size in bytes of the data cache.
-
-@subsection Debug Model
-
-The macro PPC_DEBUG_MODEL is set to indicate the debug support features
-present in this CPU model. The following debug support feature sets
-are currently supported:
-
-@table @b
-
-@item @code{PPC_DEBUG_MODEL_STANDARD}
-indicates that the single-step trace enable (SE) and branch trace
-enable (BE) bits in the MSR are supported by this CPU model.
-
-@item @code{PPC_DEBUG_MODEL_SINGLE_STEP_ONLY}
-indicates that only the single-step trace enable (SE) bit in the MSR
-is supported by this CPU model.
-
-@item @code{PPC_DEBUG_MODEL_IBM4xx}
-indicates that the debug exception enable (DE) bit in the MSR is supported
-by this CPU model. At this time, this particular debug feature set
-has only been seen in the IBM 4xx series.
-
-@end table
-
-@subsubsection Low Power Model
-
-The macro PPC_LOW_POWER_MODE is set to indicate the low power model
-supported by this CPU model. The following low power modes are currently
-supported.
-
-@table @b
-
-@item @code{PPC_LOW_POWER_MODE_NONE}
-indicates that this CPU model has no low power mode support.
-
-@item @code{PPC_LOW_POWER_MODE_STANDARD}
-indicates that this CPU model follows the low power model defined for
-the PPC603e.
-
-@end table
-
-@c
-@c
-@c
-@section Multilibs
-
-The following multilibs are available:
-
-@enumerate
-@item @code{.}: 32-bit PowerPC with FPU
-@item @code{nof}: 32-bit PowerPC with software floating point support
-@item @code{m403}: Instruction set for PPC403 with FPU
-@item @code{m505}: Instruction set for MPC505 with FPU
-@item @code{m603e}: Instruction set for MPC603e with FPU
-@item @code{m603e/nof}: Instruction set for MPC603e with software floating
-point support
-@item @code{m604}: Instruction set for MPC604 with FPU
-@item @code{m604/nof}: Instruction set for MPC604 with software floating point
-support
-@item @code{m860}: Instruction set for MPC860 with FPU
-@item @code{m7400}: Instruction set for MPC7500 with FPU
-@item @code{m7400/nof}: Instruction set for MPC7500 with software floating
-point support
-@item @code{m8540}: Instruction set for e200, e500 and e500v2 cores with
-single-precision FPU and SPE
-@item @code{m8540/gprsdouble}: Instruction set for e200, e500 and e500v2 cores
-with double-precision FPU and SPE
-@item @code{m8540/nof/nospe}: Instruction set for e200, e500 and e500v2 cores
-with software floating point support and no SPE
-@item @code{me6500/m32}: 32-bit instruction set for e6500 core with FPU and
-AltiVec
-@item @code{me6500/m32/nof/noaltivec}: 32-bit instruction set for e6500 core
-with software floating point support and no AltiVec
-@end enumerate
-
-@c
-@c
-@c
-
-@section Calling Conventions
-
-RTEMS supports the Embedded Application Binary Interface (EABI)
-calling convention. Documentation for EABI is available by sending
-a message with a subject line of "EABI" to eabi@@goth.sis.mot.com.
-
-@subsection Programming Model
-
-This section discusses the programming model for the
-PowerPC architecture.
-
-@subsubsection Non-Floating Point Registers
-
-The PowerPC architecture defines thirty-two non-floating point registers
-directly visible to the programmer. In thirty-two bit implementations, each
-register is thirty-two bits wide. In sixty-four bit implementations, each
-register is sixty-four bits wide.
-
-These registers are referred to as @code{gpr0} to @code{gpr31}.
-
-Some of the registers serve defined roles in the EABI programming model.
-The following table describes the role of each of these registers:
-
-@ifset use-ascii
-@example
-@group
- +---------------+----------------+------------------------------+
- | Register Name | Alternate Name | Description |
- +---------------+----------------+------------------------------+
- | r1 | sp | stack pointer |
- +---------------+----------------+------------------------------+
- | | | global pointer to the Small |
- | r2 | na | Constant Area (SDA2) |
- +---------------+----------------+------------------------------+
- | r3 - r12 | na | parameter and result passing |
- +---------------+----------------+------------------------------+
- | | | global pointer to the Small |
- | r13 | na | Data Area (SDA) |
- +---------------+----------------+------------------------------+
-@end group
-@end example
-@end ifset
-
-@ifset use-tex
-@sp 1
-@tex
-\centerline{\vbox{\offinterlineskip\halign{
-\vrule\strut#&
-\hbox to 1.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 1.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 2.50in{\enskip\hfil#\hfil}&
-\vrule#\cr
-\noalign{\hrule}
-&\bf Register Name &&\bf Alternate Names&&\bf Description&\cr\noalign{\hrule}
-&r1&&sp&&stack pointer&\cr\noalign{\hrule}
-&r2&&NA&&global pointer to the Small&\cr
-&&&&&Constant Area (SDA2)&\cr\noalign{\hrule}
-&r3 - r12&&NA&&parameter and result passing&\cr\noalign{\hrule}
-&r13&&NA&&global pointer to the Small&\cr
-&&&&&Data Area (SDA2)&\cr\noalign{\hrule}
-}}\hfil}
-@end tex
-@end ifset
-
-@ifset use-html
-@html
-<CENTER>
- <TABLE COLS=3 WIDTH="80%" BORDER=2>
-<TR><TD ALIGN=center><STRONG>Register Name</STRONG></TD>
- <TD ALIGN=center><STRONG>Alternate Name</STRONG></TD>
- <TD ALIGN=center><STRONG>Description</STRONG></TD></TR>
-<TR><TD ALIGN=center>r1</TD>
- <TD ALIGN=center>sp</TD>
- <TD ALIGN=center>stack pointer</TD></TR>
-<TR><TD ALIGN=center>r2</TD>
- <TD ALIGN=center>na</TD>
- <TD ALIGN=center>global pointer to the Small Constant Area (SDA2)</TD></TR>
-<TR><TD ALIGN=center>r3 - r12</TD>
- <TD ALIGN=center>NA</TD>
- <TD ALIGN=center>parameter and result passing</TD></TR>
-<TR><TD ALIGN=center>r13</TD>
- <TD ALIGN=center>NA</TD>
- <TD ALIGN=center>global pointer to the Small Data Area (SDA)</TD></TR>
- </TABLE>
-</CENTER>
-@end html
-@end ifset
-
-
-@subsubsection Floating Point Registers
-
-The PowerPC architecture includes thirty-two, sixty-four bit
-floating point registers. All PowerPC floating point instructions
-interpret these registers as 32 double precision floating point registers,
-regardless of whether the processor has 64-bit or 32-bit implementation.
-
-The floating point status and control register (fpscr) records exceptions
-and the type of result generated by floating-point operations.
-Additionally, it controls the rounding mode of operations and allows the
-reporting of floating exceptions to be enabled or disabled.
-
-@subsubsection Special Registers
-
-The PowerPC architecture includes a number of special registers
-which are critical to the programming model:
-
-@table @b
-
-@item Machine State Register
-
-The MSR contains the processor mode, power management mode, endian mode,
-exception information, privilege level, floating point available and
-floating point excepiton mode, address translation information and
-the exception prefix.
-
-@item Link Register
-
-The LR contains the return address after a function call. This register
-must be saved before a subsequent subroutine call can be made. The
-use of this register is discussed further in the @b{Call and Return
-Mechanism} section below.
-
-@item Count Register
-
-The CTR contains the iteration variable for some loops. It may also be used
-for indirect function calls and jumps.
-
-@end table
-
-@subsection Call and Return Mechanism
-
-The PowerPC architecture supports a simple yet effective call
-and return mechanism. A subroutine is invoked
-via the "branch and link" (@code{bl}) and
-"brank and link absolute" (@code{bla})
-instructions. This instructions place the return address
-in the Link Register (LR). The callee returns to the caller by
-executing a "branch unconditional to the link register" (@code{blr})
-instruction. Thus the callee returns to the caller via a jump
-to the return address which is stored in the LR.
-
-The previous contents of the LR are not automatically saved
-by either the @code{bl} or @code{bla}. It is the responsibility
-of the callee to save the contents of the LR before invoking
-another subroutine. If the callee invokes another subroutine,
-it must restore the LR before executing the @code{blr} instruction
-to return to the caller.
-
-It is important to note that the PowerPC subroutine
-call and return mechanism does not automatically save and
-restore any registers.
-
-The LR may be accessed as special purpose register 8 (@code{SPR8}) using the
-"move from special register" (@code{mfspr}) and
-"move to special register" (@code{mtspr}) instructions.
-
-@subsection Calling Mechanism
-
-All RTEMS directives are invoked using the regular
-PowerPC EABI calling convention via the @code{bl} or
-@code{bla} instructions.
-
-@subsection Register Usage
-
-As discussed above, the call instruction does not
-automatically save any registers. It is the responsibility
-of the callee to save and restore any registers which must be preserved
-across subroutine calls. The callee is responsible for saving
-callee-preserved registers to the program stack and restoring them
-before returning to the caller.
-
-@subsection Parameter Passing
-
-RTEMS assumes that arguments are placed in the
-general purpose registers with the first argument in
-register 3 (@code{r3}), the second argument in general purpose
-register 4 (@code{r4}), and so forth until the seventh
-argument is in general purpose register 10 (@code{r10}).
-If there are more than seven arguments, then subsequent arguments
-are placed on the program stack. The following pseudo-code
-illustrates the typical sequence used to call a RTEMS directive
-with three (3) arguments:
-
-@example
-load third argument into r5
-load second argument into r4
-load first argument into r3
-invoke directive
-@end example
-
-@c
-@c
-@c
-
-@section Memory Model
-
-@subsection Flat Memory Model
-
-The PowerPC architecture supports a variety of memory models.
-RTEMS supports the PowerPC using a flat memory model with
-paging disabled. In this mode, the PowerPC automatically
-converts every address from a logical to a physical address
-each time it is used. The PowerPC uses information provided
-in the Block Address Translation (BAT) to convert these addresses.
-
-Implementations of the PowerPC architecture may be thirty-two or sixty-four bit.
-The PowerPC architecture supports a flat thirty-two or sixty-four bit address
-space with addresses ranging from 0x00000000 to 0xFFFFFFFF (4
-gigabytes) in thirty-two bit implementations or to 0xFFFFFFFFFFFFFFFF
-in sixty-four bit implementations. Each address is represented
-by either a thirty-two bit or sixty-four bit value and is byte addressable.
-The address may be used to reference a single byte, half-word
-(2-bytes), word (4 bytes), or in sixty-four bit implementations a
-doubleword (8 bytes). Memory accesses within the address space are
-performed in big or little endian fashion by the PowerPC based
-upon the current setting of the Little-endian mode enable bit (LE)
-in the Machine State Register (MSR). While the processor is in
-big endian mode, memory accesses which are not properly aligned
-generate an "alignment exception" (vector offset 0x00600). In
-little endian mode, the PowerPC architecture does not require
-the processor to generate alignment exceptions.
-
-The following table lists the alignment requirements for a variety
-of data accesses:
-
-@ifset use-ascii
-@example
-@group
- +--------------+-----------------------+
- | Data Type | Alignment Requirement |
- +--------------+-----------------------+
- | byte | 1 |
- | half-word | 2 |
- | word | 4 |
- | doubleword | 8 |
- +--------------+-----------------------+
-@end group
-@end example
-@end ifset
-
-@ifset use-tex
-@sp 1
-@tex
-\centerline{\vbox{\offinterlineskip\halign{
-\vrule\strut#&
-\hbox to 1.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 1.75in{\enskip\hfil#\hfil}&
-\vrule#\cr
-\noalign{\hrule}
-&\bf Data Type &&\bf Alignment Requirement&\cr\noalign{\hrule}
-&byte&&1&\cr\noalign{\hrule}
-&half-word&&2&\cr\noalign{\hrule}
-&word&&4&\cr\noalign{\hrule}
-&doubleword&&8&\cr\noalign{\hrule}
-}}\hfil}
-@end tex
-@end ifset
-
-@ifset use-html
-@html
-<CENTER>
- <TABLE COLS=2 WIDTH="60%" BORDER=2>
-<TR><TD ALIGN=center><STRONG>Data Type</STRONG></TD>
- <TD ALIGN=center><STRONG>Alignment Requirement</STRONG></TD></TR>
-<TR><TD ALIGN=center>byte</TD>
- <TD ALIGN=center>1</TD></TR>
-<TR><TD ALIGN=center>half-word</TD>
- <TD ALIGN=center>2</TD></TR>
-<TR><TD ALIGN=center>word</TD>
- <TD ALIGN=center>4</TD></TR>
-<TR><TD ALIGN=center>doubleword</TD>
- <TD ALIGN=center>8</TD></TR>
- </TABLE>
-</CENTER>
-@end html
-@end ifset
-
-Doubleword load and store operations are only available in
-PowerPC CPU models which are sixty-four bit implementations.
-
-RTEMS does not directly support any PowerPC Memory Management
-Units, therefore, virtual memory or segmentation systems
-involving the PowerPC are not supported.
-
-@c
-@c COPYRIGHT (c) 1989-2007.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@section Interrupt Processing
-
-Although RTEMS hides many of the processor dependent
-details of interrupt processing, it is important to understand
-how the RTEMS interrupt manager is mapped onto the processor's
-unique architecture. Discussed in this chapter are the PowerPC's
-interrupt response and control mechanisms as they pertain to
-RTEMS.
-
-RTEMS and associated documentation uses the terms interrupt and vector.
-In the PowerPC architecture, these terms correspond to exception and
-exception handler, respectively. The terms will be used interchangeably
-in this manual.
-
-@subsection Synchronous Versus Asynchronous Exceptions
-
-In the PowerPC architecture exceptions can be either precise or
-imprecise and either synchronous or asynchronous. Asynchronous
-exceptions occur when an external event interrupts the processor.
-Synchronous exceptions are caused by the actions of an
-instruction. During an exception SRR0 is used to calculate where
-instruction processing should resume. All instructions prior to
-the resume instruction will have completed execution. SRR1 is used to
-store the machine status.
-
-There are two asynchronous nonmaskable, highest-priority exceptions
-system reset and machine check. There are two asynchrononous maskable
-low-priority exceptions external interrupt and decrementer. Nonmaskable
-execptions are never delayed, therefore if two nonmaskable, asynchronous
-exceptions occur in immediate succession, the state information saved by
-the first exception may be overwritten when the subsequent exception occurs.
-
-The PowerPC arcitecure defines one imprecise exception, the imprecise
-floating point enabled exception. All other synchronous exceptions are
-precise. The synchronization occuring during asynchronous precise
-exceptions conforms to the requirements for context synchronization.
-
-@subsection Vectoring of Interrupt Handler
-
-Upon determining that an exception can be taken the PowerPC automatically
-performs the following actions:
-
-@itemize @bullet
-@item an instruction address is loaded into SRR0
-
-@item bits 33-36 and 42-47 of SRR1 are loaded with information
-specific to the exception.
-
-@item bits 0-32, 37-41, and 48-63 of SRR1 are loaded with corresponding
-bits from the MSR.
-
-@item the MSR is set based upon the exception type.
-
-@item instruction fetch and execution resumes, using the new MSR value, at a location specific to the execption type.
-
-@end itemize
-
-If the interrupt handler was installed as an RTEMS
-interrupt handler, then upon receipt of the interrupt, the
-processor passes control to the RTEMS interrupt handler which
-performs the following actions:
-
-@itemize @bullet
-@item saves the state of the interrupted task on it's stack,
-
-@item saves all registers which are not normally preserved
-by the calling sequence so the user's interrupt service
-routine can be written in a high-level language.
-
-@item if this is the outermost (i.e. non-nested) interrupt,
-then the RTEMS interrupt handler switches from the current stack
-to the interrupt stack,
-
-@item enables exceptions,
-
-@item invokes the vectors to a user interrupt service routine (ISR).
-@end itemize
-
-Asynchronous interrupts are ignored while exceptions are
-disabled. Synchronous interrupts which occur while are
-disabled result in the CPU being forced into an error mode.
-
-A nested interrupt is processed similarly with the
-exception that the current stack need not be switched to the
-interrupt stack.
-
-@subsection Interrupt Levels
-
-The PowerPC architecture supports only a single external
-asynchronous interrupt source. This interrupt source
-may be enabled and disabled via the External Interrupt Enable (EE)
-bit in the Machine State Register (MSR). Thus only two level (enabled
-and disabled) of external device interrupt priorities are
-directly supported by the PowerPC architecture.
-
-Some PowerPC implementations include a Critical Interrupt capability
-which is often used to receive interrupts from high priority external
-devices.
-
-The RTEMS interrupt level mapping scheme for the PowerPC is not
-a numeric level as on most RTEMS ports. It is a bit mapping in
-which the least three significiant bits of the interrupt level
-are mapped directly to the enabling of specific interrupt
-sources as follows:
-
-@table @b
-
-@item Critical Interrupt
-Setting bit 0 (the least significant bit) of the interrupt level
-enables the Critical Interrupt source, if it is available on this
-CPU model.
-
-@item Machine Check
-Setting bit 1 of the interrupt level enables Machine Check execptions.
-
-@item External Interrupt
-Setting bit 2 of the interrupt level enables External Interrupt execptions.
-
-@end table
-
-All other bits in the RTEMS task interrupt level are ignored.
-
-@c
-@c
-@c
-
-@section Default Fatal Error Processing
-
-The default fatal error handler for this architecture performs the
-following actions:
-
-@itemize @bullet
-
-@item places the error code in r3, and
-
-@item executes a trap instruction which results in a Program Exception.
-
-@end itemize
-
-If the Program Exception returns, then the following actions are performed:
-
-@itemize @bullet
-
-@item disables all processor exceptions by loading a 0 into the MSR, and
-
-@item goes into an infinite loop to simulate a halt processor instruction.
-
-@end itemize
-
-@section Symmetric Multiprocessing
-
-SMP is supported. Available platforms are the Freescale QorIQ P series (e.g.
-P1020) and T series (e.g. T2080, T4240).
-
-@section Thread-Local Storage
-
-Thread-local storage is supported.
-
-@c
-@c
-@c
-
-@section Board Support Packages
-
-@subsection System Reset
-
-An RTEMS based application is initiated or
-re-initiated when the PowerPC processor is reset. The PowerPC
-architecture defines a Reset Exception, but leaves the
-details of the CPU state as implementation specific. Please
-refer to the User's Manual for the CPU model in question.
-
-In general, at power-up the PowerPC begin execution at address
-0xFFF00100 in supervisor mode with all exceptions disabled. For
-soft resets, the CPU will vector to either 0xFFF00100 or 0x00000100
-depending upon the setting of the Exception Prefix bit in the MSR.
-If during a soft reset, a Machine Check Exception occurs, then the
-CPU may execute a hard reset.
-
-@subsection Processor Initialization
-
-If this PowerPC implementation supports on-chip caching
-and this is to be utilized, then it should be enabled during the
-reset application initialization code. On-chip caching has been
-observed to prevent some emulators from working properly, so it
-may be necessary to run with caching disabled to use these emulators.
-
-In addition to the requirements described in the
-@b{Board Support Packages} chapter of the RTEMS C
-Applications User's Manual for the reset code
-which is executed before the call to @code{rtems_initialize_executive},
-the PowrePC version has the following specific requirements:
-
-@itemize @bullet
-@item Must leave the PR bit of the Machine State Register (MSR) set
-to 0 so the PowerPC remains in the supervisor state.
-
-@item Must set stack pointer (sp or r1) such that a minimum stack
-size of MINIMUM_STACK_SIZE bytes is provided for the RTEMS initialization
-sequence.
-
-@item Must disable all external interrupts (i.e. clear the EI (EE)
-bit of the machine state register).
-
-@item Must enable traps so window overflow and underflow
-conditions can be properly handled.
-
-@item Must initialize the PowerPC's initial Exception Table with default
-handlers.
-
-@end itemize
diff --git a/doc/cpu_supplement/preface.texi b/doc/cpu_supplement/preface.texi
deleted file mode 100644
index a4505732ff..0000000000
--- a/doc/cpu_supplement/preface.texi
+++ /dev/null
@@ -1,50 +0,0 @@
-@c
-@c COPYRIGHT (c) 1989-2011.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@node Preface, Port Specific Information, Top, Top
-@unnumbered Preface
-
-The Real Time Executive for Multiprocessor Systems
-(RTEMS) is designed to be portable across multiple processor
-architectures. However, the nature of real-time systems makes
-it essential that the application designer understand certain
-processor dependent implementation details. These processor
-dependencies include calling convention, board support package
-issues, interrupt processing, exact RTEMS memory requirements,
-performance data, header files, and the assembly language
-interface to the executive.
-
-Each architecture represents a CPU family and usually there are
-a wide variety of CPU models within it. These models share a
-common Instruction Set Architecture (ISA) which often varies
-based upon some well-defined rules. There are often
-multiple implementations of the ISA and these may be from
-one or multiple vendors.
-
-On top of variations in the ISA, there may also be variations
-which occur when a CPU core implementation is combined with
-a set of peripherals to form a system on chip. For example,
-there are many ARM CPU models from numerous semiconductor
-vendors and a wide variety of peripherals. But at the
-ISA level, they share a common compatibility.
-
-RTEMS depends upon this core similarity across the CPU models
-and leverages that to minimize the source code that is specific
-to any particular CPU core implementation or CPU model.
-
-This manual is separate and distinct from the RTEMS Porting
-Guide. That manual is a guide on porting RTEMS to a new
-architecture. This manual is focused on the more mundane
-CPU architecture specific issues that may impact
-application development. For example, if you need to write
-a subroutine in assembly language, it is critical to understand
-the calling conventions for the target architecture.
-
-The first chapter in this manual describes these issues
-in general terms. In a sense, it is posing the questions
-one should be aware may need to be answered and understood
-when porting an RTEMS application to a new architecture.
-Each subsequent chapter gives the answers to those questions
-for a particular CPU architecture.
diff --git a/doc/cpu_supplement/sh.t b/doc/cpu_supplement/sh.t
deleted file mode 100644
index fb2d3c25c2..0000000000
--- a/doc/cpu_supplement/sh.t
+++ /dev/null
@@ -1,169 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@ifinfo
-@end ifinfo
-@chapter SuperH Specific Information
-
-This chapter discusses the SuperH architecture dependencies
-in this port of RTEMS. The SuperH family has a wide variety
-of implementations by a wide range of vendors. Consequently,
-there are many, many CPU models within it.
-
-
-@subheading Architecture Documents
-
-For information on the SuperH architecture,
-refer to the following documents available from VENDOR
-(@file{http//www.XXX.com/}):
-
-@itemize @bullet
-@item @cite{SuperH Family Reference, VENDOR, PART NUMBER}.
-@end itemize
-
-@c
-@c
-@c
-@section CPU Model Dependent Features
-
-This chapter presents the set of features which vary
-across SuperH implementations and are of importance to RTEMS.
-The set of CPU model feature macros are defined in the file
-@code{cpukit/score/cpu/sh/sh.h} based upon the particular CPU
-model specified on the compilation command line.
-
-@subsection Another Optional Feature
-
-The macro XXX
-
-@c
-@c
-@c
-
-@section Calling Conventions
-
-
-@subsection Calling Mechanism
-
-All RTEMS directives are invoked using a @code{XXX}
-instruction and return to the user application via the
-@code{XXX} instruction.
-
-@subsection Register Usage
-
-The SH1 has 16 general registers (r0..r15).
-
-@itemize @bullet
-
-@item r0..r3 used as general volatile registers
-
-@item r4..r7 used to pass up to 4 arguments to functions, arguments
-above 4 are
-passed via the stack)
-
-@item r8..13 caller saved registers (i.e. push them to the stack if you
-need them inside of a function)
-
-@item r14 frame pointer
-
-@item r15 stack pointer
-
-@end itemize
-
-@subsection Parameter Passing
-
-XXX
-
-@c
-@c
-@c
-
-@section Memory Model
-
-@subsection Flat Memory Model
-
-The SuperH family supports a flat 32-bit address
-space with addresses ranging from 0x00000000 to 0xFFFFFFFF (4
-gigabytes). Each address is represented by a 32-bit value and
-is byte addressable. The address may be used to reference a
-single byte, word (2-bytes), or long word (4 bytes). Memory
-accesses within this address space are performed in big endian
-fashion by the processors in this family.
-
-Some of the SuperH family members support virtual memory and
-segmentation. RTEMS does not support virtual memory or
-segmentation on any of the SuperH family members. It is the
-responsibility of the BSP to initialize the mapping for
-a flat memory model.
-
-@c
-@c
-@c
-
-@section Interrupt Processing
-
-Although RTEMS hides many of the processor dependent
-details of interrupt processing, it is important to understand
-how the RTEMS interrupt manager is mapped onto the processor's
-unique architecture. Discussed in this chapter are the MIPS's
-interrupt response and control mechanisms as they pertain to
-RTEMS.
-
-@subsection Vectoring of an Interrupt Handler
-
-Upon receipt of an interrupt the XXX family
-members with separate interrupt stacks automatically perform the
-following actions:
-
-@itemize @bullet
-@item TBD
-
-@end itemize
-
-A nested interrupt is processed similarly by these
-CPU models with the exception that only a single ISF is placed
-on the interrupt stack and the current stack need not be
-switched.
-
-@subsection Interrupt Levels
-
-TBD
-
-@c
-@c
-@section Default Fatal Error Processing
-
-The default fatal error handler for this architecture disables processor
-interrupts, places the error code in @b{XXX}, and executes a @code{XXX}
-instruction to simulate a halt processor instruction.
-
-@section Symmetric Multiprocessing
-
-SMP is not supported.
-
-@section Thread-Local Storage
-
-Thread-local storage is not implemented.
-
-@c
-@c
-@c
-
-@section Board Support Packages
-
-@subsection System Reset
-
-An RTEMS based application is initiated or
-re-initiated when the processor is reset. When the
-processor is reset, it performs the following actions:
-
-@itemize @bullet
-@item TBD
-
-@end itemize
-
-@subsection Processor Initialization
-
-TBD
diff --git a/doc/cpu_supplement/sparc.t b/doc/cpu_supplement/sparc.t
deleted file mode 100644
index 749c1fd2de..0000000000
--- a/doc/cpu_supplement/sparc.t
+++ /dev/null
@@ -1,1062 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@ifinfo
-@end ifinfo
-@chapter SPARC Specific Information
-
-The Real Time Executive for Multiprocessor Systems
-(RTEMS) is designed to be portable across multiple processor
-architectures. However, the nature of real-time systems makes
-it essential that the application designer understand certain
-processor dependent implementation details. These processor
-dependencies include calling convention, board support package
-issues, interrupt processing, exact RTEMS memory requirements,
-performance data, header files, and the assembly language
-interface to the executive.
-
-This document discusses the SPARC architecture dependencies in this
-port of RTEMS. This architectural port is for SPARC Version 7 and
-8. Implementations for SPARC V9 are in the sparc64 target.
-
-It is highly recommended that the SPARC RTEMS
-application developer obtain and become familiar with the
-documentation for the processor being used as well as the
-specification for the revision of the SPARC architecture which
-corresponds to that processor.
-
-@subheading SPARC Architecture Documents
-
-For information on the SPARC architecture, refer to
-the following documents available from SPARC International, Inc.
-(http://www.sparc.com):
-
-@itemize @bullet
-@item SPARC Standard Version 7.
-
-@item SPARC Standard Version 8.
-@end itemize
-
-@subheading ERC32 Specific Information
-
-The European Space Agency's ERC32 is a three chip
-computing core implementing a SPARC V7 processor and associated
-support circuitry for embedded space applications. The integer
-and floating-point units (90C601E & 90C602E) are based on the
-Cypress 7C601 and 7C602, with additional error-detection and
-recovery functions. The memory controller (MEC) implements
-system support functions such as address decoding, memory
-interface, DMA interface, UARTs, timers, interrupt control,
-write-protection, memory reconfiguration and error-detection.
-The core is designed to work at 25MHz, but using space qualified
-memories limits the system frequency to around 15 MHz, resulting
-in a performance of 10 MIPS and 2 MFLOPS.
-
-Information on the ERC32 and a number of development
-support tools, such as the SPARC Instruction Simulator (SIS),
-are freely available on the Internet. The following documents
-and SIS are available via anonymous ftp or pointing your web
-browser at ftp://ftp.estec.esa.nl/pub/ws/wsd/erc32.
-
-@itemize @bullet
-@item ERC32 System Design Document
-
-@item MEC Device Specification
-@end itemize
-
-Additionally, the SPARC RISC User's Guide from Matra
-MHS documents the functionality of the integer and floating
-point units including the instruction set information. To
-obtain this document as well as ERC32 components and VHDL models
-contact:
-
-@example
-Matra MHS SA
-3 Avenue du Centre, BP 309,
-78054 St-Quentin-en-Yvelines,
-Cedex, France
-VOICE: +31-1-30607087
-FAX: +31-1-30640693
-@end example
-
-Amar Guennon (amar.guennon@@matramhs.fr) is familiar with the ERC32.
-
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@section CPU Model Dependent Features
-
-
-Microprocessors are generally classified into
-families with a variety of CPU models or implementations within
-that family. Within a processor family, there is a high level
-of binary compatibility. This family may be based on either an
-architectural specification or on maintaining compatibility with
-a popular processor. Recent microprocessor families such as the
-SPARC or PowerPC are based on an architectural specification
-which is independent or any particular CPU model or
-implementation. Older families such as the M68xxx and the iX86
-evolved as the manufacturer strived to produce higher
-performance processor models which maintained binary
-compatibility with older models.
-
-RTEMS takes advantage of the similarity of the
-various models within a CPU family. Although the models do vary
-in significant ways, the high level of compatibility makes it
-possible to share the bulk of the CPU dependent executive code
-across the entire family.
-
-@subsection CPU Model Feature Flags
-
-Each processor family supported by RTEMS has a
-list of features which vary between CPU models
-within a family. For example, the most common model dependent
-feature regardless of CPU family is the presence or absence of a
-floating point unit or coprocessor. When defining the list of
-features present on a particular CPU model, one simply notes
-that floating point hardware is or is not present and defines a
-single constant appropriately. Conditional compilation is
-utilized to include the appropriate source code for this CPU
-model's feature set. It is important to note that this means
-that RTEMS is thus compiled using the appropriate feature set
-and compilation flags optimal for this CPU model used. The
-alternative would be to generate a binary which would execute on
-all family members using only the features which were always
-present.
-
-This section presents the set of features which vary
-across SPARC implementations and are of importance to RTEMS.
-The set of CPU model feature macros are defined in the file
-cpukit/score/cpu/sparc/sparc.h based upon the particular CPU
-model defined on the compilation command line.
-
-@subsubsection CPU Model Name
-
-The macro CPU_MODEL_NAME is a string which designates
-the name of this CPU model. For example, for the European Space
-Agency's ERC32 SPARC model, this macro is set to the string
-"erc32".
-
-@subsubsection Floating Point Unit
-
-The macro SPARC_HAS_FPU is set to 1 to indicate that
-this CPU model has a hardware floating point unit and 0
-otherwise.
-
-@subsubsection Bitscan Instruction
-
-The macro SPARC_HAS_BITSCAN is set to 1 to indicate
-that this CPU model has the bitscan instruction. For example,
-this instruction is supported by the Fujitsu SPARClite family.
-
-@subsubsection Number of Register Windows
-
-The macro SPARC_NUMBER_OF_REGISTER_WINDOWS is set to
-indicate the number of register window sets implemented by this
-CPU model. The SPARC architecture allows a for a maximum of
-thirty-two register window sets although most implementations
-only include eight.
-
-@subsubsection Low Power Mode
-
-The macro SPARC_HAS_LOW_POWER_MODE is set to one to
-indicate that this CPU model has a low power mode. If low power
-is enabled, then there must be CPU model specific implementation
-of the IDLE task in cpukit/score/cpu/sparc/cpu.c. The low
-power mode IDLE task should be of the form:
-
-@example
-while ( TRUE ) @{
- enter low power mode
-@}
-@end example
-
-The code required to enter low power mode is CPU model specific.
-
-@subsection CPU Model Implementation Notes
-
-The ERC32 is a custom SPARC V7 implementation based on the Cypress 601/602
-chipset. This CPU has a number of on-board peripherals and was developed by
-the European Space Agency to target space applications. RTEMS currently
-provides support for the following peripherals:
-
-@itemize @bullet
-@item UART Channels A and B
-@item General Purpose Timer
-@item Real Time Clock
-@item Watchdog Timer (so it can be disabled)
-@item Control Register (so powerdown mode can be enabled)
-@item Memory Control Register
-@item Interrupt Control
-@end itemize
-
-The General Purpose Timer and Real Time Clock Timer provided with the ERC32
-share the Timer Control Register. Because the Timer Control Register is write
-only, we must mirror it in software and insure that writes to one timer do not
-alter the current settings and status of the other timer. Routines are
-provided in erc32.h which promote the view that the two timers are completely
-independent. By exclusively using these routines to access the Timer Control
-Register, the application can view the system as having a General Purpose
-Timer Control Register and a Real Time Clock Timer Control Register
-rather than the single shared value.
-
-The RTEMS Idle thread take advantage of the low power mode provided by the
-ERC32. Low power mode is entered during idle loops and is enabled at
-initialization time.
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@section Calling Conventions
-
-Each high-level language compiler generates subroutine entry and exit code
-based upon a set of rules known as the application binary interface (ABI)
-calling convention. These rules address the following issues:
-
-@itemize @bullet
-@item register preservation and usage
-
-@item parameter passing
-
-@item call and return mechanism
-@end itemize
-
-An ABI calling convention is of importance when interfacing to subroutines
-written in another language either assembly or high-level. It determines also
-the set of registers to be saved or restored during a context switch and
-interrupt processing.
-
-The ABI relevant for RTEMS on SPARC is defined by SYSTEM V APPLICATION BINARY
-INTERFACE, SPARC Processor Supplement, Third Edition.
-
-@subsection Programming Model
-
-This section discusses the programming model for the
-SPARC architecture.
-
-@subsubsection Non-Floating Point Registers
-
-The SPARC architecture defines thirty-two
-non-floating point registers directly visible to the programmer.
-These are divided into four sets:
-
-@itemize @bullet
-@item input registers
-
-@item local registers
-
-@item output registers
-
-@item global registers
-@end itemize
-
-Each register is referred to by either two or three
-names in the SPARC reference manuals. First, the registers are
-referred to as r0 through r31 or with the alternate notation
-r[0] through r[31]. Second, each register is a member of one of
-the four sets listed above. Finally, some registers have an
-architecturally defined role in the programming model which
-provides an alternate name. The following table describes the
-mapping between the 32 registers and the register sets:
-
-@ifset use-ascii
-@example
-@group
- +-----------------+----------------+------------------+
- | Register Number | Register Names | Description |
- +-----------------+----------------+------------------+
- | 0 - 7 | g0 - g7 | Global Registers |
- +-----------------+----------------+------------------+
- | 8 - 15 | o0 - o7 | Output Registers |
- +-----------------+----------------+------------------+
- | 16 - 23 | l0 - l7 | Local Registers |
- +-----------------+----------------+------------------+
- | 24 - 31 | i0 - i7 | Input Registers |
- +-----------------+----------------+------------------+
-@end group
-@end example
-@end ifset
-
-@ifset use-tex
-@sp 1
-@tex
-\centerline{\vbox{\offinterlineskip\halign{
-\vrule\strut#&
-\hbox to 1.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 1.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 1.75in{\enskip\hfil#\hfil}&
-\vrule#\cr
-\noalign{\hrule}
-&\bf Register Number &&\bf Register Names&&\bf Description&\cr\noalign{\hrule}
-&0 - 7&&g0 - g7&&Global Registers&\cr\noalign{\hrule}
-&8 - 15&&o0 - o7&&Output Registers&\cr\noalign{\hrule}
-&16 - 23&&l0 - l7&&Local Registers&\cr\noalign{\hrule}
-&24 - 31&&i0 - i7&&Input Registers&\cr\noalign{\hrule}
-}}\hfil}
-@end tex
-@end ifset
-
-@ifset use-html
-@html
-<CENTER>
- <TABLE COLS=3 WIDTH="80%" BORDER=2>
-<TR><TD ALIGN=center><STRONG>Register Number</STRONG></TD>
- <TD ALIGN=center><STRONG>Register Names</STRONG></TD>
- <TD ALIGN=center><STRONG>Description</STRONG></TD>
-<TR><TD ALIGN=center>0 - 7</TD>
- <TD ALIGN=center>g0 - g7</TD>
- <TD ALIGN=center>Global Registers</TD></TR>
-<TR><TD ALIGN=center>8 - 15</TD>
- <TD ALIGN=center>o0 - o7</TD>
- <TD ALIGN=center>Output Registers</TD></TR>
-<TR><TD ALIGN=center>16 - 23</TD>
- <TD ALIGN=center>l0 - l7</TD>
- <TD ALIGN=center>Local Registers</TD></TR>
-<TR><TD ALIGN=center>24 - 31</TD>
- <TD ALIGN=center>i0 - i7</TD>
- <TD ALIGN=center>Input Registers</TD></TR>
- </TABLE>
-</CENTER>
-@end html
-@end ifset
-
-As mentioned above, some of the registers serve
-defined roles in the programming model. The following table
-describes the role of each of these registers:
-
-@ifset use-ascii
-@example
-@group
- +---------------+----------------+----------------------+
- | Register Name | Alternate Name | Description |
- +---------------+----------------+----------------------+
- | g0 | na | reads return 0 |
- | | | writes are ignored |
- +---------------+----------------+----------------------+
- | o6 | sp | stack pointer |
- +---------------+----------------+----------------------+
- | i6 | fp | frame pointer |
- +---------------+----------------+----------------------+
- | i7 | na | return address |
- +---------------+----------------+----------------------+
-@end group
-@end example
-@end ifset
-
-@ifset use-tex
-@sp 1
-@tex
-\centerline{\vbox{\offinterlineskip\halign{
-\vrule\strut#&
-\hbox to 1.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 1.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 1.75in{\enskip\hfil#\hfil}&
-\vrule#\cr
-\noalign{\hrule}
-&\bf Register Name &&\bf Alternate Names&&\bf Description&\cr\noalign{\hrule}
-&g0&&NA&&reads return 0; &\cr
-&&&&&writes are ignored&\cr\noalign{\hrule}
-&o6&&sp&&stack pointer&\cr\noalign{\hrule}
-&i6&&fp&&frame pointer&\cr\noalign{\hrule}
-&i7&&NA&&return address&\cr\noalign{\hrule}
-}}\hfil}
-@end tex
-@end ifset
-
-@ifset use-html
-@html
-<CENTER>
- <TABLE COLS=3 WIDTH="80%" BORDER=2>
-<TR><TD ALIGN=center><STRONG>Register Name</STRONG></TD>
- <TD ALIGN=center><STRONG>Alternate Name</STRONG></TD>
- <TD ALIGN=center><STRONG>Description</STRONG></TD></TR>
-<TR><TD ALIGN=center>g0</TD>
- <TD ALIGN=center>NA</TD>
- <TD ALIGN=center>reads return 0 ; writes are ignored</TD></TR>
-<TR><TD ALIGN=center>o6</TD>
- <TD ALIGN=center>sp</TD>
- <TD ALIGN=center>stack pointer</TD></TR>
-<TR><TD ALIGN=center>i6</TD>
- <TD ALIGN=center>fp</TD>
- <TD ALIGN=center>frame pointer</TD></TR>
-<TR><TD ALIGN=center>i7</TD>
- <TD ALIGN=center>NA</TD>
- <TD ALIGN=center>return address</TD></TR>
- </TABLE>
-</CENTER>
-@end html
-@end ifset
-
-The registers g2 through g4 are reserved for applications. GCC uses them as
-volatile registers by default. So they are treated like volatile registers in
-RTEMS as well.
-
-The register g6 is reserved for the operating system and contains the address
-of the per-CPU control block of the current processor. This register is
-initialized during system start and then remains unchanged. It is not
-saved/restored by the context switch or interrupt processing code.
-
-The register g7 is reserved for the operating system and contains the thread
-pointer used for thread-local storage (TLS) as mandated by the SPARC ABI.
-
-@subsubsection Floating Point Registers
-
-The SPARC V7 architecture includes thirty-two,
-thirty-two bit registers. These registers may be viewed as
-follows:
-
-@itemize @bullet
-@item 32 single precision floating point or integer registers
-(f0, f1, ... f31)
-
-@item 16 double precision floating point registers (f0, f2,
-f4, ... f30)
-
-@item 8 extended precision floating point registers (f0, f4,
-f8, ... f28)
-@end itemize
-
-The floating point status register (FSR) specifies
-the behavior of the floating point unit for rounding, contains
-its condition codes, version specification, and trap information.
-
-According to the ABI all floating point registers and the floating point status
-register (FSR) are volatile. Thus the floating point context of a thread is the
-empty set. The rounding direction is a system global state and must not be
-modified by threads.
-
-A queue of the floating point instructions which have
-started execution but not yet completed is maintained. This
-queue is needed to support the multiple cycle nature of floating
-point operations and to aid floating point exception trap
-handlers. Once a floating point exception has been encountered,
-the queue is frozen until it is emptied by the trap handler.
-The floating point queue is loaded by launching instructions.
-It is emptied normally when the floating point completes all
-outstanding instructions and by floating point exception
-handlers with the store double floating point queue (stdfq)
-instruction.
-
-@subsubsection Special Registers
-
-The SPARC architecture includes two special registers
-which are critical to the programming model: the Processor State
-Register (psr) and the Window Invalid Mask (wim). The psr
-contains the condition codes, processor interrupt level, trap
-enable bit, supervisor mode and previous supervisor mode bits,
-version information, floating point unit and coprocessor enable
-bits, and the current window pointer (cwp). The cwp field of
-the psr and wim register are used to manage the register windows
-in the SPARC architecture. The register windows are discussed
-in more detail below.
-
-@subsection Register Windows
-
-The SPARC architecture includes the concept of
-register windows. An overly simplistic way to think of these
-windows is to imagine them as being an infinite supply of
-"fresh" register sets available for each subroutine to use. In
-reality, they are much more complicated.
-
-The save instruction is used to obtain a new register
-window. This instruction decrements the current window pointer,
-thus providing a new set of registers for use. This register
-set includes eight fresh local registers for use exclusively by
-this subroutine. When done with a register set, the restore
-instruction increments the current window pointer and the
-previous register set is once again available.
-
-The two primary issues complicating the use of
-register windows are that (1) the set of register windows is
-finite, and (2) some registers are shared between adjacent
-registers windows.
-
-Because the set of register windows is finite, it is
-possible to execute enough save instructions without
-corresponding restore's to consume all of the register windows.
-This is easily accomplished in a high level language because
-each subroutine typically performs a save instruction upon
-entry. Thus having a subroutine call depth greater than the
-number of register windows will result in a window overflow
-condition. The window overflow condition generates a trap which
-must be handled in software. The window overflow trap handler
-is responsible for saving the contents of the oldest register
-window on the program stack.
-
-Similarly, the subroutines will eventually complete
-and begin to perform restore's. If the restore results in the
-need for a register window which has previously been written to
-memory as part of an overflow, then a window underflow condition
-results. Just like the window overflow, the window underflow
-condition must be handled in software by a trap handler. The
-window underflow trap handler is responsible for reloading the
-contents of the register window requested by the restore
-instruction from the program stack.
-
-The Window Invalid Mask (wim) and the Current Window
-Pointer (cwp) field in the psr are used in conjunction to manage
-the finite set of register windows and detect the window
-overflow and underflow conditions. The cwp contains the index
-of the register window currently in use. The save instruction
-decrements the cwp modulo the number of register windows.
-Similarly, the restore instruction increments the cwp modulo the
-number of register windows. Each bit in the wim represents
-represents whether a register window contains valid information.
-The value of 0 indicates the register window is valid and 1
-indicates it is invalid. When a save instruction causes the cwp
-to point to a register window which is marked as invalid, a
-window overflow condition results. Conversely, the restore
-instruction may result in a window underflow condition.
-
-Other than the assumption that a register window is
-always available for trap (i.e. interrupt) handlers, the SPARC
-architecture places no limits on the number of register windows
-simultaneously marked as invalid (i.e. number of bits set in the
-wim). However, RTEMS assumes that only one register window is
-marked invalid at a time (i.e. only one bit set in the wim).
-This makes the maximum possible number of register windows
-available to the user while still meeting the requirement that
-window overflow and underflow conditions can be detected.
-
-The window overflow and window underflow trap
-handlers are a critical part of the run-time environment for a
-SPARC application. The SPARC architectural specification allows
-for the number of register windows to be any power of two less
-than or equal to 32. The most common choice for SPARC
-implementations appears to be 8 register windows. This results
-in the cwp ranging in value from 0 to 7 on most implementations.
-
-
-The second complicating factor is the sharing of
-registers between adjacent register windows. While each
-register window has its own set of local registers, the input
-and output registers are shared between adjacent windows. The
-output registers for register window N are the same as the input
-registers for register window ((N - 1) modulo RW) where RW is
-the number of register windows. An alternative way to think of
-this is to remember how parameters are passed to a subroutine on
-the SPARC. The caller loads values into what are its output
-registers. Then after the callee executes a save instruction,
-those parameters are available in its input registers. This is
-a very efficient way to pass parameters as no data is actually
-moved by the save or restore instructions.
-
-@subsection Call and Return Mechanism
-
-The SPARC architecture supports a simple yet
-effective call and return mechanism. A subroutine is invoked
-via the call (call) instruction. This instruction places the
-return address in the caller's output register 7 (o7). After
-the callee executes a save instruction, this value is available
-in input register 7 (i7) until the corresponding restore
-instruction is executed.
-
-The callee returns to the caller via a jmp to the
-return address. There is a delay slot following this
-instruction which is commonly used to execute a restore
-instruction -- if a register window was allocated by this
-subroutine.
-
-It is important to note that the SPARC subroutine
-call and return mechanism does not automatically save and
-restore any registers. This is accomplished via the save and
-restore instructions which manage the set of registers windows.
-
-In case a floating-point unit is supported, then floating-point return values
-appear in the floating-point registers. Single-precision values occupy %f0;
-double-precision values occupy %f0 and %f1. Otherwise, these are scratch
-registers. Due to this the hardware and software floating-point ABIs are
-incompatible.
-
-@subsection Calling Mechanism
-
-All RTEMS directives are invoked using the regular
-SPARC calling convention via the call instruction.
-
-@subsection Register Usage
-
-As discussed above, the call instruction does not
-automatically save any registers. The save and restore
-instructions are used to allocate and deallocate register
-windows. When a register window is allocated, the new set of
-local registers are available for the exclusive use of the
-subroutine which allocated this register set.
-
-@subsection Parameter Passing
-
-RTEMS assumes that arguments are placed in the
-caller's output registers with the first argument in output
-register 0 (o0), the second argument in output register 1 (o1),
-and so forth. Until the callee executes a save instruction, the
-parameters are still visible in the output registers. After the
-callee executes a save instruction, the parameters are visible
-in the corresponding input registers. The following pseudo-code
-illustrates the typical sequence used to call a RTEMS directive
-with three (3) arguments:
-
-@example
-load third argument into o2
-load second argument into o1
-load first argument into o0
-invoke directive
-@end example
-
-@subsection User-Provided Routines
-
-All user-provided routines invoked by RTEMS, such as
-user extensions, device drivers, and MPCI routines, must also
-adhere to these calling conventions.
-
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@section Memory Model
-
-
-A processor may support any combination of memory
-models ranging from pure physical addressing to complex demand
-paged virtual memory systems. RTEMS supports a flat memory
-model which ranges contiguously over the processor's allowable
-address space. RTEMS does not support segmentation or virtual
-memory of any kind. The appropriate memory model for RTEMS
-provided by the targeted processor and related characteristics
-of that model are described in this chapter.
-
-@subsection Flat Memory Model
-
-The SPARC architecture supports a flat 32-bit address
-space with addresses ranging from 0x00000000 to 0xFFFFFFFF (4
-gigabytes). Each address is represented by a 32-bit value and
-is byte addressable. The address may be used to reference a
-single byte, half-word (2-bytes), word (4 bytes), or doubleword
-(8 bytes). Memory accesses within this address space are
-performed in big endian fashion by the SPARC. Memory accesses
-which are not properly aligned generate a "memory address not
-aligned" trap (type number 7). The following table lists the
-alignment requirements for a variety of data accesses:
-
-@ifset use-ascii
-@example
-@group
- +--------------+-----------------------+
- | Data Type | Alignment Requirement |
- +--------------+-----------------------+
- | byte | 1 |
- | half-word | 2 |
- | word | 4 |
- | doubleword | 8 |
- +--------------+-----------------------+
-@end group
-@end example
-@end ifset
-
-@ifset use-tex
-@sp 1
-@tex
-\centerline{\vbox{\offinterlineskip\halign{
-\vrule\strut#&
-\hbox to 1.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 1.75in{\enskip\hfil#\hfil}&
-\vrule#\cr
-\noalign{\hrule}
-&\bf Data Type &&\bf Alignment Requirement&\cr\noalign{\hrule}
-&byte&&1&\cr\noalign{\hrule}
-&half-word&&2&\cr\noalign{\hrule}
-&word&&4&\cr\noalign{\hrule}
-&doubleword&&8&\cr\noalign{\hrule}
-}}\hfil}
-@end tex
-@end ifset
-
-@ifset use-html
-@html
-<CENTER>
- <TABLE COLS=2 WIDTH="60%" BORDER=2>
-<TR><TD ALIGN=center><STRONG>Data Type</STRONG></TD>
- <TD ALIGN=center><STRONG>Alignment Requirement</STRONG></TD></TR>
-<TR><TD ALIGN=center>byte</TD>
- <TD ALIGN=center>1</TD></TR>
-<TR><TD ALIGN=center>half-word</TD>
- <TD ALIGN=center>2</TD></TR>
-<TR><TD ALIGN=center>word</TD>
- <TD ALIGN=center>4</TD></TR>
-<TR><TD ALIGN=center>doubleword</TD>
- <TD ALIGN=center>8</TD></TR>
- </TABLE>
-</CENTER>
-@end html
-@end ifset
-
-Doubleword load and store operations must use a pair
-of registers as their source or destination. This pair of
-registers must be an adjacent pair of registers with the first
-of the pair being even numbered. For example, a valid
-destination for a doubleword load might be input registers 0 and
-1 (i0 and i1). The pair i1 and i2 would be invalid. [NOTE:
-Some assemblers for the SPARC do not generate an error if an odd
-numbered register is specified as the beginning register of the
-pair. In this case, the assembler assumes that what the
-programmer meant was to use the even-odd pair which ends at the
-specified register. This may or may not have been a correct
-assumption.]
-
-RTEMS does not support any SPARC Memory Management
-Units, therefore, virtual memory or segmentation systems
-involving the SPARC are not supported.
-
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@section Interrupt Processing
-
-
-Different types of processors respond to the
-occurrence of an interrupt in its own unique fashion. In
-addition, each processor type provides a control mechanism to
-allow for the proper handling of an interrupt. The processor
-dependent response to the interrupt modifies the current
-execution state and results in a change in the execution stream.
-Most processors require that an interrupt handler utilize some
-special control mechanisms to return to the normal processing
-stream. Although RTEMS hides many of the processor dependent
-details of interrupt processing, it is important to understand
-how the RTEMS interrupt manager is mapped onto the processor's
-unique architecture. Discussed in this chapter are the SPARC's
-interrupt response and control mechanisms as they pertain to
-RTEMS.
-
-RTEMS and associated documentation uses the terms
-interrupt and vector. In the SPARC architecture, these terms
-correspond to traps and trap type, respectively. The terms will
-be used interchangeably in this manual.
-
-@subsection Synchronous Versus Asynchronous Traps
-
-The SPARC architecture includes two classes of traps:
-synchronous and asynchronous. Asynchronous traps occur when an
-external event interrupts the processor. These traps are not
-associated with any instruction executed by the processor and
-logically occur between instructions. The instruction currently
-in the execute stage of the processor is allowed to complete
-although subsequent instructions are annulled. The return
-address reported by the processor for asynchronous traps is the
-pair of instructions following the current instruction.
-
-Synchronous traps are caused by the actions of an
-instruction. The trap stimulus in this case either occurs
-internally to the processor or is from an external signal that
-was provoked by the instruction. These traps are taken
-immediately and the instruction that caused the trap is aborted
-before any state changes occur in the processor itself. The
-return address reported by the processor for synchronous traps
-is the instruction which caused the trap and the following
-instruction.
-
-@subsection Vectoring of Interrupt Handler
-
-Upon receipt of an interrupt the SPARC automatically
-performs the following actions:
-
-@itemize @bullet
-@item disables traps (sets the ET bit of the psr to 0),
-
-@item the S bit of the psr is copied into the Previous
-Supervisor Mode (PS) bit of the psr,
-
-@item the cwp is decremented by one (modulo the number of
-register windows) to activate a trap window,
-
-@item the PC and nPC are loaded into local register 1 and 2
-(l0 and l1),
-
-@item the trap type (tt) field of the Trap Base Register (TBR)
-is set to the appropriate value, and
-
-@item if the trap is not a reset, then the PC is written with
-the contents of the TBR and the nPC is written with TBR + 4. If
-the trap is a reset, then the PC is set to zero and the nPC is
-set to 4.
-@end itemize
-
-Trap processing on the SPARC has two features which
-are noticeably different than interrupt processing on other
-architectures. First, the value of psr register in effect
-immediately before the trap occurred is not explicitly saved.
-Instead only reversible alterations are made to it. Second, the
-Processor Interrupt Level (pil) is not set to correspond to that
-of the interrupt being processed. When a trap occurs, ALL
-subsequent traps are disabled. In order to safely invoke a
-subroutine during trap handling, traps must be enabled to allow
-for the possibility of register window overflow and underflow
-traps.
-
-If the interrupt handler was installed as an RTEMS
-interrupt handler, then upon receipt of the interrupt, the
-processor passes control to the RTEMS interrupt handler which
-performs the following actions:
-
-@itemize @bullet
-@item saves the state of the interrupted task on it's stack,
-
-@item insures that a register window is available for
-subsequent traps,
-
-@item if this is the outermost (i.e. non-nested) interrupt,
-then the RTEMS interrupt handler switches from the current stack
-to the interrupt stack,
-
-@item enables traps,
-
-@item invokes the vectors to a user interrupt service routine (ISR).
-@end itemize
-
-Asynchronous interrupts are ignored while traps are
-disabled. Synchronous traps which occur while traps are
-disabled result in the CPU being forced into an error mode.
-
-A nested interrupt is processed similarly with the
-exception that the current stack need not be switched to the
-interrupt stack.
-
-@subsection Traps and Register Windows
-
-One of the register windows must be reserved at all
-times for trap processing. This is critical to the proper
-operation of the trap mechanism in the SPARC architecture. It
-is the responsibility of the trap handler to insure that there
-is a register window available for a subsequent trap before
-re-enabling traps. It is likely that any high level language
-routines invoked by the trap handler (such as a user-provided
-RTEMS interrupt handler) will allocate a new register window.
-The save operation could result in a window overflow trap. This
-trap cannot be correctly processed unless (1) traps are enabled
-and (2) a register window is reserved for traps. Thus, the
-RTEMS interrupt handler insures that a register window is
-available for subsequent traps before enabling traps and
-invoking the user's interrupt handler.
-
-@subsection Interrupt Levels
-
-Sixteen levels (0-15) of interrupt priorities are
-supported by the SPARC architecture with level fifteen (15)
-being the highest priority. Level zero (0) indicates that
-interrupts are fully enabled. Interrupt requests for interrupts
-with priorities less than or equal to the current interrupt mask
-level are ignored. Level fifteen (15) is a non-maskable interrupt
-(NMI), which makes it unsuitable for standard usage since it can
-affect the real-time behaviour by interrupting critical sections
-and spinlocks. Disabling traps stops also the NMI interrupt from
-happening. It can however be used for power-down or other
-critical events.
-
-Although RTEMS supports 256 interrupt levels, the
-SPARC only supports sixteen. RTEMS interrupt levels 0 through
-15 directly correspond to SPARC processor interrupt levels. All
-other RTEMS interrupt levels are undefined and their behavior is
-unpredictable.
-
-Many LEON SPARC v7/v8 systems features an extended interrupt controller
-which adds an extra step of interrupt decoding to allow handling of
-interrupt 16-31. When such an extended interrupt is generated the CPU
-traps into a specific interrupt trap level 1-14 and software reads out from
-the interrupt controller which extended interrupt source actually caused the
-interrupt.
-
-@subsection Disabling of Interrupts by RTEMS
-
-During the execution of directive calls, critical
-sections of code may be executed. When these sections are
-encountered, RTEMS disables interrupts to level fifteen (15)
-before the execution of the section and restores them to the
-previous level upon completion of the section. RTEMS has been
-optimized to ensure that interrupts are disabled for less than
-RTEMS_MAXIMUM_DISABLE_PERIOD microseconds on a RTEMS_MAXIMUM_DISABLE_PERIOD_MHZ
-Mhz ERC32 with zero wait states.
-These numbers will vary based the number of wait states and
-processor speed present on the target board.
-[NOTE: The maximum period with interrupts disabled is hand calculated. This
-calculation was last performed for Release
-RTEMS_RELEASE_FOR_MAXIMUM_DISABLE_PERIOD.]
-
-[NOTE: It is thought that the length of time at which
-the processor interrupt level is elevated to fifteen by RTEMS is
-not anywhere near as long as the length of time ALL traps are
-disabled as part of the "flush all register windows" operation.]
-
-Non-maskable interrupts (NMI) cannot be disabled, and
-ISRs which execute at this level MUST NEVER issue RTEMS system
-calls. If a directive is invoked, unpredictable results may
-occur due to the inability of RTEMS to protect its critical
-sections. However, ISRs that make no system calls may safely
-execute as non-maskable interrupts.
-
-Interrupts are disabled or enabled by performing a system call
-to the Operating System reserved software traps 9
-(SPARC_SWTRAP_IRQDIS) or 10 (SPARC_SWTRAP_IRQDIS). The trap is
-generated by the software trap (Ticc) instruction or indirectly
-by calling sparc_disable_interrupts() or sparc_enable_interrupts()
-functions. Disabling interrupts return the previous interrupt level
-(on trap entry) in register G1 and sets PSR.PIL to 15 to disable
-all maskable interrupts. The interrupt level can be restored by
-trapping into the enable interrupt handler with G1 containing the
-new interrupt level.
-
-@subsection Interrupt Stack
-
-The SPARC architecture does not provide for a
-dedicated interrupt stack. Thus by default, trap handlers would
-execute on the stack of the RTEMS task which they interrupted.
-This artificially inflates the stack requirements for each task
-since EVERY task stack would have to include enough space to
-account for the worst case interrupt stack requirements in
-addition to it's own worst case usage. RTEMS addresses this
-problem on the SPARC by providing a dedicated interrupt stack
-managed by software.
-
-During system initialization, RTEMS allocates the
-interrupt stack from the Workspace Area. The amount of memory
-allocated for the interrupt stack is determined by the
-interrupt_stack_size field in the CPU Configuration Table. As
-part of processing a non-nested interrupt, RTEMS will switch to
-the interrupt stack before invoking the installed handler.
-
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@section Default Fatal Error Processing
-
-
-Upon detection of a fatal error by either the
-application or RTEMS the fatal error manager is invoked. The
-fatal error manager will invoke the user-supplied fatal error
-handlers. If no user-supplied handlers are configured, the
-RTEMS provided default fatal error handler is invoked. If the
-user-supplied fatal error handlers return to the executive the
-default fatal error handler is then invoked. This chapter
-describes the precise operations of the default fatal error
-handler.
-
-@subsection Default Fatal Error Handler Operations
-
-The default fatal error handler which is invoked by
-the fatal_error_occurred directive when there is no user handler
-configured or the user handler returns control to RTEMS.
-
-If the BSP has been configured with @code{BSP_POWER_DOWN_AT_FATAL_HALT}
-set to true, the default handler will disable interrupts
-and enter power down mode. If power down mode is not available,
-it goes into an infinite loop to simulate a halt processor instruction.
-
-If @code{BSP_POWER_DOWN_AT_FATAL_HALT} is set to false, the default
-handler will place the value @code{1} in register @code{g1}, the
-error source in register @code{g2}, and the error code in register
-@code{g3}. It will then generate a system error which will
-hand over control to the debugger, simulator, etc.
-
-@section Symmetric Multiprocessing
-
-SMP is supported. Available platforms are the Cobham Gaisler GR712RC and
-GR740.
-
-@section Thread-Local Storage
-
-Thread-local storage is supported.
-
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@section Board Support Packages
-
-
-An RTEMS Board Support Package (BSP) must be designed
-to support a particular processor and target board combination.
-This chapter presents a discussion of SPARC specific BSP issues.
-For more information on developing a BSP, refer to the chapter
-titled Board Support Packages in the RTEMS
-Applications User's Guide.
-
-@subsection System Reset
-
-An RTEMS based application is initiated or
-re-initiated when the SPARC processor is reset. When the SPARC
-is reset, the processor performs the following actions:
-
-@itemize @bullet
-@item the enable trap (ET) of the psr is set to 0 to disable
-traps,
-
-@item the supervisor bit (S) of the psr is set to 1 to enter
-supervisor mode, and
-
-@item the PC is set 0 and the nPC is set to 4.
-@end itemize
-
-The processor then begins to execute the code at
-location 0. It is important to note that all fields in the psr
-are not explicitly set by the above steps and all other
-registers retain their value from the previous execution mode.
-This is true even of the Trap Base Register (TBR) whose contents
-reflect the last trap which occurred before the reset.
-
-@subsection Processor Initialization
-
-It is the responsibility of the application's
-initialization code to initialize the TBR and install trap
-handlers for at least the register window overflow and register
-window underflow conditions. Traps should be enabled before
-invoking any subroutines to allow for register window
-management. However, interrupts should be disabled by setting
-the Processor Interrupt Level (pil) field of the psr to 15.
-RTEMS installs it's own Trap Table as part of initialization
-which is initialized with the contents of the Trap Table in
-place when the @code{rtems_initialize_executive} directive was invoked.
-Upon completion of executive initialization, interrupts are
-enabled.
-
-If this SPARC implementation supports on-chip caching
-and this is to be utilized, then it should be enabled during the
-reset application initialization code.
-
-In addition to the requirements described in the
-Board Support Packages chapter of the C
-Applications Users Manual for the reset code
-which is executed before the call to
-@code{rtems_initialize_executive}, the SPARC version has the following
-specific requirements:
-
-@itemize @bullet
-@item Must leave the S bit of the status register set so that
-the SPARC remains in the supervisor state.
-
-@item Must set stack pointer (sp) such that a minimum stack
-size of MINIMUM_STACK_SIZE bytes is provided for the
-@code{rtems_initialize_executive} directive.
-
-@item Must disable all external interrupts (i.e. set the pil
-to 15).
-
-@item Must enable traps so window overflow and underflow
-conditions can be properly handled.
-
-@item Must initialize the SPARC's initial trap table with at
-least trap handlers for register window overflow and register
-window underflow.
-@end itemize
diff --git a/doc/cpu_supplement/sparc64.t b/doc/cpu_supplement/sparc64.t
deleted file mode 100644
index 5c07989467..0000000000
--- a/doc/cpu_supplement/sparc64.t
+++ /dev/null
@@ -1,806 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@ifinfo
-@end ifinfo
-@chapter SPARC-64 Specific Information
-
-This document discusses the SPARC Version 9 (aka SPARC-64, SPARC64 or SPARC V9)
-architecture dependencies in this port of RTEMS.
-
-The SPARC V9 architecture leaves a lot of undefined implemenation dependencies
-which are defined by the processor models. Consult the specific CPU model
-section in this document for additional documents covering the implementation
-dependent architectural features.
-
-@subheading sun4u Specific Information
-sun4u is the subset of the SPARC V9 implementations comprising the UltraSPARC I
-through UltraSPARC IV processors.
-
-The following documents were used in developing the SPARC-64 sun4u port:
-@itemize @bullet
-@item UltraSPARC User’s Manual
-(http://www.sun.com/microelectronics/manuals/ultrasparc/802-7220-02.pdf)
-@item UltraSPARC IIIi Processor (datasheets.chipdb.org/Sun/UltraSparc-IIIi.pdf)
-@end itemize
-
-@subheading sun4v Specific Information
-sun4v is the subset of the SPARC V9 implementations comprising the
-UltraSPARC T1 or T2 processors.
-
-The following documents were used in developing the SPARC-64 sun4v port:
-@itemize @bullet
-@item UltraSPARC Architecture 2005 Specification
- (http://opensparc-t1.sunsource.net/specs/UA2005-current-draft-P-EXT.pdf)
-@item UltraSPARC T1 supplement to UltraSPARC Architecture 2005 Specification
-(http://opensparc-t1.sunsource.net/specs/UST1-UASuppl-current-draft-P-EXT.pdf)
-@end itemize
-
-The defining feature that separates the sun4v architecture from its
-predecessor is the existence of a super-privileged hypervisor that
-is responsible for providing virtualized execution environments. The impact
-of the hypervisor on the real-time guarantees available with sun4v has not
-yet been determined.
-
-@c
-@c
-@c
-
-@section CPU Model Dependent Features
-
-@subsection CPU Model Feature Flags
-This section presents the set of features which vary across
-SPARC-64 implementations and
-are of importance to RTEMS. The set of CPU model feature macros
-are defined in the file
-cpukit/score/cpu/sparc64/sparc64.h based upon the particular
-CPU model defined on the compilation command line.
-
-@subsubsection CPU Model Name
-
-The macro CPU MODEL NAME is a string which designates
-the name of this CPU model.
-For example, for the UltraSPARC T1 SPARC V9 model,
-this macro is set to the string "sun4v".
-
-@subsubsection Floating Point Unit
-
-The macro SPARC_HAS_FPU is set to 1 to indicate that
-this CPU model has a hardware floating point unit and 0
-otherwise.
-
-@subsubsection Number of Register Windows
-
-The macro SPARC_NUMBER_OF_REGISTER_WINDOWS is set to
-indicate the number of register window sets implemented by this
-CPU model. The SPARC architecture allows for a maximum of
-thirty-two register window sets although most implementations
-only include eight.
-
-@subsection CPU Model Implementation Notes
-
-This section describes the implemenation dependencies of the
-CPU Models sun4u and sun4v of the SPARC V9 architecture.
-
-@subsubsection sun4u Notes
-
-XXX
-
-@subsection sun4v Notes
-
-XXX
-
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@section Calling Conventions
-
-Each high-level language compiler generates
-subroutine entry and exit code based upon a set of rules known
-as the compiler's calling convention. These rules address the
-following issues:
-
-@itemize @bullet
-@item register preservation and usage
-
-@item parameter passing
-
-@item call and return mechanism
-@end itemize
-
-A compiler's calling convention is of importance when
-interfacing to subroutines written in another language either
-assembly or high-level. Even when the high-level language and
-target processor are the same, different compilers may use
-different calling conventions. As a result, calling conventions
-are both processor and compiler dependent.
-
-The following document also provides some conventions on the
-global register usage in SPARC V9:
-http://developers.sun.com/solaris/articles/sparcv9abi.html
-
-@subsection Programming Model
-
-This section discusses the programming model for the
-SPARC architecture.
-
-@subsubsection Non-Floating Point Registers
-
-The SPARC architecture defines thirty-two
-non-floating point registers directly visible to the programmer.
-These are divided into four sets:
-
-@itemize @bullet
-@item input registers
-
-@item local registers
-
-@item output registers
-
-@item global registers
-@end itemize
-
-Each register is referred to by either two or three
-names in the SPARC reference manuals. First, the registers are
-referred to as r0 through r31 or with the alternate notation
-r[0] through r[31]. Second, each register is a member of one of
-the four sets listed above. Finally, some registers have an
-architecturally defined role in the programming model which
-provides an alternate name. The following table describes the
-mapping between the 32 registers and the register sets:
-
-@ifset use-ascii
-@example
-@group
- +-----------------+----------------+------------------+
- | Register Number | Register Names | Description |
- +-----------------+----------------+------------------+
- | 0 - 7 | g0 - g7 | Global Registers |
- +-----------------+----------------+------------------+
- | 8 - 15 | o0 - o7 | Output Registers |
- +-----------------+----------------+------------------+
- | 16 - 23 | l0 - l7 | Local Registers |
- +-----------------+----------------+------------------+
- | 24 - 31 | i0 - i7 | Input Registers |
- +-----------------+----------------+------------------+
-@end group
-@end example
-@end ifset
-
-@ifset use-tex
-@sp 1
-@tex
-\centerline{\vbox{\offinterlineskip\halign{
-\vrule\strut#&
-\hbox to 1.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 1.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 1.75in{\enskip\hfil#\hfil}&
-\vrule#\cr
-\noalign{\hrule}
-&\bf Register Number &&\bf Register Names&&\bf Description&\cr\noalign{\hrule}
-&0 - 7&&g0 - g7&&Global Registers&\cr\noalign{\hrule}
-&8 - 15&&o0 - o7&&Output Registers&\cr\noalign{\hrule}
-&16 - 23&&l0 - l7&&Local Registers&\cr\noalign{\hrule}
-&24 - 31&&i0 - i7&&Input Registers&\cr\noalign{\hrule}
-}}\hfil}
-@end tex
-@end ifset
-
-@ifset use-html
-@html
-<CENTER>
- <TABLE COLS=3 WIDTH="80%" BORDER=2>
-<TR><TD ALIGN=center><STRONG>Register Number</STRONG></TD>
- <TD ALIGN=center><STRONG>Register Names</STRONG></TD>
- <TD ALIGN=center><STRONG>Description</STRONG></TD>
-<TR><TD ALIGN=center>0 - 7</TD>
- <TD ALIGN=center>g0 - g7</TD>
- <TD ALIGN=center>Global Registers</TD></TR>
-<TR><TD ALIGN=center>8 - 15</TD>
- <TD ALIGN=center>o0 - o7</TD>
- <TD ALIGN=center>Output Registers</TD></TR>
-<TR><TD ALIGN=center>16 - 23</TD>
- <TD ALIGN=center>l0 - l7</TD>
- <TD ALIGN=center>Local Registers</TD></TR>
-<TR><TD ALIGN=center>24 - 31</TD>
- <TD ALIGN=center>i0 - i7</TD>
- <TD ALIGN=center>Input Registers</TD></TR>
- </TABLE>
-</CENTER>
-@end html
-@end ifset
-
-As mentioned above, some of the registers serve
-defined roles in the programming model. The following table
-describes the role of each of these registers:
-
-@ifset use-ascii
-@example
-@group
- +---------------+----------------+----------------------+
- | Register Name | Alternate Name | Description |
- +---------------+----------------+----------------------+
- | g0 | na | reads return 0 |
- | | | writes are ignored |
- +---------------+----------------+----------------------+
- | o6 | sp | stack pointer |
- +---------------+----------------+----------------------+
- | i6 | fp | frame pointer |
- +---------------+----------------+----------------------+
- | i7 | na | return address |
- +---------------+----------------+----------------------+
-@end group
-@end example
-@end ifset
-
-@ifset use-tex
-@sp 1
-@tex
-\centerline{\vbox{\offinterlineskip\halign{
-\vrule\strut#&
-\hbox to 1.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 1.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 1.75in{\enskip\hfil#\hfil}&
-\vrule#\cr
-\noalign{\hrule}
-&\bf Register Name &&\bf Alternate Names&&\bf Description&\cr\noalign{\hrule}
-&g0&&NA&&reads return 0; &\cr
-&&&&&writes are ignored&\cr\noalign{\hrule}
-&o6&&sp&&stack pointer&\cr\noalign{\hrule}
-&i6&&fp&&frame pointer&\cr\noalign{\hrule}
-&i7&&NA&&return address&\cr\noalign{\hrule}
-}}\hfil}
-@end tex
-@end ifset
-
-@ifset use-html
-@html
-<CENTER>
- <TABLE COLS=3 WIDTH="80%" BORDER=2>
-<TR><TD ALIGN=center><STRONG>Register Name</STRONG></TD>
- <TD ALIGN=center><STRONG>Alternate Name</STRONG></TD>
- <TD ALIGN=center><STRONG>Description</STRONG></TD></TR>
-<TR><TD ALIGN=center>g0</TD>
- <TD ALIGN=center>NA</TD>
- <TD ALIGN=center>reads return 0 ; writes are ignored</TD></TR>
-<TR><TD ALIGN=center>o6</TD>
- <TD ALIGN=center>sp</TD>
- <TD ALIGN=center>stack pointer</TD></TR>
-<TR><TD ALIGN=center>i6</TD>
- <TD ALIGN=center>fp</TD>
- <TD ALIGN=center>frame pointer</TD></TR>
-<TR><TD ALIGN=center>i7</TD>
- <TD ALIGN=center>NA</TD>
- <TD ALIGN=center>return address</TD></TR>
- </TABLE>
-</CENTER>
-@end html
-@end ifset
-
-
-@subsubsection Floating Point Registers
-
-The SPARC V9 architecture includes sixty-four,
-thirty-two bit registers. These registers may be viewed as
-follows:
-
-@itemize @bullet
-@item 32 32-bit single precision floating point or integer registers
-(f0, f1, ... f31)
-
-@item 32 64-bit double precision floating point registers (f0, f2,
-f4, ... f62)
-
-@item 16 128-bit extended precision floating point registers (f0, f4,
-f8, ... f60)
-@end itemize
-
-The floating point state register (fsr) specifies
-the behavior of the floating point unit for rounding, contains
-its condition codes, version specification, and trap information.
-
-@subsubsection Special Registers
-
-The SPARC architecture includes a number of special registers:
-@table @b
-
-@item @code{Ancillary State Registers (ASRs)}
-The ancillary state registers (ASRs) are optional state registers that
-may be privileged or nonprivileged. ASRs 16-31 are implementation-
-dependent. The SPARC V9 ASRs include: y, ccr, asi, tick, pc, fprs.
-The sun4u ASRs include: pcr, pic, dcr, gsr, softint set, softint clr,
-softint, and tick cmpr. The sun4v ASRs include: pcr, pic, gsr, soft-
-int set, softint clr, softint, tick cmpr, stick, and stick cmpr.
-
-@item @code{Processor State Register (pstate)}
-The privileged pstate register contains control fields for the proces-
-sor’s current state. Its flag fields include the interrupt enable, privi-
-leged mode, and enable FPU.
-
-@item @code{Processor Interrupt Level (pil)}
-The PIL specifies the interrupt level above which interrupts will be
-accepted.
-
-@item @code{Trap Registers}
-The trap handling mechanism of the SPARC V9 includes a number of
-registers, including: trap program counter (tpc), trap next pc (tnpc),
-trap state (tstate), trap type (tt), trap base address (tba), and trap
-level (tl).
-
-@item @code{Alternate Globals}
-The AG bit of the pstate register provides access to an alternate set
-of global registers. On sun4v, the AG bit is replaced by the global
-level (gl) register, providing access to at least two and at most eight
-alternate sets of globals.
-
-@item @code{Register Window registers}
-A number of registers assist in register window management.
-These include the current window pointer (cwp), savable windows
-(cansave), restorable windows (canrestore), clean windows (clean-
-win), other windows (otherwin), and window state (wstate).
-
-@end table
-
-@subsection Register Windows
-
-The SPARC architecture includes the concept of
-register windows. An overly simplistic way to think of these
-windows is to imagine them as being an infinite supply of
-"fresh" register sets available for each subroutine to use. In
-reality, they are much more complicated.
-
-The save instruction is used to obtain a new register window.
-This instruction increments the current window pointer, thus
-providing a new set of registers for use. This register set
-includes eight fresh local registers for use exclusively by
-this subroutine. When done with a register set, the restore
-instruction decrements the current window pointer and the
-previous register set is once again available.
-
-The two primary issues complicating the use of register windows
-are that (1) the set of register windows is finite, and (2) some
-registers are shared between adjacent registers windows.
-
-Because the set of register windows is finite, it is
-possible to execute enough save instructions without
-corresponding restore's to consume all of the register windows.
-This is easily accomplished in a high level language because
-each subroutine typically performs a save instruction upon
-entry. Thus having a subroutine call depth greater than the
-number of register windows will result in a window overflow
-condition. The window overflow condition generates a trap which
-must be handled in software. The window overflow trap handler
-is responsible for saving the contents of the oldest register
-window on the program stack.
-
-Similarly, the subroutines will eventually complete
-and begin to perform restore's. If the restore results in the
-need for a register window which has previously been written to
-memory as part of an overflow, then a window underflow condition
-results. Just like the window overflow, the window underflow
-condition must be handled in software by a trap handler. The
-window underflow trap handler is responsible for reloading the
-contents of the register window requested by the restore
-instruction from the program stack.
-
-The cansave, canrestore, otherwin, and cwp are used in conjunction
-to manage the finite set of register windows and detect the window
-overflow and underflow conditions. The first three of these
-registers must satisfy the invariant cansave + canrestore + otherwin =
-nwindow - 2, where nwindow is the number of register windows.
-The cwp contains the index of the register window currently in use.
-RTEMS does not use the cleanwin and otherwin registers.
-
-The save instruction increments the cwp modulo the number of
-register windows, and if cansave is 0 then it also generates a
-window overflow. Similarly, the restore instruction decrements the
-cwp modulo the number of register windows, and if canrestore is 0 then it
-also generates a window underflow.
-
-Unlike with the SPARC model, the SPARC-64 port does not assume that
-a register window is available for a trap. The window overflow
-and underflow conditions are not detected without hardware generating
-the trap. (These conditions can be detected by reading the register window
-registers and doing some simple arithmetic.)
-
-The window overflow and window underflow trap
-handlers are a critical part of the run-time environment for a
-SPARC application. The SPARC architectural specification allows
-for the number of register windows to be any power of two less
-than or equal to 32. The most common choice for SPARC
-implementations appears to be 8 register windows. This results
-in the cwp ranging in value from 0 to 7 on most implementations.
-
-The second complicating factor is the sharing of
-registers between adjacent register windows. While each
-register window has its own set of local registers, the input
-and output registers are shared between adjacent windows. The
-output registers for register window N are the same as the input
-registers for register window ((N + 1) modulo RW) where RW is
-the number of register windows. An alternative way to think of
-this is to remember how parameters are passed to a subroutine on
-the SPARC. The caller loads values into what are its output
-registers. Then after the callee executes a save instruction,
-those parameters are available in its input registers. This is
-a very efficient way to pass parameters as no data is actually
-moved by the save or restore instructions.
-
-@subsection Call and Return Mechanism
-
-The SPARC architecture supports a simple yet
-effective call and return mechanism. A subroutine is invoked
-via the call (call) instruction. This instruction places the
-return address in the caller's output register 7 (o7). After
-the callee executes a save instruction, this value is available
-in input register 7 (i7) until the corresponding restore
-instruction is executed.
-
-The callee returns to the caller via a jmp to the
-return address. There is a delay slot following this
-instruction which is commonly used to execute a restore
-instruction -- if a register window was allocated by this
-subroutine.
-
-It is important to note that the SPARC subroutine
-call and return mechanism does not automatically save and
-restore any registers. This is accomplished via the save and
-restore instructions which manage the set of registers windows.
-This allows for the compiler to generate leaf-optimized functions
-that utilize the caller’s output registers without using save and restore.
-
-@subsection Calling Mechanism
-
-All RTEMS directives are invoked using the regular
-SPARC calling convention via the call instruction.
-
-@subsection Register Usage
-
-As discussed above, the call instruction does not
-automatically save any registers. The save and restore
-instructions are used to allocate and deallocate register
-windows. When a register window is allocated, the new set of
-local registers are available for the exclusive use of the
-subroutine which allocated this register set.
-
-@subsection Parameter Passing
-
-RTEMS assumes that arguments are placed in the
-caller's output registers with the first argument in output
-register 0 (o0), the second argument in output register 1 (o1),
-and so forth. Until the callee executes a save instruction, the
-parameters are still visible in the output registers. After the
-callee executes a save instruction, the parameters are visible
-in the corresponding input registers. The following pseudo-code
-illustrates the typical sequence used to call a RTEMS directive
-with three (3) arguments:
-
-@example
-load third argument into o2
-load second argument into o1
-load first argument into o0
-invoke directive
-@end example
-
-@subsection User-Provided Routines
-
-All user-provided routines invoked by RTEMS, such as
-user extensions, device drivers, and MPCI routines, must also
-adhere to these calling conventions.
-
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@section Memory Model
-
-
-A processor may support any combination of memory
-models ranging from pure physical addressing to complex demand
-paged virtual memory systems. RTEMS supports a flat memory
-model which ranges contiguously over the processor's allowable
-address space. RTEMS does not support segmentation or virtual
-memory of any kind. The appropriate memory model for RTEMS
-provided by the targeted processor and related characteristics
-of that model are described in this chapter.
-
-@subsection Flat Memory Model
-
-The SPARC-64 architecture supports a flat 64-bit address space with
-addresses ranging from 0x0000000000000000 to 0xFFFFFFFFFFFFFFFF.
-Each address is represented by a 64-bit value (and an 8-bit address
-space identifider or ASI) and is byte addressable. The address
-may be used to reference a single byte, half-word (2-bytes),
-word (4 bytes), doubleword (8 bytes), or quad-word (16 bytes).
-Memory accesses within this address space are performed
-in big endian fashion by the SPARC. Memory accesses which are not
-properly aligned generate a "memory address not aligned" trap
-(type number 0x34). The following table lists the alignment
-requirements for a variety of data accesses:
-
-@ifset use-ascii
-@example
-@group
- +--------------+-----------------------+
- | Data Type | Alignment Requirement |
- +--------------+-----------------------+
- | byte | 1 |
- | half-word | 2 |
- | word | 4 |
- | doubleword | 8 |
- | quadword | 16 |
- +--------------+-----------------------+
-@end group
-@end example
-@end ifset
-
-@ifset use-tex
-@sp 1
-@tex
-\centerline{\vbox{\offinterlineskip\halign{
-\vrule\strut#&
-\hbox to 1.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 1.75in{\enskip\hfil#\hfil}&
-\vrule#\cr
-\noalign{\hrule}
-&\bf Data Type &&\bf Alignment Requirement&\cr\noalign{\hrule}
-&byte&&1&\cr\noalign{\hrule}
-&half-word&&2&\cr\noalign{\hrule}
-&word&&4&\cr\noalign{\hrule}
-&doubleword&&8&\cr\noalign{\hrule}
-&quadword&&16&\cr\noalign{\hrule}
-}}\hfil}
-@end tex
-@end ifset
-
-@ifset use-html
-@html
-<CENTER>
- <TABLE COLS=2 WIDTH="60%" BORDER=2>
-<TR><TD ALIGN=center><STRONG>Data Type</STRONG></TD>
- <TD ALIGN=center><STRONG>Alignment Requirement</STRONG></TD></TR>
-<TR><TD ALIGN=center>byte</TD>
- <TD ALIGN=center>1</TD></TR>
-<TR><TD ALIGN=center>half-word</TD>
- <TD ALIGN=center>2</TD></TR>
-<TR><TD ALIGN=center>word</TD>
- <TD ALIGN=center>4</TD></TR>
-<TR><TD ALIGN=center>doubleword</TD>
- <TD ALIGN=center>8</TD></TR>
-<TR><TD ALIGN=center>quadword</TD>
- <TD ALIGN=center>16</TD></TR>
- </TABLE>
-</CENTER>
-@end html
-@end ifset
-
-RTEMS currently does not support any SPARC Memory Management
-Units, therefore, virtual memory or segmentation systems
-involving the SPARC are not supported.
-
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@section Interrupt Processing
-
-RTEMS and associated documentation uses the terms
-interrupt and vector. In the SPARC architecture, these terms
-correspond to traps and trap type, respectively. The terms will
-be used interchangeably in this manual. Note that in the SPARC manuals,
-interrupts are a subset of the traps that are delivered to software
-interrupt handlers.
-
-@subsection Synchronous Versus Asynchronous Traps
-
-The SPARC architecture includes two classes of traps:
-synchronous (precise) and asynchronous (deferred).
-Asynchronous traps occur when an
-external event interrupts the processor. These traps are not
-associated with any instruction executed by the processor and
-logically occur between instructions. The instruction currently
-in the execute stage of the processor is allowed to complete
-although subsequent instructions are annulled. The return
-address reported by the processor for asynchronous traps is the
-pair of instructions following the current instruction.
-
-Synchronous traps are caused by the actions of an
-instruction. The trap stimulus in this case either occurs
-internally to the processor or is from an external signal that
-was provoked by the instruction. These traps are taken
-immediately and the instruction that caused the trap is aborted
-before any state changes occur in the processor itself. The
-return address reported by the processor for synchronous traps
-is the instruction which caused the trap and the following
-instruction.
-
-@subsection Vectoring of Interrupt Handler
-
-Upon receipt of an interrupt the SPARC automatically
-performs the following actions:
-
-@itemize @bullet
-@item The trap level is set. This provides access to a fresh set of
-privileged trap-state registers used to save the current state,
-in effect, pushing a frame on the trap stack.
-TL <- TL + 1
-@item Existing state is preserved
-@itemize @bullet
- @item TSTATE[TL].CCR <- CCR
- @item TSTATE[TL].ASI <- ASI
- @item TSTATE[TL].PSTATE <- PSTATE
- @item TSTATE[TL].CWP <- CWP
- @item TPC[TL] <- PC
- @item TNPC[TL] <- nPC
-@end itemize
-@item The trap type is preserved. TT[TL] <- the trap type
-@item The PSTATE register is updated to a predefined state
-@itemize @bullet
- @item PSTATE.MM is unchanged
- @item PSTATE.RED <- 0
- @item PSTATE.PEF <- 1 if FPU is present, 0 otherwise
- @item PSTATE.AM <- 0 (address masking is turned off)
- @item PSTATE.PRIV <- 1 (the processor enters privileged mode)
- @item PSTATE.IE <- 0 (interrupts are disabled)
- @item PSTATE.AG <- 1 (global regs are replaced with alternate globals)
- @item PSTATE.CLE <- PSTATE.TLE (set endian mode for traps)
-@end itemize
-@item For a register-window trap only, CWP is set to point to the register
-window that must be accessed by the trap-handler software, that is:
-@itemize @bullet
- @item If TT[TL] = 0x24 (a clean window trap), then CWP <- CWP + 1.
- @item If (0x80 <= TT[TL] <= 0xBF) (window spill trap), then CWP <- CWP +
-CANSAVE + 2.
- @item If (0xC0 <= TT[TL] <= 0xFF) (window fill trap), then CWP <- CWP1.
- @item For non-register-window traps, CWP is not changed.
-@end itemize
-@item Control is transferred into the trap table:
-@itemize @bullet
- @item PC <- TBA<63:15> (TL>0) TT[TL] 0 0000
- @item nPC <- TBA<63:15> (TL>0) TT[TL] 0 0100
- @item where (TL>0) is 0 if TL = 0, and 1 if TL > 0.
-@end itemize
-
-@end itemize
-
-In order to safely invoke a subroutine during trap handling, traps must be
-enabled to allow for the possibility of register window overflow and
-underflow traps.
-
-If the interrupt handler was installed as an RTEMS
-interrupt handler, then upon receipt of the interrupt, the
-processor passes control to the RTEMS interrupt handler which
-performs the following actions:
-
-@itemize @bullet
-@item saves the state of the interrupted task on it's stack,
-
-@item switches the processor to trap level 0,
-
-@item if this is the outermost (i.e. non-nested) interrupt,
-then the RTEMS interrupt handler switches from the current stack
-to the interrupt stack,
-
-@item enables traps,
-
-@item invokes the vectors to a user interrupt service routine (ISR).
-@end itemize
-
-Asynchronous interrupts are ignored while traps are
-disabled. Synchronous traps which occur while traps are
-disabled may result in the CPU being forced into an error mode.
-
-A nested interrupt is processed similarly with the
-exception that the current stack need not be switched to the
-interrupt stack.
-
-@subsection Traps and Register Windows
-
-XXX
-
-@subsection Interrupt Levels
-
-Sixteen levels (0-15) of interrupt priorities are
-supported by the SPARC architecture with level fifteen (15)
-being the highest priority. Level zero (0) indicates that
-interrupts are fully enabled. Interrupt requests for interrupts
-with priorities less than or equal to the current interrupt mask
-level are ignored.
-
-Although RTEMS supports 256 interrupt levels, the
-SPARC only supports sixteen. RTEMS interrupt levels 0 through
-15 directly correspond to SPARC processor interrupt levels. All
-other RTEMS interrupt levels are undefined and their behavior is
-unpredictable.
-
-@subsection Disabling of Interrupts by RTEMS
-
-XXX
-
-@subsection Interrupt Stack
-
-The SPARC architecture does not provide for a
-dedicated interrupt stack. Thus by default, trap handlers would
-execute on the stack of the RTEMS task which they interrupted.
-This artificially inflates the stack requirements for each task
-since EVERY task stack would have to include enough space to
-account for the worst case interrupt stack requirements in
-addition to it's own worst case usage. RTEMS addresses this
-problem on the SPARC by providing a dedicated interrupt stack
-managed by software.
-
-During system initialization, RTEMS allocates the
-interrupt stack from the Workspace Area. The amount of memory
-allocated for the interrupt stack is determined by the
-interrupt_stack_size field in the CPU Configuration Table. As
-part of processing a non-nested interrupt, RTEMS will switch to
-the interrupt stack before invoking the installed handler.
-
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@section Default Fatal Error Processing
-
-
-Upon detection of a fatal error by either the
-application or RTEMS the fatal error manager is invoked. The
-fatal error manager will invoke the user-supplied fatal error
-handlers. If no user-supplied handlers are configured, the
-RTEMS provided default fatal error handler is invoked. If the
-user-supplied fatal error handlers return to the executive the
-default fatal error handler is then invoked. This chapter
-describes the precise operations of the default fatal error
-handler.
-
-@subsection Default Fatal Error Handler Operations
-
-The default fatal error handler which is invoked by
-the fatal_error_occurred directive when there is no user handler
-configured or the user handler returns control to RTEMS. The
-default fatal error handler disables processor interrupts to
-level 15, places the error code in g1, and goes into an infinite
-loop to simulate a halt processor instruction.
-
-@section Symmetric Multiprocessing
-
-SMP is not supported.
-
-@section Thread-Local Storage
-
-Thread-local storage is supported.
-
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@section Board Support Packages
-
-An RTEMS Board Support Package (BSP) must be designed
-to support a particular processor and target board combination.
-This chapter presents a discussion of SPARC specific BSP issues.
-For more information on developing a BSP, refer to the chapter
-titled Board Support Packages in the RTEMS
-Applications User's Guide.
-
-@subsection HelenOS and Open Firmware
-The provided BSPs make use of some bootstrap and low-level hardware code
-of the HelenOS operating system. These files can be found in the shared/helenos
-directory of the sparc64 bsp directory. Consult the sources for more
-detailed information.
-
-The shared BSP code also uses the Open Firmware interface to re-use firmware
-code, primarily for console support and default trap handlers.
-
diff --git a/doc/cpu_supplement/stamp-vti b/doc/cpu_supplement/stamp-vti
deleted file mode 100644
index 5634951ec8..0000000000
--- a/doc/cpu_supplement/stamp-vti
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 24 February 2013
-@set UPDATED-MONTH February 2013
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0
diff --git a/doc/cpu_supplement/v850.t b/doc/cpu_supplement/v850.t
deleted file mode 100644
index ab844614f5..0000000000
--- a/doc/cpu_supplement/v850.t
+++ /dev/null
@@ -1,112 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@ifinfo
-@end ifinfo
-@chapter V850 Specific Information
-
-This chapter discusses the
-@uref{http://en.wikipedia.org/wiki/V850,V850 architecture}
-dependencies in this port of RTEMS. The V850 was originally manufactured
-by NEC but is now part of the Renesas Electronics product line.
-
-@subheading Architecture Documents
-
-For information on the V850 architecture refer to the
-@uref{http://am.renesas.com/products/mpumcu/v850/index.jsp,Renesas v850 product page}.
-
-@section CPU Model Dependent Features
-
-This section presents the set of features which vary across V850 implementations and are of importance to RTEMS. The set of CPU model feature macros are defined in the file @file{cpukit/score/cpu/v850/rtems/score/v850.h} based upon the particular CPU
-model flags specified on the compilation command line.
-
-@subsection CPU Model Name
-
-The macro @code{CPU_MODEL_NAME} is a string which designates
-the architectural level of this CPU model. See in
-@file{cpukit/score/cpu/v850/rtems/score/v850.h} for the values.
-
-@subsection Count Leading Zeroes Instruction
-
-The V850v5 and later has the count leading zeroes @code{clz} instruction which
-could be used to speed up the find first bit operation. The use of this
-instruction should significantly speed up the scheduling associated with a
-thread blocking. This is currently not used.
-
-@subsection Floating Point Unit
-
-A floating point unit is currently not supported.
-
-@section Calling Conventions
-
-Please refer to the
-@uref{http://www.filibeto.org/unix/tru64/lib/ossc/doc/cygnus_doc-99r1/html/6_embed/embV850.html,
-Procedure Call Standard for the V850 Architecture} or the GCC source
-code for detailed information on the calling conventions.
-
-@subsection Register Usage
-
-Fixed registers are never available for register allocation in the
-compiler. By default the following registers are fixed in GCC:
-
-@itemize @bullet
-@item r0 (zero)
-@item r3 (sp)
-@item r4 (gp)
-@item r30 (ep)
-@end itemize
-
-@c r1 is mentioned as special purpose but I do not see a purpose
-
-Caller saved registers can be used by the compiler to hold values that
-do not live across function calls. The caller saved registers are r2,
-r5 through r19, and r31.
-
-Callee saved registers retain their value across function calls. The
-callee saved registers are r20 through r29.
-
-r6 through r9 are parameter registers while r10 and r11 are function return registers. r31 is the return pointer.
-
-r29 is used as the frame pointer in some functions.
-
-@section Memory Model
-
-A flat 32-bit memory model is supported.
-
-@section Interrupt Processing
-
-The V850 architecture has ...
-
-@subsection Interrupt Levels
-
-The RTEMS interrupt level mapping scheme for the V850 is very simple. If
-the requested interrupt level is 1, then interrupts are disabled in the
-PSW register using the @code{di} instruction. If the requested interrupt
-level is 0, then interrupts are enabled in the PSW register using the
-@code{ei} instruction or restoring the previous value of the PSW register.
-
-@subsection Interrupt Stack
-
-The board support package must initialize the interrupt stack. The memory for
-the stacks is usually reserved in the linker script.
-
-@section Default Fatal Error Processing
-
-The default fatal error handler for this architecture performs the
-following actions:
-
-@itemize @bullet
-@item disables operating system supported interrupts (IRQ),
-@item places the error code in @code{r10}, and
-@item executes a halt processor instruction.
-@end itemize
-
-@section Symmetric Multiprocessing
-
-SMP is not supported.
-
-@section Thread-Local Storage
-
-Thread-local storage is not implemented.
diff --git a/doc/cpu_supplement/version.texi b/doc/cpu_supplement/version.texi
deleted file mode 100644
index c0e4bbb7b6..0000000000
--- a/doc/cpu_supplement/version.texi
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 17 July 2015
-@set UPDATED-MONTH July 2015
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0
diff --git a/doc/develenv/Makefile.am b/doc/develenv/Makefile.am
deleted file mode 100644
index 041818507b..0000000000
--- a/doc/develenv/Makefile.am
+++ /dev/null
@@ -1,37 +0,0 @@
-#
-# COPYRIGHT (c) 1988-2002.
-# On-Line Applications Research Corporation (OAR).
-# All rights reserved.
-
-PROJECT = develenv
-
-include $(top_srcdir)/project.am
-include $(top_srcdir)/main.am
-
-FILES = direct.texi intro.texi sample.texi utils.texi
-
-GENERATED_FILES = direct.texi sample.texi utils.texi
-
-COMMON_FILES += $(top_srcdir)/common/cpright.texi
-
-info_TEXINFOS = develenv.texi
-develenv_TEXINFOS = $(FILES) $(COMMON_FILES) $(GENERATED_FILES)
-
-direct.texi: direct.t
- $(BMENU2) -p "Introduction" \
- -u "Top" \
- -n "Sample Applications" < $< > $@
-
-sample.texi: sample.t
- $(BMENU2) -p "Directory Structure Documentation Directory" \
- -u "Top" \
- -n "RTEMS Specific Utilities" < $< > $@
-
-utils.texi: utils.t
- $(BMENU2) -p "Sample Applications Network Loopback Test" \
- -u "Top" \
- -n "Command and Variable Index" < $< > $@
-
-CLEANFILES += develenv.info
-
-EXTRA_DIST = direct.t sample.t utils.t
diff --git a/doc/develenv/develenv.texi b/doc/develenv/develenv.texi
deleted file mode 100644
index c6d5cdb664..0000000000
--- a/doc/develenv/develenv.texi
+++ /dev/null
@@ -1,105 +0,0 @@
-\input texinfo @c -*-texinfo-*-
-@c %**start of header
-@setfilename develenv.info
-@setcontentsaftertitlepage
-@syncodeindex vr fn
-@synindex ky cp
-@paragraphindent 0
-@c %**end of header
-
-@c
-@c COPYRIGHT (c) 1989-2013.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@c
-@c Master file
-@c
-
-@c Joel's Questions
-@c
-@c 1. Why does paragraphindent only impact makeinfo?
-@c 2. Why does paragraphindent show up in HTML?
-@c
-
-@include version.texi
-@include common/setup.texi
-@include common/rtems.texi
-
-@ifset use-ascii
-@dircategory RTEMS On-Line Manual
-@direntry
-* RTEMS Development Environment Guide: (develenv).
-@end direntry
-@end ifset
-
-
-@c variable substitution info:
-@c
-@c @set LANGUAGE C
-@c the language is @value{LANGUAGE}
-@c NOTE: don't use underscore in the name
-@c
-
-@c
-@c Title Page Stuff
-@c
-
-@c
-@c I don't really like having a short title page. --joel
-@c
-@c @shorttitlepage RTEMS Development Environment Guide
-
-@setchapternewpage odd
-@settitle RTEMS Development Environment Guide
-@titlepage
-@finalout
-
-@title RTEMS Development Environment Guide
-@subtitle Edition @value{EDITION}, for RTEMS @value{VERSION}
-@sp 1
-@subtitle @value{UPDATED}
-@author On-Line Applications Research Corporation
-@page
-@include common/cpright.texi
-@end titlepage
-
-@c This prevents a black box from being printed on "overflow" lines.
-@c The alternative is to rework a sentence to avoid this problem.
-
-@contents
-
-@ifnottex
-@node Top, Introduction, (dir), (dir)
-@top RTEMS Development Environment Guide
-
-@menu
-* Introduction::
-* Directory Structure::
-* Sample Applications::
-* RTEMS Specific Utilities::
-* Command and Variable Index::
-* Concept Index::
-@end menu
-@end ifnottex
-
-@include intro.texi
-@include direct.texi
-@include sample.texi
-@include utils.texi
-
-@node Command and Variable Index, Concept Index, RTEMS Specific Utilities unhex - Convert Hexadecimal File into Binary Equivalent, Top
-@unnumbered Command and Variable Index
-
-There are currently no Command and Variable Index entries.
-
-@c @printindex fn
-
-@node Concept Index, , Command and Variable Index, Top
-@unnumbered Concept Index
-
-There are currently no Concept Index entries.
-@c @printindex cp
-
-@bye
-
diff --git a/doc/develenv/direct.t b/doc/develenv/direct.t
deleted file mode 100644
index 9950b69274..0000000000
--- a/doc/develenv/direct.t
+++ /dev/null
@@ -1,689 +0,0 @@
-@c
-@c COPYRIGHT (c) 1989-2010.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Directory Structure
-
-The RTEMS directory structure is designed to meet
-the following requirements:
-
-@itemize @bullet
-@item encourage development of modular components.
-
-@item isolate processor and target dependent code, while
-allowing as much common source code as possible to be shared
-across multiple processors and target boards.
-
-@item allow multiple RTEMS users to perform simultaneous
-compilation of RTEMS and its support facilities for different
-processors and targets.
-@end itemize
-
-The resulting directory structure has processor and
-board dependent source files isolated from generic files. When
-RTEMS is configured and built, object directories and
-an install point will be automatically created based upon
-the target CPU family and BSP selected.
-
-The placement of object files based upon the selected BSP name
-ensures that object files are not mixed across CPUs or targets.
-This in combination with the makefiles allows the specific
-compilation options to be tailored for a particular target
-board. For example, the efficiency of the memory subsystem for
-a particular target board may be sensitive to the alignment of
-data structures, while on another target board with the same
-processor memory may be very limited. For the first target, the
-options could specify very strict alignment requirements, while
-on the second the data structures could be @i{packed} to conserve
-memory. It is impossible to achieve this degree of flexibility
-without providing source code.
-
-The RTEMS source tree is organized based on the following variables:
-
-@itemize @bullet
-
-@item functionality,
-@item target processor family,
-@item target processor model,
-@item peripherals, and
-@item target board.
-
-@end itemize
-
-Each of the following sections will describe the
-contents of the directories in the RTEMS source
-tree. The top of the tree will be referenced
-as @code{$@{RTEMS_ROOT@}} in this discussion.
-
-@c
-@c Top Level Tree
-@c
-
-@c @ifset use-ascii
-@example
-@group
- rtems-VERSION
- |
- +--------+----+----+----+--+-----+---+-------+--------+
- | | | | | | | | |
-aclocal automake c contrib cpukit doc make testsuites tools
-@end group
-@end example
-@c @end ifset
-
-@ifset use-tex
-@end ifset
-
-@ifset use-html
-@html
-@end html
-@end ifset
-
-@table @code
-@item $@{RTEMS_ROOT@}/aclocal/
-This directory contains the custom M4 macros which are available to
-the various GNU autoconf @code{configure.ac} scripts throughout
-the RTEMS source tree. GNU autoconf interprets @code{configure.ac}
-files to produce the @code{configure} files used to tailor
-RTEMS build for a particular host and target environment. The
-contents of this directory will not be discussed further in this
-document.
-
-@item $@{RTEMS_ROOT@}/automake/
-This directory contains the custom GNU automake fragments
-which are used to support the various @code{Makefile.am}
-files throughout the RTEMS source tree. The
-contents of this directory will not be discussed
-further in this document.
-
-@item $@{RTEMS_ROOT@}/c/
-This directory is the root of the portions of the RTEMS source
-tree which must be built tailored for a particular CPU model
-or BSP. The contents of this directory will be discussed
-in the @ref{Directory Structure c/ Directory} section.
-
-@item $@{RTEMS_ROOT@}/contrib/
-This directory contains contributed support software. Currently
-this directory contains the RPM specifications for cross-compilers
-hosted on GNU/Linux that target various operating systems
-including MinGW, Cygwin, FreeBSD, and Solaris. The
-cross-compilers produced using these specifications are then
-used in a Canadian cross build procedure to produce the various
-RTEMS toolsets on a GNU/Linux host.
-
-This directory also contains RPM specifications for the
-prebuilt cross-compilation toolsets provided by the
-RTEMS project. There are separate subdirectories
-for each of the components in the RTEMS Cross Compilation
-Environment unde the @code{contrib/crossrpms/} directory.
-This directory is configured, built, and installed separately
-from the RTEMS executive and tests. This directory will not
-be discussed further in this document.
-
-
-@item $@{RTEMS_ROOT@}/cpukit/
-This directory is the root for all of the "multilib'able"
-portions of RTEMS. This is a GNU way of saying the
-contents of this directory can be compiled like the
-C Library (@code{libc.a}) and the functionality is
-neither CPU model nor BSP specific. The source code
-for most RTEMS services reside under this directory.
-The contents of this directory will be discussed
-in the @ref{Directory Structure CPU Kit Directory} section.
-
-@item $@{RTEMS_ROOT@}/doc/
-This directory is the root for all RTEMS documentation.
-The source for RTEMS is written in GNU TeXinfo and
-used to produce HTML, PDF, and "info" files.
-The RTEMS documentation is configured, built,
-and installed separately from the RTEMS executive and tests.
-The contents of this directory will be discussed
-in the @ref{Directory Structure Documentation Directory} section.
-
-@item $@{RTEMS_ROOT@}/make/
-This directory contains files which support the
-RTEMS Makefile's. From a user's perspective, the
-most important parts are found in the @code{custom/}
-subdirectory. Each ".cfg" file in this directory
-is associated with a specific BSP and describes
-the CPU model, compiler flags, and procedure to
-produce an executable for the target board.
-These files are described in detail in the
-@b{RTEMS BSP and Device Driver Development Guide}
-and will not be discussed further in this document.
-
-@item $@{RTEMS_ROOT@}/testsuites/
-This directory contains the test suites for the
-various RTEMS APIs and support libraries. The
-contents of this directory are discussed in the
-@ref{Directory Structure testsuites/ Test Suites} section.
-
-@item $@{RTEMS_ROOT@}/tools/
-This directory contains RTEMS specific support utilities which
-execute on the development host. These utilities are divided
-into subdirectories based upon whether they are used in the process
-of building RTEMS and applications, are CPU specific, or are
-used to assist in updating the RTEMS source tree and applications.
-The support utilities used in the process of building RTEMS are
-described in @ref{RTEMS Specific Utilities}. These are the
-only components of this subtree that will be discussed in this
-document.
-
-@end table
-
-
-
-@c
-@c c/ Directions
-@c
-@section c/ Directory
-
-The @code{$@{RTEMS_ROOT@}/c/} directory was formerly
-the root directory of all RTEMS source code. At this time, it contains
-the root directory for only those RTEMS components
-which must be compiled or linked in a way that is specific to a
-particular CPU model or board. This directory contains the
-following subdirectories:
-
-@table @code
-@item $@{RTEMS_ROOT@}/c/src/
-This directory is logically the root for the RTEMS components
-which are CPU model or board dependent. Thus this directory
-is the root for the BSPs and the Ada Test Suites as well
-as CPU model and BSP dependent libraries. The contents of
-this directory are discussed in the
-@ref{Directory Structure c/src/ Directory} section.
-@end table
-
-@c
-@c c/src/ Directory
-@c
-@subsection c/src/ Directory
-
-As mentioned previously, this directory is logically
-the root for the RTEMS components
-which are CPU model or board dependent. The
-following is a list of the subdirectories in this
-directory and a description of each.
-
-@table @code
-@item $@{RTEMS_ROOT@}/c/src/aclocal/
-This directory contains the custom M4 macros which are available to
-the various GNU autoconf @code{configure.ac} scripts throughout
-this portion of the RTEMS source tree. GNU autoconf interprets
-@code{configure.ac} files to produce the @code{configure} files used
-to tailor RTEMS build for a particular host and target environment. The
-contents of this directory will not be discussed further in this
-document.
-
-@item $@{RTEMS_ROOT@}/c/src/ada/
-This directory contains the Ada95 language bindings to the
-RTEMS Classic API.
-
-@item $@{RTEMS_ROOT@}/c/src/ada-tests/
-This directory contains the test suite for the Ada
-language bindings to the Classic API.
-
-@item $@{RTEMS_ROOT@}/c/src/automake/
-This directory contains files which are "Makefile fragments."
-They are included as required by the various @code{Makefile.am}
-files throughout this portion of the RTEMS source tree.
-
-@item $@{RTEMS_ROOT@}/c/src/lib/
-This directory contains the directories @code{libbsp/}
-and @code{libcpu/} which contain the source code for
-the Board Support Packages (BSPs) and CPU Model
-specific source code for RTEMS.
-
-The @code{libbsp/} is organized based upon the CPU
-family and boards BSPs. The contents of @code{libbsp/}
-are discussed briefly in
-@ref{Directory Structure c/src/lib/libbsp BSP Directory}
-and presented in detail in the
-@b{RTEMS BSP and Device Driver Development Guide}.
-
-The @code{libcpu/} directory is also organized by
-CPU family with further divisions based upon CPU
-model and features that are shared across CPU models
-such as caching and DMA.
-
-@item $@{RTEMS_ROOT@}/c/src/libchip/
-This directory contains device drivers for various
-peripheral chips which are designed to be CPU and
-board dependent. This directory contains a variety
-of drivers for serial devices, network interface
-controllers, shared memory and real-time clocks.
-
-@item $@{RTEMS_ROOT@}/c/src/librtems++/
-This directory contains C++ classes which map to the RTEMS
-Classic API.
-
-@item $@{RTEMS_ROOT@}/c/src/make/
-This directory is used to generate the bulk of the supporting
-rules files which are installed as part of the Application Makefiles.
-This file contains settings for various Makefile variables to
-tailor them to the particular CPU model and BSP configured.
-
-@item $@{RTEMS_ROOT@}/c/src/nfsclient/
-This directory contains a Network File System (NFS) client
-for RTEMS. With this file system, a user's application can
-access files on a remote computer.
-
-@item $@{RTEMS_ROOT@}/c/src/optman/
-This directory contains stubs for the RTEMS Classic API
-Managers which are considered optional and whose use
-may be explicitly forbidden by an application. All of the
-directive implementations in this Optional Managers
-return @code{E_NOTCONFIGURED}.
-
-@item $@{RTEMS_ROOT@}/c/src/support/
-This directory exists solely to generate the RTEMS
-version string which includes the RTEMS version,
-CPU architecture, CPU model, and BSP name.
-
-@item $@{RTEMS_ROOT@}/c/src/wrapup/
-This directory is responsible for taking the individual
-libraries and objects built in each of the components
-in the RTEMS source tree and bundling them together to form
-the single RTEMS library @code{librtemsbsp.a}. This
-library contains all BSP and CPU model specific software.
-
-@end table
-
-@c
-@c c/src/lib/libbsp BSP Directory
-@c
-
-@subsubsection c/src/lib/libbsp BSP Directory
-
-The "libbsp" directory contains a directory for each CPU family supported
-by RTEMS. Beneath each CPU directory is a directory for each BSP for that
-processor family.
-
-@c
-@c Tree 7 - C BSP Library
-@c
-
-The "libbsp" directory provides all the BSPs provided with this
-release of the RTEMS executive. The subdirectories are
-divided, as discussed previously, based on specific processor
-family, then further broken down into specific target board
-environments. The "no_cpu" subdirectory provides a starting point
-template BSP which can be used to develop a specific BSP for an
-unsupported target board. The files in this subdirectory may aid
-in preliminary testing of the RTEMS development environment that has
-been built for no particular target in mind.
-
-Below each CPU dependent directory is a directory for each target BSP
-supported in this release.
-
-Each BSP provides the modules which comprise an RTEMS BSP. The
-modules are separated into the subdirectories "clock", "console",
-"include", "shmsupp", "startup", and "timer" as shown in the following
-figure:
-
-@c
-@c Tree 8 - Each BSP
-@c
-
-@c @ifset use-ascii
-@example
-@group
- Each BSP
- |
- +-----------+----------+-----+-----+----------+----------+
- | | | | | |
-clock console include shmsupp startup timer
-@end group
-@end example
-@c @end ifset
-
-@c
-@c CPU Kit Directory
-@c
-@section CPU Kit Directory
-
-@c The @code{cpukit/} directory structure is as follows:
-
-@c
-@c CPU Kit Tree
-@c
-
-@c @ifset use-ascii
-@c @example
-@c @group
-@c cpukit
-@c |
-@c +-----------+----------+-----------+----------+
-@c | | | | |
-@c posix rtems sapi score wrapup
-@c @end group
-@c @end example
-@c @end ifset
-
-The @code{cpukit/} directory contains a set of subdirectories which
-contains the source files comprising the executive portion of
-the RTEMS development environment as well as portable support
-libraries such as support for the C Library and filesystems.
-The API specific and "SuperCore" (e.g. @code{score/} directory)
-source code files are separated into distinct directory trees.
-
-The following is a description of each of the subdirectories
-under @code{cpukit/}:
-
-@table @code
-
-@item $@{RTEMS_ROOT@}/cpukit/aclocal/
-This directory contains the custom M4 macros which are available to
-the various GNU autoconf @code{configure.ac} scripts throughout
-the CPU Kit portion of the RTEMS source tree.
-GNU autoconf interprets @code{configure.ac}
-files to produce the @code{configure} files used to tailor
-RTEMS build for a particular host and target environment. The
-contents of this directory will not be discussed further in this
-document.
-
-@item $@{RTEMS_ROOT@}/cpukit/automake/
-This directory contains files which are "Makefile fragments."
-They are included as required by the various @code{Makefile.am}
-files throughout the CPU Kit portion of the RTEMS source tree.
-
-@item $@{RTEMS_ROOT@}/cpukit/ftpd/
-This directory contains the RTEMS ftpd server.
-
-@item $@{RTEMS_ROOT@}/cpukit/httpd/
-This directory contains the port of the GoAhead
-web server to RTEMS.
-
-@item $@{RTEMS_ROOT@}/cpukit/include/
-This directory contains header files which are private to
-RTEMS and not considered to be owned by any other component
-in the CPU Kit.
-
-@item $@{RTEMS_ROOT@}/cpukit/libblock/
-This directory contains support code for using
-Block Devices such as hard drives, floppies, and
-CD-ROMs. It includes the generic IO primitives
-for block device drivers, disk caching support,
-and a RAM disk block device driver.
-
-@item $@{RTEMS_ROOT@}/cpukit/libcsupport/
-This directory contains the RTEMS specific support routines
-for the Newlib C Library. This includes what are referred
-to as system calls and found in section 2 of the traditional
-UNIX manual. In addition, it contains a thread-safe
-implementation of the Malloc family of routines as well
-as BSD and POSIX services not found in Newlib.
-
-@item $@{RTEMS_ROOT@}/cpukit/libfs/
-This directory contains the various non-networked
-filesystem implementations for RTEMS. It includes
-the In-Memory FileSystem (IMFS), the mini-IMFS,
-and FAT filesystems.
-
-@item $@{RTEMS_ROOT@}/cpukit/libi2c/
-This directory contains the RTEMS I2C framework.
-
-@item $@{RTEMS_ROOT@}/cpukit/libmd/
-This directory contains a port of the standard MD5
-checksum code.
-
-@item $@{RTEMS_ROOT@}/c/src/libmisc/
-This directory contains support facilities which
-are RTEMS specific but otherwise unclassified. In
-general, they do not adhere to a standard API.
-Among the support facilities in this directory are
-a @code{/dev/null} device driver, the Stack
-Overflow Checker, a mini-shell, the CPU and
-rate monotonic period usage monitoring libraries,
-and a utility to "dump a buffer" in a nicely
-formatted way similar to many ROM monitors.
-
-@item $@{RTEMS_ROOT@}/cpukit/libnetworking/
-This directory contains the port of the FreeBSD
-TCP/IP stack to RTEMS.
-
-@item $@{RTEMS_ROOT@}/cpukit/librpc/
-This directory contains the port of the FreeBSD
-RPC/XDR source to RTEMS.
-
-@item $@{RTEMS_ROOT@}/cpukit/libpci/
-This directory contains RTEMS PCI Library.
-
-@item $@{RTEMS_ROOT@}/cpukit/posix/
-This directory contains the RTEMS implementation
-of the threading portions of the POSIX API.
-
-@item $@{RTEMS_ROOT@}/cpukit/pppd/
-This directory contains a port of the free implementation
-of the PPPD network protocol.
-
-@item $@{RTEMS_ROOT@}/cpukit/rtems/
-This directory contains the implementation of the
-Classic API.
-
-@item $@{RTEMS_ROOT@}/cpukit/sapi/
-This directory contains the implementation of RTEMS
-services which are required but beyond the realm
-of any standardization efforts. It includes
-initialization, shutdown, and IO services.
-
-@item $@{RTEMS_ROOT@}/cpukit/score/
-This directory contains the "SuperCore" of RTEMS.
-All APIs are implemented in terms of SuperCore services.
-For example, Classic API tasks and POSIX threads
-are all implemented in terms of SuperCore threads.
-This provides a common infrastructure and a high degree
-of interoperability between the APIs. For example,
-services from all APIs may be used by any task/thread
-independent of the API used to create it.
-
-Within the @code{score/} directory the CPU dependent modules are found.
-The @code{score/cpu/} subdirectory contains a subdirectory for each
-target CPU supported by this release of the RTEMS
-executive. Each processor directory contains the CPU dependent
-code necessary to host RTEMS. The @code{no_cpu} directory provides a
-starting point for developing a new port to an unsupported
-processor. The files contained within the @code{no_cpu} directory
-may also be used as a reference for the other ports to specific
-processors.
-
-@item $@{RTEMS_ROOT@}/cpukit/shttpd/
-This directory contains the port of the Simple HTTPD
-web server to RTEMS.
-
-@item $@{RTEMS_ROOT@}/cpukit/telnetd/
-This directory contains the RTEMS telnetd server.
-
-@item $@{RTEMS_ROOT@}/cpukit/wrapup/
-This directory is responsible for taking the individual
-libraries and objects built in each of the components
-in the RTEMS CPU Kit source tree and bundling them
-together to form the single RTEMS library @code{librtemscpu.a}. This
-library contains all BSP and CPU model specific software.
-
-@item $@{RTEMS_ROOT@}/cpukit/zlib/
-This directory contains a port of the GNU Zlib compression
-library to RTEMS.
-
-@end table
-
-@c
-@c testsuites/ Test Suites
-@c
-@section testsuites/ Test Suites
-
-This directory provides all of the RTEMS Test Suite
-except those for the Classic API Ada95 binding
-This includes the single processor tests, multiprocessor tests,
-timing tests, library tests, and sample tests. Additionally,
-subdirectories for support functions and test related header
-files are provided. The following table lists the test suites
-currently included with the RTEMS and the directory in which
-they may be located:
-
-@table @code
-
-@item $@{RTEMS_ROOT@}/testsuites/libtests/
-This directory contains the test suite for the
-various RTEMS support components.
-
-@item $@{RTEMS_ROOT@}/testsuites/mptests/
-This directory contains the test suite for the
-multiprocessor support in the Classic API.
-The tests provided address two node configurations
-and provide coverage for the multiprocessor code found
-in RTEMS.
-
-@item $@{RTEMS_ROOT@}/testsuites/psxtests/
-This directory contains the test suite for the
-RTEMS POSIX API.
-
-@item $@{RTEMS_ROOT@}/testsuites/samples/
-This directory provides sample application tests
-which aid in the testing a newly built RTEMS environment, a new
-BSP, or as starting points for the development of an application
-using the RTEMS executive. They are discussed in
-@ref{Sample Applications}.
-
-@item $@{RTEMS_ROOT@}/testsuites/sptests/
-This directory contains the test suite for the RTEMS
-Classic API when executing on a single processor.
-The tests were originally designed to provide
-near complete test coverage for the entire
-executive code. With the addition of multiple APIs,
-this is no longer the case as some SuperCore functionality
-is not available through the Classic API. Thus
-some functionality in the SuperCore is only covered
-by tests in the POSIX API Test Suites.
-
-@item $@{RTEMS_ROOT@}/testsuites/support/
-This directory contains support software and header files
-for the various test suites.
-
-@item $@{RTEMS_ROOT@}/testsuites/tmtests/
-This directory contains the timing test suite for
-the RTEMS Classic API. This include tests that
-benchmark each directive in the Classic API
-as well as a set of critical SuperCore functions.
-These tests are important for helping to verify
-that RTEMS performs as expected on your target hardware.
-It is not uncommon to discover mistakes in board
-initialization such as caching being disabled as
-a side-effect of analyzing the results of these tests.
-
-@item $@{RTEMS_ROOT@}/testsuites/tools/
-This directory contains tools which execute on
-the development host and aid in executing and
-evaluating the results of the test suite. The
-tools @code{difftest} compares the output of one
-or more tests with the expected output. If you
-place the output of all the @code{tmtests/} in
-a single file, then the utility @code{sorttimes}
-will be able to produce a report organizing the
-execution times by manager.
-
-@end table
-
-
-@c
-@c Documentation Directory
-@c
-@section Documentation Directory
-
-This directory contains the source code for all RTEMS documentation
-in @code{TexInfo} format as well as utilities used in the generation
-of the RTEMS documentation set. This source code is used to produce
-the RTEMS documentation in various formats including PDF, HTML,
-and PostScript.
-
-@table @code
-
-@item $@{RTEMS_ROOT@}/doc/ada_user/
-This directory contains the source code for the @cite{RTEMS
-Applications Ada User's Guide} which documents the Ada95
-binding to the Classic API. This manual is produced from
-from the same source base as the @cite{RTEMS Application
-C User's Guide}.
-
-@item $@{RTEMS_ROOT@}/doc/bsp_howto/
-This directory contains the source code for the
-@cite{RTEMS BSP and Device Driver Development Guide}.
-
-@item $@{RTEMS_ROOT@}/doc/common/
-This directory contains the source code for the files which
-are shared across multiple manuals in the RTEMS Documentation Set.
-This includes the copyright page as well as the timing
-tables which can be filled in on a per BSP basis in the
-CPU supplements.
-
-@item $@{RTEMS_ROOT@}/doc/cpu_supplement/
-This directory contains the source code for the
-RTEMS CPU Supplement.
-
-@item $@{RTEMS_ROOT@}/doc/develenv/
-This directory contains the source code for the
-@cite{RTEMS Development Environment Guide}. This is
-the document you are currently reading.
-
-@item $@{RTEMS_ROOT@}/doc/filesystem/
-This directory contains the source code for the
-@cite{RTEMS Filesystem Design Guide}. This manual
-is a continuous work in process as it attempts to
-capture the design of the interface between system
-calls and filesystem implementations as well as the
-information required by those implementing filesystems.
-
-@item $@{RTEMS_ROOT@}/doc/images/
-This directory contains the source code for the graphics
-used in the HTML version of the RTEMS Documentation.
-
-@item $@{RTEMS_ROOT@}/doc/networking/
-This directory contains the source code for the
-@cite{RTEMS Network Supplement}.
-
-@item $@{RTEMS_ROOT@}/doc/new_chapters/
-This directory contains the source code for the new documentation
-components which have not yet been collected into a new manual or
-merged into an existing document. Currently, this primarily
-contains draft documentation for some portions of
-the facilities implemented in @code{$@{RTEMS_ROOT@}/c/src/libmisc/}.
-
-@item $@{RTEMS_ROOT@}/doc/porting/
-This directory contains the source code for the
-@cite{RTEMS Porting Guide}.
-
-@item $@{RTEMS_ROOT@}/doc/posix1003.1/
-This directory contains the source code for the
-@cite{RTEMS POSIX 1003.1 Compliance Guide}.
-
-@item $@{RTEMS_ROOT@}/doc/posix_users/
-This directory contains the source code for the
-@cite{RTEMS POSIX API User's Guide}. It is important to
-note that RTEMS' support for POSIX is a combination of
-functionality provided by RTEMS and the Newlib C Library
-so some functionality is documented by Newlib.
-
-@item $@{RTEMS_ROOT@}/doc/relnotes/
-This directory contains the source code for a formally
-release notes document. This has not been used for
-recent RTEMS releases.
-
-@item $@{RTEMS_ROOT@}/doc/started/
-This directory contains the source code for the
-@cite{Getting Started with RTEMS for C/C++ Users} manual.
-
-@item $@{RTEMS_ROOT@}/doc/tools/
-This directory contains the source code for the tools
-used on the development host to assist in producing the
-RTEMS Documentation. The most important of these tools
-is @code{bmenu} which generates the hierarchical node
-linking commands based upon chapter, section, and
-subsection organization.
-
-@item $@{RTEMS_ROOT@}/doc/user/
-This directory contains the source code for the @cite{RTEMS
-Applications C User's Guide} which documents the Classic API.
-
-@end table
diff --git a/doc/develenv/intro.texi b/doc/develenv/intro.texi
deleted file mode 100644
index 695b37108e..0000000000
--- a/doc/develenv/intro.texi
+++ /dev/null
@@ -1,53 +0,0 @@
-@c
-@c COPYRIGHT (c) 1989-2011.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@node Introduction, Directory Structure, Top, Top
-@chapter Introduction
-
-This document describes the RTEMS development
-environment. Discussions are provided for the following topics:
-
-@itemize @bullet
-@item the directory structure used by RTEMS,
-
-@item usage of the GNU Make utility within the RTEMS
-development environment,
-
-@item sample applications, and
-
-@item the RTEMS specific utilities.
-@end itemize
-
-RTEMS was designed as a reusable software component.
-Highly reusable software such as RTEMS is typically distributed
-in the form of source code without providing any support tools.
-RTEMS is the foundation for a complex family of facilities
-including board support packages, device drivers, and support
-libraries. The RTEMS Development Environment is not a CASE
-tool. It is a collection of tools designed to reduce the
-complexity of using and enhancing the RTEMS family. Tools are
-provided which aid in the management of the development,
-maintenance, and usage of RTEMS, its run-time support
-facilities, and applications which utilize the executive.
-
-A key component of the RTEMS development environment
-is the GNU family of free tools. This is robust set of
-development and POSIX compatible tools for which source code is
-freely available. The primary compilers, assemblers, linkers,
-and make utility used by the RTEMS development team are the GNU
-tools. They are highly portable supporting a wide variety of
-host computers and, in the case of the development tools, a wide
-variety of target processors.
-
-It is recommended that the RTEMS developer become
-familiar with the RTEMS Development Environment before
-proceeding with any modifications to the executive source tree.
-The source code for the executive is very modular and source
-code is divided amongst directories based upon functionality as
-well as dependencies on CPU and target board. This organization
-is aimed at isolating and minimizing non-portable code. This
-has the immediate result that adding support for a new CPU or
-target board requires very little "wandering" around the source
-tree.
diff --git a/doc/develenv/sample.t b/doc/develenv/sample.t
deleted file mode 100644
index 68a3de285b..0000000000
--- a/doc/develenv/sample.t
+++ /dev/null
@@ -1,464 +0,0 @@
-@c
-@c COPYRIGHT (c) 1989-2007.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Sample Applications
-
-@section Introduction
-
-The RTEMS source distribution includes a set of sample applications
-that are located in the @code{$@{RTEMS_ROOT@}/testsuites/samples/}
-directory. These applications are intended to illustrate the
-basic format of RTEMS single and multiple processor
-applications and the use of some features. In addition, these
-relatively simple applications can be used to test locally
-developed board support packages and device drivers as they
-exercise a critical subset of RTEMS functionality that is often
-broken in new BSPs.
-
-Some of the following sample applications will be covered in
-more detail in subsequent sections:
-
-@table @b
-@item Hello World
-The RTEMS Hello World test is provided in
-the subdirectory @code{$@{RTEMS_ROOT@}/testsuites/samples/hello/}.
-This test is helpful when testing new RTEMS development environment.
-
-@item Clock Tick
-The @code{$@{RTEMS_ROOT@}/testsuites/samples/ticker/}
-subdirectory provides a test for verification of clock chip
-device drivers of BSPs.
-
-@item Base Single Processor
-A simple single processor test similar to those in the
-single processor test suite is provided in
-@code{$@{RTEMS_ROOT@}/testsuites/samples/base_sp/}.
-
-@item Base Multiple Processor
-A simple two node multiprocessor test capable of testing an newly
-developed MPCI layer is provided in
-@code{$@{RTEMS_ROOT@}/testsuites/samples/base_mp/}.
-
-@item Capture
-The RTEMS Capture test is provided in
-the subdirectory @code{$@{RTEMS_ROOT@}/testsuites/samples/capture/}.
-This is an interactive test which demonstrates the capabilities
-of the RTEMS Capture Engine. It includes a few test threads
-which generate interesting execution patterns. Look at the
-file @code{$@{RTEMS_ROOT@}/testsuites/samples/capture/capture.scn}
-for a sample session.
-
-@item Constructor/Destructor C++ Test
-The @code{$@{RTEMS_ROOT@}/testsuites/samples/cdtest/}
-subdirectory provides a simple C++ application using
-constructors and destructors. It is only built when
-C++ is enabled and its primary purpose is to demonstrate
-that global constructors and destructors work. Since this
-requires that the linker script for your BSP be correct, this is
-an important test.
-
-@item File IO
-The RTEMS File IO test is provided in
-the subdirectory @code{$@{RTEMS_ROOT@}/testsuites/samples/fileio/}.
-This is an interactive test which allows the user to interact with
-an ATA/IDE device. It will read the partition table and allow the
-user to dynamically mount one of the FAT32 partitions it finds.
-Commands are also provided to write and read files on the disk.
-
-@item IO Stream
-The RTEMS IO Stream test is provided in
-the subdirectory @code{$@{RTEMS_ROOT@}/testsuites/samples/iostream/}.
-This test is a simple C++ application which demonstrates that
-C++ iostreams are functional. This requires that the RTEMS C++
-run-time support is functioning properly. This test is only
-build when C++ is enabled.
-
-@item Network Loopback Test
-The @code{$@{RTEMS_ROOT@}/testsuites/samples/loopback/}
-directory contains a sample test that demonstrates the use of
-sockets and the loopback network device. It does not require
-the presence of network hardware in order to run.
-It is only built if RTEMS was configured with networking enabled.
-
-@item Minimum Size Test
-The directory
-@code{$@{RTEMS_ROOT@}/testsuites/samples/minimum/}
-contains a simple RTEMS program that results in a non-functional
-executable. It is intended to show the size of a minimum footprint
-application based upon the current RTEMS configuration.
-
-@item Nanoseconds
-The RTEMS Nanoseconds test is provided in
-the subdirectory @code{$@{RTEMS_ROOT@}/testsuites/samples/nsecs/}.
-This test demonstrates that the BSP has support for nanosecond
-timestamp granularity. It prints the time of day and uptime multiple
-times as quickly as possible. It should be possible from the output
-to determine if your BSP has nanosecond accurate clock support
-and it is functional.
-
-@item Paranoia Floating Point Test
-The directory @code{$@{RTEMS_ROOT@}/testsuites/samples/paranoia/}
-contains the public domain floating point and math library test.
-
-@item Point-to-Point Protocol Daemon
-The RTEMS Point-to-Point Protocol Daemon test is provided in
-the subdirectory @code{$@{RTEMS_ROOT@}/testsuites/samples/pppd/}.
-This test primarily serves as the baseline for a user application
-using the PPP protocol.
-
-@item Unlimited Object Allocation
-The @code{$@{RTEMS_ROOT@}/testsuites/samples/unlimited/}
-directory contains a sample test that demonstrates the use of the
-@i{unlimited} object allocation configuration option to RTEMS.
-
-@end table
-
-The sample tests are written using the Classic API so the reader
-should be familiar with the terms used and
-material presented in the @b{RTEMS Applications Users Guide}.
-
-@c
-@c
-@c
-@section Hello World
-
-This sample application is in the following directory:
-
-@example
-$@{RTEMS_ROOT@}/testsuites/samples/hello/
-@end example
-
-It provides a rudimentary test of the BSP start up
-code and the console output routine. The C version of this
-sample application uses the printf function from the RTEMS
-Standard C Library to output messages. The Ada version of this
-sample uses the TEXT_IO package to output the hello messages.
-The following messages are printed:
-
-@example
-@group
-*** HELLO WORLD TEST ***
-Hello World
-*** END OF HELLO WORLD TEST ***
-@end group
-@end example
-
-These messages are printed from the application's
-single initialization task. If the above messages are not
-printed correctly, then either the BSP start up code or the
-console output routine is not operating properly.
-
-@c
-@c
-@c
-@section Clock Tick
-
-This sample application is in the following directory:
-
-@example
-$@{RTEMS_ROOT@}/testsuites/samples/ticker/
-@end example
-
-This application is designed as a simple test of the
-clock tick device driver. In addition, this application also
-tests the printf function from the RTEMS Standard C Library by
-using it to output the following messages:
-
-@example
-@group
-*** CLOCK TICK TEST ***
-TA1 - tm_get - 09:00:00 12/31/1988
-TA2 - tm_get - 09:00:00 12/31/1988
-TA3 - tm_get - 09:00:00 12/31/1988
-TA1 - tm_get - 09:00:05 12/31/1988
-TA1 - tm_get - 09:00:10 12/31/1988
-TA2 - tm_get - 09:00:10 12/31/1988
-TA1 - tm_get - 09:00:15 12/31/1988
-TA3 - tm_get - 09:00:15 12/31/1988
-TA1 - tm_get - 09:00:20 12/31/1988
-TA2 - tm_get - 09:00:20 12/31/1988
-TA1 - tm_get - 09:00:25 12/31/1988
-TA1 - tm_get - 09:00:30 12/31/1988
-TA2 - tm_get - 09:00:30 12/31/1988
-TA3 - tm_get - 09:00:30 12/31/1988
-*** END OF CLOCK TICK TEST ***
-@end group
-@end example
-
-The clock tick sample application utilizes a single
-initialization task and three copies of the single application
-task. The initialization task prints the test herald, sets the
-time and date, and creates and starts the three application
-tasks before deleting itself. The three application tasks
-generate the rest of the output. Every five seconds, one or
-more of the tasks will print the current time obtained via the
-tm_get directive. The first task, TA1, executes every five
-seconds, the second task, TA2, every ten seconds, and the third
-task, TA3, every fifteen seconds. If the time printed does not
-match the above output, then the clock device driver is not
-operating properly.
-
-@c
-@c
-@c
-@section Base Single Processor Application
-
-This sample application is in the following directory:
-
-@example
-$@{RTEMS_ROOT@}/testsuites/samples/base_sp/
-@end example
-
-It provides a framework from which a single processor
-RTEMS application can be developed. The use of the task argument
-is illustrated. This sample application uses the printf
-function from the RTEMS Standard C Library or TEXT_IO functions
-when using the Ada version to output the following messages:
-
-@example
-@group
-*** SAMPLE SINGLE PROCESSOR APPLICATION ***
-Creating and starting an application task
-Application task was invoked with argument (0) and has id of 0x10002
-*** END OF SAMPLE SINGLE PROCESSOR APPLICATION ***
-@end group
-@end example
-
-The first two messages are printed from the
-application's single initialization task. The final messages
-are printed from the single application task.
-
-@c
-@c
-@c
-@section Base Multiple Processor Application
-
-This sample application is in the following directory:
-
-@example
-$@{RTEMS_ROOT@}/testsuites/samples/base_mp/
-@end example
-
-It provides a framework from which a multiprocessor
-RTEMS application can be developed. This directory has a
-subdirectory for each node in the multiprocessor system. The
-task argument is used to distinguish the node on which the
-application task is executed. The first node will print the
-following messages:
-
-@example
-@group
-*** SAMPLE MULTIPROCESSOR APPLICATION ***
-Creating and starting an application task
-This task was invoked with the node argument (1)
-This task has the id of 0x10002
-*** END OF SAMPLE MULTIPROCESSOR APPLICATION ***
-@end group
-@end example
-
-The second node will print the following messages:
-
-@example
-@group
-*** SAMPLE MULTIPROCESSOR APPLICATION ***
-Creating and starting an application task
-This task was invoked with the node argument (2)
-This task has the id of 0x20002
-*** END OF SAMPLE MULTIPROCESSOR APPLICATION ***
-@end group
-@end example
-
-The herald is printed from the application's single
-initialization task on each node. The final messages are
-printed from the single application task on each node.
-
-In this sample application, all source code is shared
-between the nodes except for the node dependent configuration
-files. These files contains the definition of the node number
-used in the initialization of the RTEMS Multiprocessor
-Configuration Table. This file is not shared because the node
-number field in the RTEMS Multiprocessor Configuration Table
-must be unique on each node.
-
-@c
-@c
-@c
-@section Constructor/Destructor C++ Application
-
-This sample application is in the following directory:
-
-@example
-$@{RTEMS_ROOT@}/testsuites/samples/cdtest/
-@end example
-
-This sample application demonstrates that RTEMS is
-compatible with C++ applications. It uses constructors,
-destructor, and I/O stream output in testing these various
-capabilities. The board support package responsible for this
-application must support a C++ environment.
-
-This sample application uses the printf function from
-the RTEMS Standard C Library to output the following messages:
-
-@example
-@group
-Hey I'M in base class constructor number 1 for 0x400010cc.
-Hey I'M in base class constructor number 2 for 0x400010d4.
-Hey I'M in derived class constructor number 3 for 0x400010d4.
-*** CONSTRUCTOR/DESTRUCTOR TEST ***
-Hey I'M in base class constructor number 4 for 0x4009ee08.
-Hey I'M in base class constructor number 5 for 0x4009ee10.
-Hey I'M in base class constructor number 6 for 0x4009ee18.
-Hey I'M in base class constructor number 7 for 0x4009ee20.
-Hey I'M in derived class constructor number 8 for 0x4009ee20.
-Testing a C++ I/O stream
-Hey I'M in derived class constructor number 8 for 0x4009ee20.
-Derived class - Instantiation order 8
-Hey I'M in base class constructor number 7 for 0x4009ee20.
-Instantiation order 8
-Hey I'M in base class constructor number 6 for 0x4009ee18.
-Instantiation order 6
-Hey I'M in base class constructor number 5 for 0x4009ee10.
-Instantiation order 5
-Hey I'M in base class constructor number 4 for 0x4009ee08.
-Instantiation order 5
-*** END OF CONSTRUCTOR/DESTRUCTOR TEST ***
-Hey I'M in base class constructor number 3 for 0x400010d4.
-Hey I'M in base class constructor number 2 for 0x400010d4.
-Hey I'M in base class constructor number 1 for 0x400010cc.
-@end group
-@end example
-
-@c
-@c
-@c
-@section Minimum Size Test
-
-This sample application is in the following directory:
-
-@example
-$@{RTEMS_ROOT@}/testsuites/samples/minimum/
-@end example
-
-This sample application is designed to produce the
-minimum code space required for any RTEMS application
-based upon the current RTEMS configuration and
-BSP. In many situations, the bulk of this executable
-consists of hardware and RTEMS initialization, basic
-infrastructure such as malloc(), and RTEMS and
-hardware shutdown support.
-
-@c
-@c
-@c
-@section Nanosecond Granularity Application
-
-This sample application is in the following directory:
-
-@example
-$@{RTEMS_ROOT@}/testsuites/samples/nsecs/
-@end example
-
-This sample application exercises the Clock Driver
-for this BSP and demonstrates its ability to generate
-accurate timestamps. This application does this by
-exercising the time subsystem in three ways:
-
-@itemize @bullet
-@item Obtain Time of Day Twice Back to Back
-@item Obtain System Up Time Twice Back to Back
-@item Use System Up Time to Measure Loops
-@end itemize
-
-The following is an example of what the output of this
-test may appear like:
-
-@example
-*** NANOSECOND CLOCK TEST ***
-10 iterations of getting TOD
-Start: Sat Mar 24 11:15:00 2007:540000
-Stop : Sat Mar 24 11:15:00 2007:549000 --> 0:9000
-Start: Sat Mar 24 11:15:00 2007:3974000
-Stop : Sat Mar 24 11:15:00 2007:3983000 --> 0:9000
-Start: Sat Mar 24 11:15:00 2007:7510000
-Stop : Sat Mar 24 11:15:00 2007:7519000 --> 0:9000
-Start: Sat Mar 24 11:15:00 2007:11054000
-Stop : Sat Mar 24 11:15:00 2007:11063000 --> 0:9000
-Start: Sat Mar 24 11:15:00 2007:14638000
-Stop : Sat Mar 24 11:15:00 2007:14647000 --> 0:9000
-Start: Sat Mar 24 11:15:00 2007:18301000
-Stop : Sat Mar 24 11:15:00 2007:18310000 --> 0:9000
-Start: Sat Mar 24 11:15:00 2007:21901000
-Stop : Sat Mar 24 11:15:00 2007:21910000 --> 0:9000
-Start: Sat Mar 24 11:15:00 2007:25526000
-Stop : Sat Mar 24 11:15:00 2007:25535000 --> 0:9000
-Start: Sat Mar 24 11:15:00 2007:29196000
-Stop : Sat Mar 24 11:15:00 2007:29206000 --> 0:10000
-Start: Sat Mar 24 11:15:00 2007:32826000
-Stop : Sat Mar 24 11:15:00 2007:32835000 --> 0:9000
-
-10 iterations of getting Uptime
-0:38977000 0:38986000 --> 0:9000
-0:40324000 0:40332000 --> 0:8000
-0:41636000 0:41645000 --> 0:9000
-0:42949000 0:42958000 --> 0:9000
-0:44295000 0:44304000 --> 0:9000
-0:45608000 0:45617000 --> 0:9000
-0:46921000 0:46930000 --> 0:9000
-0:48282000 0:48291000 --> 0:9000
-0:49595000 0:49603000 --> 0:8000
-0:50908000 0:50917000 --> 0:9000
-
-10 iterations of getting Uptime with different loop values
-loop of 10000 0:119488000 0:119704000 --> 0:216000
-loop of 20000 0:124028000 0:124463000 --> 0:435000
-loop of 30000 0:128567000 0:129220000 --> 0:653000
-loop of 40000 0:133097000 0:133964000 --> 0:867000
-loop of 50000 0:137643000 0:138728000 --> 0:1085000
-loop of 60000 0:142265000 0:143572000 --> 0:1307000
-loop of 70000 0:146894000 0:148416000 --> 0:1522000
-loop of 80000 0:151519000 0:153260000 --> 0:1741000
-loop of 90000 0:156145000 0:158099000 --> 0:1954000
-loop of 100000 0:160770000 0:162942000 --> 0:2172000
-*** END OF NANOSECOND CLOCK TEST ***
-@end example
-
-@c
-@c
-@c
-@section Paranoia Floating Point Application
-
-This sample application is in the following directory:
-
-@example
-$@{RTEMS_ROOT@}/testsuites/samples/paranoia/
-@end example
-
-This sample application uses a public domain floating
-point and math library test to verify these capabilities of the
-RTEMS executive. Deviations between actual and expected results
-are reported to the screen. This is a very extensive test which
-tests all mathematical and number conversion functions.
-Paranoia is also very large and requires a long period of time
-to run. Problems which commonly prevent this test from
-executing to completion include stack overflow and FPU exception
-handlers not installed.
-
-@c
-@c
-@c
-@section Network Loopback Test
-
-This sample application is in the following directory:
-
-@example
-$@{RTEMS_ROOT@}/testsuites/samples/loopback/
-@end example
-
-This sample application uses the network loopback device to
-demonstrate the use of the RTEMS TCP/IP stack. This sample
-test illustrates the basic configuration and initialization
-of the TCP/IP stack as well as simple socket usage.
-
diff --git a/doc/develenv/stamp-vti b/doc/develenv/stamp-vti
deleted file mode 100644
index 5634951ec8..0000000000
--- a/doc/develenv/stamp-vti
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 24 February 2013
-@set UPDATED-MONTH February 2013
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0
diff --git a/doc/develenv/utils.t b/doc/develenv/utils.t
deleted file mode 100644
index af50172230..0000000000
--- a/doc/develenv/utils.t
+++ /dev/null
@@ -1,182 +0,0 @@
-@c
-@c COPYRIGHT (c) 1989-2007.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter RTEMS Specific Utilities
-
-This section describes the additional commands
-available within the @b{RTEMS Development Environment}. Although
-some of these commands are of general use, most are included to
-provide some capability necessary to perform a required function
-in the development of the RTEMS executive, one of its support
-components, or an RTEMS based application.
-
-Some of the commands are implemented as C programs.
-However, most commands are implemented as Bourne shell scripts.
-Even if the current user has selected a different shell, the
-scripts will automatically invoke the Bourne shell during their
-execution lifetime.
-
-The commands are presented in UNIX manual page style
-for compatibility and convenience. A standard set of paragraph
-headers were used for all of the command descriptions. If a
-section contained no data, the paragraph header was omitted to
-conserve space. Each of the permissible paragraph headers and
-their contents are described below:
-
-@table @code
-@item SYNOPSIS
-describes the command syntax
-
-@item DESCRIPTION
-a full description of the command
-
-@item OPTIONS
-describes each of the permissible options for the command
-
-@item NOTES
-lists any special noteworthy comments about the command
-
-@item ENVIRONMENT
-describes all environment variables utilized by the command
-
-@item EXAMPLES
-illustrates the use of the command with specific examples
-
-@item FILES
-provides a list of major files that the command references
-
-@item SEE ALSO
-lists any relevant commands which can be consulted
-@end table
-
-Most environment variables referenced by the commands
-are defined for the RTEMS Development Environment during the
-login procedure. During login, the user selects a default RTEMS
-environment through the use of the Modules package. This tool
-effectively sets the environment variables to provide a
-consistent development environment for a specific user.
-Additional environment variables within the RTEMS environment
-were set by the system administrator during installation. When
-specifying paths, a command description makes use of these
-environment variables.
-
-When referencing other commands in the SEE ALSO
-paragraph, the following notation is used: command(code).
-Where command is the name of a related command, and code is a
-section number. Valid section numbers are as follows:
-
-@table @code
-@item 1
-Section 1 of the standard UNIX documentation
-
-@item 1G
-Section 1 of the GNU documentation
-
-@item 1R
-a manual page from this document, the RTEMS Development Environment Guide
-@end table
-
-For example, ls(1) means see the standard ls command
-in section 1 of the UNIX documentation. gcc020(1G) means see
-the description of gcc020 in section 1 of the GNU documentation.
-
-@c
-@c packhex
-@c
-@section packhex - Compress Hexadecimal File
-
-@subheading SYNOPSIS
-
-@example
-packhex <source >destination
-@end example
-
-@subheading DESCRIPTION
-
-packhex accepts Intel Hexadecimal or Motorola Srecord
-on its standard input and attempts to pack as many contiguous
-bytes as possible into a single hexadecimal record. Many
-programs output hexadecimal records which are less than 80 bytes
-long (for human viewing). The overhead required by each
-unnecessary record is significant and packhex can often reduce
-the size of the download image by 20%. packhex attempts to
-output records which are as long as the hexadecimal format
-allows.
-
-@subheading OPTIONS
-
-This command has no options.
-
-@subheading EXAMPLES
-
-Assume the current directory contains the Motorola
-Srecord file download.sr. Then executing the command:
-
-@example
-packhex <download.sr >packed.sr
-@end example
-
-will generate the file packed.sr which is usually
-smaller than download.sr.
-
-@subheading CREDITS
-
-The source for packhex first appeared in the May 1993
-issue of Embedded Systems magazine. The code was downloaded
-from their BBS. Unfortunately, the author's name was not
-provided in the listing.
-
-@c
-@c unhex
-@c
-@section unhex - Convert Hexadecimal File into Binary Equivalent
-
-@subheading SYNOPSIS
-
-@example
-unhex [-valF] [-o file] [file [file ...] ]
-@end example
-
-@subheading DESCRIPTION
-
-unhex accepts Intel Hexadecimal, Motorola Srecord, or
-TI 'B' records and converts them to their binary equivalent.
-The output may sent to standout or may be placed in a specified
-file with the -o option. The designated output file may not be
-an input file. Multiple input files may be specified with their
-outputs logically concatenated into the output file.
-
-@subheading OPTIONS
-
-This command has the following options:
-
-@table @code
-@item v
-Verbose
-
-@item a base
-First byte of output corresponds with base
-address
-
-@item l
-Linear Output
-
-@item o file
-Output File
-
-@item F k_bits
-Fill holes in input with 0xFFs up to k_bits * 1024 bits
-@end table
-
-@subheading EXAMPLES
-
-The following command will create a binary equivalent
-file for the two Motorola S record files in the specified output
-file binary.bin:
-
-@example
-unhex -o binary.bin downloadA.sr downloadB.sr
-@end example
-
diff --git a/doc/develenv/version.texi b/doc/develenv/version.texi
deleted file mode 100644
index c0e4bbb7b6..0000000000
--- a/doc/develenv/version.texi
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 17 July 2015
-@set UPDATED-MONTH July 2015
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0
diff --git a/doc/filesystem/Makefile.am b/doc/filesystem/Makefile.am
deleted file mode 100644
index cb7a60b232..0000000000
--- a/doc/filesystem/Makefile.am
+++ /dev/null
@@ -1,65 +0,0 @@
-#
-# COPYRIGHT (c) 1988-2002.
-# On-Line Applications Research Corporation (OAR).
-# All rights reserved.
-
-PROJECT = filesystem
-
-include $(top_srcdir)/project.am
-include $(top_srcdir)/main.am
-
-BMENU2 += -c
-
-GENERATED_FILES = patheval.texi init.texi mounting.texi syscalls.texi \
- fsrequirements.texi imfs.texi miniimfs.texi tftp.texi
-COMMON_FILES += $(top_srcdir)/common/cpright.texi
-
-FILES = preface.texi
-
-info_TEXINFOS = filesystem.texi
-filesystem_TEXINFOS = $(FILES) $(COMMON_FILES) $(GENERATED_FILES)
-
-patheval.texi: patheval.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-init.texi: init.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-mounting.texi: mounting.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-syscalls.texi: syscalls.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-fsrequirements.texi: fsrequirements.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-imfs.texi: imfs.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-miniimfs.texi: miniimfs.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-tftp.texi: tftp.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-EXTRA_DIST = fsrequirements.t imfs.t init.t miniimfs.t mounting.t patheval.t \
- syscalls.t tftp.t
-
-CLEANFILES += filesystem.info filesystem.info-?
diff --git a/doc/filesystem/filesystem.texi b/doc/filesystem/filesystem.texi
deleted file mode 100644
index fbc794b5f9..0000000000
--- a/doc/filesystem/filesystem.texi
+++ /dev/null
@@ -1,101 +0,0 @@
-\input texinfo @c -*-texinfo-*-
-@c %**start of header
-@setfilename filesystem.info
-@setcontentsaftertitlepage
-@syncodeindex vr fn
-@synindex ky cp
-@paragraphindent 0
-@c %**end of header
-
-@c
-@c COPYRIGHT (c) 1989-2013.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@c
-@c Master file for the Filesystem Design Guide
-@c
-
-@include version.texi
-@include common/setup.texi
-@include common/rtems.texi
-
-@ifset use-ascii
-@dircategory RTEMS On-Line Manual
-@direntry
-* RTEMS Filesystem Design Guide: (filesystem).
-@end direntry
-@end ifset
-
-@c
-@c Title Page Stuff
-@c
-
-@c
-@c I don't really like having a short title page. --joel
-@c
-@c @shorttitlepage RTEMS Filesystem Design Guide
-
-@setchapternewpage odd
-@settitle RTEMS Filesystem Design Guide
-@titlepage
-@finalout
-
-@title RTEMS Filesystem Design Guide
-@subtitle Edition @value{EDITION}, for RTEMS @value{VERSION}
-@sp 1
-@subtitle @value{UPDATED}
-@author On-Line Applications Research Corporation
-@page
-@include common/cpright.texi
-@end titlepage
-
-@c This prevents a black box from being printed on "overflow" lines.
-@c The alternative is to rework a sentence to avoid this problem.
-
-@contents
-
-@ifnottex
-@node Top, Preface, (dir), (dir)
-@top RTEMS Filesystem Design Guide
-
-@menu
-* Preface::
-* Pathname Evaluation::
-* System Initialization::
-* Mounting and Unmounting Filesystems::
-* System Call Development Notes::
-* Filesystem Implementation Requirements::
-* In-Memory Filesystem::
-* Miniature In-Memory Filesystem::
-* Trivial FTP Client Filesystem::
-* Command and Variable Index::
-* Concept Index::
-@end menu
-@end ifnottex
-
-@include preface.texi
-@include patheval.texi
-@include init.texi
-@include mounting.texi
-@include syscalls.texi
-@include fsrequirements.texi
-@include imfs.texi
-@include miniimfs.texi
-@include tftp.texi
-
-@node Command and Variable Index, Concept Index, , Top
-@unnumbered Command and Variable Index
-
-There are currently no Command and Variable Index entries.
-
-@c @printindex fn
-
-@node Concept Index, , Command and Variable Index, Top
-@unnumbered Concept Index
-
-There are currently no Concept Index entries.
-@c @printindex cp
-
-@bye
-
diff --git a/doc/filesystem/fsrequirements.t b/doc/filesystem/fsrequirements.t
deleted file mode 100644
index efc17112ec..0000000000
--- a/doc/filesystem/fsrequirements.t
+++ /dev/null
@@ -1,1180 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-
-@chapter Filesystem Implementation Requirements
-
-This chapter details the behavioral requirements that all filesystem
-implementations must adhere to.
-
-@section General
-
-The RTEMS filesystem framework was intended to be compliant with the
-POSIX Files and Directories interface standard. The following filesystem
-characteristics resulted in a functional switching layer.
-
-@example
-Figure of the Filesystem Functional Layering goes here.
-This figure includes networking and disk caching layering.
-@end example
-
-@ifset use-ascii
-@example
-@group
-@end group
-@end example
-@end ifset
-
-@ifset use-tex
-@c @image{FunctionalLayerCake,6in,4in}
-@end ifset
-
-@ifset use-html
-@end ifset
-
-@enumerate
-
-@item Application programs are presented with a standard set of POSIX
-compliant functions that allow them to interface with the files, devices
-and directories in the filesystem. The interfaces to these routines do
-not reflect the type of subordinate filesystem implementation in which
-the file will be found.
-
-@item The filesystem framework developed under RTEMS allows for mounting
-filesystem of different types under the base filesystem.
-
-@item The mechanics of locating file information may be quite different
-between filesystem types.
-
-@item The process of locating a file may require crossing filesystem
-boundaries.
-
-@item The transitions between filesystem and the processing required to
-access information in different filesystem is not visible at the level
-of the POSIX function call.
-
-@item The POSIX interface standard provides file access by character
-pathname to the file in some functions and through an integer file
-descriptor in other functions.
-
-@item The nature of the integer file descriptor and its associated
-processing is operating system and filesystem specific.
-
-@item Directory and device information must be processed with some of the
-same routines that apply to files.
-
-@item The form and content of directory and device information differs
-greatly from that of a regular file.
-
-@item Files, directories and devices represent elements (nodes) of a tree
-hierarchy.
-
-@item The rules for processing each of the node types that exist under the
-filesystem are node specific but are still not reflected in the POSIX
-interface routines.
-
-@end enumerate
-
-
-@example
-Figure of the Filesystem Functional Layering goes here.
-This figure focuses on the Base Filesystem and IMFS.
-@end example
-
-@example
-Figure of the IMFS Memfile control blocks
-@end example
-
-@section File and Directory Removal Constraints
-
-The following POSIX constraints must be honored by all filesystems.
-
-@itemize @bullet
-
-@item If a node is a directory with children it cannot be removed.
-
-@item The root node of any filesystem, whether the base filesystem or a
-mounted filesystem, cannot be removed.
-
-@item A node that is a directory that is acting as the mount point of a file
-system cannot be removed.
-
-@item On filesystems supporting hard links, a link count is maintained.
-Prior to node removal, the node's link count is decremented by one. The
-link count must be less than one to allow for removal of the node.
-
-@end itemize
-
-@c
-@c
-@c
-@section API Layering
-
-@subsection Mapping of Generic System Calls to Filesystem Specific Functions
-
-The list of generic system calls includes the routines open(), read(),
-write(), close(), etc..
-
-The Files and Directories section of the POSIX Application Programs
-Interface specifies a set of functions with calling arguments that are
-used to gain access to the information in a filesystem. To the
-application program, these functions allow access to information in any
-mounted filesystem without explicit knowledge of the filesystem type or
-the filesystem mount configuration. The following are functions that are
-provided to the application:
-
-@enumerate
-@item access()
-@item chdir()
-@item chmod()
-@item chown()
-@item close()
-@item closedir()
-@item fchmod()
-@item fcntl()
-@item fdatasync()
-@item fpathconf()
-@item fstat()
-@item fsync()
-@item ftruncate()
-@item link()
-@item lseek()
-@item mkdir()
-@item mknod()
-@item mount()
-@item open()
-@item opendir()
-@item pathconf()
-@item read()
-@item readdir()
-@item rewinddir()
-@item rmdir()
-@item rmnod()
-@item scandir()
-@item seekdir()
-@item stat()
-@item telldir()
-@item umask()
-@item unlink()
-@item unmount()
-@item utime()
-@item write()
-@end enumerate
-
-The filesystem's type as well as the node type within the filesystem
-determine the nature of the processing that must be performed for each of
-the functions above. The RTEMS filesystem provides a framework that
-allows new filesystem to be developed and integrated without alteration
-to the basic framework.
-
-To provide the functional switching that is required, each of the POSIX
-file and directory functions have been implemented as a shell function.
-The shell function adheres to the POSIX interface standard. Within this
-functional shell, filesystem and node type information is accessed which
-is then used to invoke the appropriate filesystem and node type specific
-routine to process the POSIX function call.
-
-@subsection File/Device/Directory function access via file control block - rtems_libio_t structure
-
-The POSIX open() function returns an integer file descriptor that is used
-as a reference to file control block information for a specific file. The
-file control block contains information that is used to locate node, file
-system, mount table and functional handler information. The diagram in
-Figure 8 depicts the relationship between and among the following
-components.
-
-@enumerate
-
-@item File Descriptor Table
-
-This is an internal RTEMS structure that tracks all currently defined file
-descriptors in the system. The index that is returned by the file open()
-operation references a slot in this table. The slot contains a pointer to
-the file descriptor table entry for this file. The rtems_libio_t structure
-represents the file control block.
-
-@item Allocation of entry in the File Descriptor Table
-
-Access to the file descriptor table is controlled through a semaphore that
-is implemented using the rtems_libio_allocate() function. This routine
-will grab a semaphore and then scan the file control blocks to determine
-which slot is free for use. The first free slot is marked as used and the
-index to this slot is returned as the file descriptor for the open()
-request. After the alterations have been made to the file control block
-table, the semaphore is released to allow further operations on the table.
-
-@item Maximum number of entries in the file descriptor table is
-configurable through the src/exec/sapi/headers/confdefs.h file. If the
-CONFIGURE_LIBIO_MAXIMUM_FILE_DESCRIPTORS constant is defined its value
-will represent the maximum number of file descriptors that are allowed.
-If CONFIGURE_LIBIO_MAXIMUM_FILE_DESCRIPTORS is not specified a default
-value of 20 will be used as the maximum number of file descriptors
-allowed.
-
-@item File control block - rtems_libio_t structure
-
-@example
-struct rtems_libio_tt @{
- rtems_driver_name_t *driver;
- off_t size;
- off_t offset;
- unsigned32 flags;
- rtems_filesystem_location_info_t pathinfo;
- Objects_Id sem;
- unsigned32 data0;
- void data1;
- void file_info;
- rtems_filesystem_file_handlers_r handlers;
-@};
-@end example
-
-A file control block can exist for regular files, devices and directories.
-The following fields are important for regular file and directory access:
-
-@itemize @bullet
-
-@item Size - For a file this represents the number of bytes currently
-stored in a file. For a directory this field is not filled in.
-
-@item Offset - For a file this is the byte file position index relative to
-the start of the file. For a directory this is the byte offset into a
-sequence of dirent structures.
-
-@item Pathinfo - This is a structure that provides a pointer to node
-information, OPS table functions, Handler functions and the mount table
-entry associated with this node.
-
-@item file_info - A pointer to node information that is used by Handler
-functions
-
-@item handlers - A pointer to a table of handler functions that operate on
-a file, device or directory through a file descriptor index
-
-@end itemize
-
-@end enumerate
-
-@subsection File/Directory function access via rtems_filesystem_location_info_t structure
-
-The rtems_filesystem_location_info_tt structure below provides sufficient
-information to process nodes under a mounted filesystem.
-
-@example
-struct rtems_filesystem_location_info_tt @{
- void *node_access;
- rtems_filesystem_file_handlers_r *handlers;
- rtems_filesystem_operations_table *ops;
- rtems_filesystem_mount_table_entry_t *mt_entry;
-@};
-@end example
-
-It contains a void pointer to filesystem specific nodal structure,
-pointers to the OPS table for the filesystem that contains the node, the
-node type specific handlers for the node and a reference pointer to the
-mount table entry associated with the filesystem containing the node
-
-@section Operation Tables
-
-Filesystem specific operations are invoked indirectly. The set of
-routines that implement the filesystem are configured into two tables.
-The Filesystem Handler Table has routines that are specific to a
-filesystem but remain constant regardless of the actual file type.
-The File Handler Table has routines that are both filesystem and file type
-specific.
-
-@subsection Filesystem Handler Table Functions
-
-OPS table functions are defined in a @code{rtems_filesystem_operations_table}
-structure. It defines functions that are specific to a given filesystem.
-One table exists for each filesystem that is supported in the RTEMS
-configuration. The structure definition appears below and is followed by
-general developmental information on each of the functions contained in this
-function management structure.
-
-@example
-typedef struct @{
- rtems_filesystem_evalpath_t evalpath;
- rtems_filesystem_evalmake_t evalformake;
- rtems_filesystem_link_t link;
- rtems_filesystem_unlink_t unlink;
- rtems_filesystem_node_type_t node_type;
- rtems_filesystem_mknod_t mknod;
- rtems_filesystem_rmnod_t rmnod;
- rtems_filesystem_chown_t chown;
- rtems_filesystem_freenode_t freenod;
- rtems_filesystem_mount_t mount;
- rtems_filesystem_fsmount_me_t fsmount_me;
- rtems_filesystem_unmount_t unmount;
- rtems_filesystem_fsunmount_me_t fsunmount_me;
- rtems_filesystem_utime_t utime;
- rtems_filesystem_evaluate_link_t eval_link;
- rtems_filesystem_symlink_t symlink;
-@} rtems_filesystem_operations_table;
-@end example
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection evalpath Handler
-
-@subheading Corresponding Structure Element:
-
-evalpath
-
-@subheading Arguments:
-
-@example
- const char *pathname, /* IN */
- int flags, /* IN */
- rtems_filesystem_location_info_t *pathloc /* IN/OUT */
-@end example
-
-@subheading Description:
-
-This routine is responsible for evaluating the pathname passed in
-based upon the flags and the valid @code{rthems_filesystem_location_info_t}.
-Additionally, it must make any changes to pathloc necessary to identify
-the pathname node. This should include calling the evalpath for a mounted
-filesystem, if the given filesystem supports the mount command.
-
-This routine returns a 0 if the evaluation was successful.
-Otherwise, it returns a -1 and sets errno to the correct error.
-
-This routine is required and should NOT be set to NULL.
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection evalformake Handler
-
-@subheading Corresponding Structure Element:
-
-evalformake
-
-@subheading Arguments:
-
-@example
- const char *path, /* IN */
- rtems_filesystem_location_info_t *pathloc, /* IN/OUT */
- const char **name /* OUT */
-@end example
-
-@subheading Description:
-
-This method is given a path to evaluate and a valid start location. It
-is responsible for finding the parent node for a requested make command,
-setting pathloc information to identify the parent node, and setting
-the name pointer to the first character of the name of the new node.
-Additionally, if the filesystem supports the mount command, this method
-should call the evalformake routine for the mounted filesystem.
-
-This routine returns a 0 if the evaluation was successful. Otherwise, it
-returns a -1 and sets errno to the correct error.
-
-This routine is required and should NOT be set to NULL. However, if
-the filesystem does not support user creation of a new node, it may
-set errno to ENOSYS and return -1.
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection link Handler
-
-@subheading Corresponding Structure Element:
-
-link
-
-@subheading Arguments:
-
-
-@example
-rtems_filesystem_location_info_t *to_loc, /* IN */
-rtems_filesystem_location_info_t *parent_loc, /* IN */
-const char *token /* IN */
-@end example
-
-@subheading Description:
-
-
-This routine is used to create a hard-link.
-
-It will first examine the st_nlink count of the node that we are trying to.
-If the link count exceeds LINK_MAX an error will be returned.
-
-The name of the link will be normalized to remove extraneous separators from
-the end of the name.
-
-This routine is not required and may be set to NULL.
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection unlink Handler
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-
-@subheading Description:
-
-XXX
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection node_type Handler
-
-@subheading Corresponding Structure Element:
-
-node_type()
-
-@subheading Arguments:
-
-@example
-rtems_filesystem_location_info_t *pathloc /* IN */
-@end example
-
-@subheading Description:
-
-XXX
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection mknod Handler
-
-@subheading Corresponding Structure Element:
-
-mknod()
-
-@subheading Arguments:
-
-@example
-const char *token, /* IN */
-mode_t mode, /* IN */
-dev_t dev, /* IN */
-rtems_filesystem_location_info_t *pathloc /* IN/OUT */
-@end example
-
-@subheading Description:
-
-XXX
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection rmnod Handler
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-
-@subheading Description:
-
-XXX
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection chown Handler
-
-@subheading Corresponding Structure Element:
-
-chown()
-
-@subheading Arguments:
-
-@example
-rtems_filesystem_location_info_t *pathloc /* IN */
-uid_t owner /* IN */
-gid_t group /* IN */
-@end example
-
-@subheading Description:
-
-XXX
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection freenod Handler
-
-@subheading Corresponding Structure Element:
-
-freenod()
-
-@subheading Arguments:
-
-@example
-rtems_filesystem_location_info_t *pathloc /* IN */
-@end example
-
-@subheading Description:
-
-This routine is used by the generic code to allow memory to be allocated
-during the evaluate routines, and set free when the generic code is finished
-accessing a node. If the evaluate routines allocate memory to identify
-a node this routine should be utilized to free that memory.
-
-This routine is not required and may be set to NULL.
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection mount Handler
-
-@subheading Corresponding Structure Element:
-
-mount()
-
-@subheading Arguments:
-
-@example
-rtems_filesystem_mount_table_entry_t *mt_entry
-@end example
-
-@subheading Description:
-
-XXX
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection fsmount_me Handler
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-@example
-rtems_filesystem_mount_table_entry_t *mt_entry
-@end example
-
-@subheading Description:
-
-This function is provided with a filesystem to take care of the internal
-filesystem management details associated with mounting that filesystem
-under the RTEMS environment.
-
-It is not responsible for the mounting details associated the filesystem
-containing the mount point.
-
-The rtems_filesystem_mount_table_entry_t structure contains the key elements
-below:
-
-rtems_filesystem_location_info_t *mt_point_node,
-
-This structure contains information about the mount point. This
-allows us to find the ops-table and the handling functions
-associated with the filesystem containing the mount point.
-
-rtems_filesystem_location_info_t *fs_root_node,
-
-This structure contains information about the root node in the file
-system to be mounted. It allows us to find the ops-table and the
-handling functions associated with the filesystem to be mounted.
-
-rtems_filesystem_options_t options,
-
-Read only or read/write access
-
-void *fs_info,
-
-This points to an allocated block of memory the will be used to
-hold any filesystem specific information of a global nature. This
-allocated region if important because it allows us to mount the
-same filesystem type more than once under the RTEMS system.
-Each instance of the mounted filesystem has its own set of global
-management information that is separate from the global
-management information associated with the other instances of the
-mounted filesystem type.
-
-rtems_filesystem_limits_and_options_t pathconf_info,
-
-The table contains the following set of values associated with the
-mounted filesystem:
-
-@itemize @bullet
-
-@item link_max
-
-@item max_canon
-
-@item max_input
-
-@item name_max
-
-@item path_max
-
-@item pipe_buf
-
-@item posix_async_io
-
-@item posix_chown_restrictions
-
-@item posix_no_trunc
-
-@item posix_prio_io
-
-@item posix_sync_io
-
-@item posix_vdisable
-
-@end itemize
-
-These values are accessed with the pathconf() and the fpathconf ()
-functions.
-
-const char *dev
-
-The is intended to contain a string that identifies the device that contains
-the filesystem information. The filesystems that are currently implemented
-are memory based and don't require a device specification.
-
-If the mt_point_node.node_access is NULL then we are mounting the base file
-system.
-
-The routine will create a directory node for the root of the IMFS file
-system.
-
-The node will have read, write and execute permissions for owner, group and
-others.
-
-The node's name will be a null string.
-
-A filesystem information structure(fs_info) will be allocated and
-initialized for the IMFS filesystem. The fs_info pointer in the mount table
-entry will be set to point the filesystem information structure.
-
-The pathconf_info element of the mount table will be set to the appropriate
-table of path configuration constants (LIMITS_AND_OPTIONS).
-
-The fs_root_node structure will be filled in with the following:
-
-@itemize @bullet
-
-@item pointer to the allocated root node of the filesystem
-
-@item directory handlers for a directory node under the IMFS filesystem
-
-@item OPS table functions for the IMFS
-
-@end itemize
-
-A 0 will be returned to the calling routine if the process succeeded,
-otherwise a 1 will be returned.
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection unmount Handler
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-
-@subheading Description:
-
-XXX
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection fsunmount_me Handler
-
-@subheading Corresponding Structure Element:
-
-imfs_fsunmount_me()
-
-@subheading Arguments:
-
-@example
-rtems_filesystem_mount_table_entry_t *mt_entry
-@end example
-
-@subheading Description:
-
-XXX
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection utime Handler
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-
-@subheading Description:
-
-XXX
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection eval_link Handler
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-
-@subheading Description:
-
-XXX
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection symlink Handler
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-
-@subheading Description:
-
-XXX
-
-@c
-@c
-@c
-@c @page
-@subsection File Handler Table Functions
-
-Handler table functions are defined in a @code{rtems_filesystem_file_handlers_r}
-structure. It defines functions that are specific to a node type in a given
-filesystem. One table exists for each of the filesystem's node types. The
-structure definition appears below. It is followed by general developmental
-information on each of the functions associated with regular files contained
-in this function management structure.
-
-@example
-typedef struct @{
- rtems_filesystem_open_t open;
- rtems_filesystem_close_t close;
- rtems_filesystem_read_t read;
- rtems_filesystem_write_t write;
- rtems_filesystem_ioctl_t ioctl;
- rtems_filesystem_lseek_t lseek;
- rtems_filesystem_fstat_t fstat;
- rtems_filesystem_fchmod_t fchmod;
- rtems_filesystem_ftruncate_t ftruncate;
- rtems_filesystem_fpathconf_t fpathconf;
- rtems_filesystem_fsync_t fsync;
- rtems_filesystem_fdatasync_t fdatasync;
- rtems_filesystem_fcntl_t fcntl;
-@} rtems_filesystem_file_handlers_r;
-@end example
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection open Handler
-
-@subheading Corresponding Structure Element:
-
-open()
-
-@subheading Arguments:
-
-@example
-rtems_libio_t *iop,
-const char *pathname,
-unsigned32 flag,
-unsigned32 mode
-@end example
-
-@subheading Description:
-
-XXX
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection close Handler
-
-@subheading Corresponding Structure Element:
-
-close()
-
-@subheading Arguments:
-
-@example
-rtems_libio_t *iop
-@end example
-
-@subheading Description:
-
-XXX
-
-@subheading NOTES:
-
-XXX
-
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection read Handler
-
-@subheading Corresponding Structure Element:
-
-read()
-
-@subheading Arguments:
-
-@example
-rtems_libio_t *iop,
-void *buffer,
-unsigned32 count
-@end example
-
-@subheading Description:
-
-XXX
-
-@subheading NOTES:
-
-XXX
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection write Handler
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-@subheading Description:
-
-XXX
-
-@subheading NOTES:
-
-XXX
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection ioctl Handler
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-@example
-rtems_libio_t *iop,
-unsigned32 command,
-void *buffer
-@end example
-
-@subheading Description:
-
-XXX
-
-@subheading NOTES:
-
-XXX
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection lseek Handler
-
-@subheading Corresponding Structure Element:
-
-lseek()
-
-@subheading Arguments:
-
-@example
-rtems_libio_t *iop,
-off_t offset,
-int whence
-@end example
-
-@subheading Description:
-
-XXX
-
-@subheading NOTES:
-
-XXX
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection fstat Handler
-
-@subheading Corresponding Structure Element:
-
-fstat()
-
-@subheading Arguments:
-
-@example
-rtems_filesystem_location_info_t *loc,
-struct stat *buf
-@end example
-
-@subheading Description:
-
-The following information is extracted from the filesystem
-specific node and placed in the @code{stat} structure:
-
-@itemize @bullet
-
-@item st_mode
-
-@item st_nlink
-
-@item st_ino
-
-@item st_uid
-
-@item st_gid
-
-@item st_atime
-
-@item st_mtime
-
-@item st_ctime
-
-@end itemize
-
-
-@subheading NOTES:
-
-Both the @code{stat()} and @code{lstat()} services are
-implemented directly using the @code{fstat()} handler. The
-difference in behavior is determined by how the path is evaluated
-prior to this handler being called on a particular
-file entity.
-
-The @code{fstat()} system call is implemented directly
-on top of this filesystem handler.
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection fchmod Handler
-
-@subheading Corresponding Structure Element:
-
-fchmod()
-
-@subheading Arguments:
-
-@example
-rtems_libio_t *iop
-mode_t mode
-@end example
-
-@subheading Description:
-
-XXX
-
-
-@subheading NOTES:
-
-XXX
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection ftruncate Handler
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-@subheading Description:
-
-XXX
-
-@subheading NOTES:
-
-XXX
-
-@subsubsection fpathconf Handler
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-
-@subheading Description:
-
-XXX
-
-@subheading NOTES:
-
-XXX
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection fsync Handler
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-@subheading Description:
-
-XXX
-
-@subheading NOTES:
-
-XXX
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection fdatasync Handler
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-
-@subheading Description:
-
-XXX
-
-@subheading NOTES:
-
-XXX
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection fcntl Handler
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-
-@subheading Description:
-
-XXX
-
-@subheading NOTES:
-
-XXX
diff --git a/doc/filesystem/imfs.t b/doc/filesystem/imfs.t
deleted file mode 100644
index 2f7beb7722..0000000000
--- a/doc/filesystem/imfs.t
+++ /dev/null
@@ -1,2035 +0,0 @@
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter In-Memory Filesystem
-
-This chapter describes the In-Memory FileSystem (IMFS). The IMFS is a
-full featured POSIX filesystem that keeps all information in memory.
-
-@section IMFS Per Node Data Structure
-
-Each regular file, device, hard link, and directory is represented by a data
-structure called a @code{jnode}. The @code{jnode} is formally represented by the
-structure:
-
-@example
-struct IMFS_jnode_tt @{
- Chain_Node Node; /* for chaining them together */
- IMFS_jnode_t *Parent; /* Parent node */
- char name[NAME_MAX+1]; /* "basename" */
- mode_t st_mode; /* File mode */
- nlink_t st_nlink; /* Link count */
- ino_t st_ino; /* inode */
-
- uid_t st_uid; /* User ID of owner */
- gid_t st_gid; /* Group ID of owner */
- time_t st_atime; /* Time of last access */
- time_t st_mtime; /* Time of last modification */
- time_t st_ctime; /* Time of last status change */
- IMFS_jnode_types_t type; /* Type of this entry */
- IMFS_typs_union info;
-@};
-@end example
-
-The key elements of this structure are listed below together with a brief
-explanation of their role in the filesystem.
-
-@table @b
-
-@item Node
-exists to allow the entire @code{jnode} structure to be included in a chain.
-
-@item Parent
-is a pointer to another @code{jnode} structure that is the logical parent of the
-node in which it appears. This field may be NULL if the file associated with
-this node is deleted but there are open file descriptors on this file or
-there are still hard links to this node.
-
-@item name
-is the name of this node within the filesystem hierarchical tree. Example: If
-the fully qualified pathname to the @code{jnode} was @code{/a/b/c}, the
-@code{jnode} name field would contain the null terminated string @code{"c"}.
-
-@item st_mode
-is the standard Unix access permissions for the file or directory.
-
-@item st_nlink
-is the number of hard links to this file. When a @code{jnode} is first created
-its link count is set to 1. A @code{jnode} and its associated resources
-cannot be deleted unless its link count is less than 1.
-
-@item st_ino
-is a unique node identification number
-
-@item st_uid
-is the user ID of the file's owner
-
-@item st_gid
-is the group ID of the file's owner
-
-@item st_atime
-is the time of the last access to this file
-
-@item st_mtime
-is the time of the last modification of this file
-
-@item st_ctime
-is the time of the last status change to the file
-
-@item type
-is the indication of node type must be one of the following states:
-
-@itemize @bullet
-@item IMFS_DIRECTORY
-@item IMFS_MEMORY_FILE
-@item IMFS_HARD_LINK
-@item IMFS_SYM_LINK
-@item IMFS_DEVICE
-@end itemize
-
-
-@item info
-is this contains a structure that is unique to file type (See IMFS_typs_union
-in imfs.h).
-
-@itemize @bullet
-
-@item IMFS_DIRECTORY
-
-An IMFS directory contains a dynamic chain structure that
-records all files and directories that are subordinate to the directory node.
-
-@item IMFS_MEMORY_FILE
-
-Under the in memory filesystem regular files hold data. Data is dynamically
-allocated to the file in 128 byte chunks of memory. The individual chunks of
-memory are tracked by arrays of pointers that record the address of the
-allocated chunk of memory. Single, double, and triple indirection pointers
-are used to record the locations of all segments of the file. The
-memory organization of an IMFS file are discussed elsewhere in this manual.
-
-@item IMFS_HARD_LINK
-
-The IMFS filesystem supports the concept of hard links to other nodes in the
-IMFS filesystem. These hard links are actual pointers to other nodes in the
-same filesystem. This type of link cannot cross-filesystem boundaries.
-
-@item IMFS_SYM_LINK
-
-The IMFS filesystem supports the concept of symbolic links to other nodes in
-any filesystem. A symbolic link consists of a pointer to a character string
-that represents the pathname to the target node. This type of link can
-cross-filesystem boundaries. Just as with most versions of UNIX supporting
-symbolic links, a symbolic link can point to a non-existent file.
-
-@item IMFS_DEVICE
-
-All RTEMS devices now appear as files under the in memory filesystem. On
-system initialization, all devices are registered as nodes under the file
-system.
-
-@end itemize
-
-@end table
-
-@section Miscellaneous IMFS Information
-
-@section Memory associated with the IMFS
-
-A memory based filesystem draws its resources for files and directories
-from the memory resources of the system. When it is time to un-mount the
-filesystem, the memory resources that supported filesystem are set free.
-In order to free these resources, a recursive walk of the filesystems
-tree structure will be performed. As the leaf nodes under the filesystem
-are encountered their resources are freed. When directories are made empty
-by this process, their resources are freed.
-
-@subsection Node removal constraints for the IMFS
-
-The IMFS conforms to the general filesystem requirements for node
-removal. See @ref{File and Directory Removal Constraints}.
-
-@subsection IMFS General Housekeeping Notes
-
-The following is a list of odd housekeeping notes for the IMFS.
-
-@itemize @bullet
-
-@item If the global variable rtems_filesystem_current refers to the node that
-we are trying to remove, the node_access element of this structure must be
-set to NULL to invalidate it.
-
-@item If the node was of IMFS_MEMORY_FILE type, free the memory associated
-with the memory file before freeing the node. Use the IMFS_memfile_remove()
-function.
-
-@end itemize
-
-@section IMFS Operation Tables
-
-@subsection IMFS Filesystem Handler Table Functions
-
-OPS table functions are defined in a rtems_filesystem_operations_table
-structure. It defines functions that are specific to a given filesystem.
-One table exists for each filesystem that is supported in the RTEMS
-configuration. The structure definition appears below and is followed by
-general developmental information on each of the functions contained in this
-function management structure.
-
-@example
-rtems_filesystem_operations_table IMFS_ops = @{
- IMFS_eval_path,
- IMFS_evaluate_for_make,
- IMFS_link,
- IMFS_unlink,
- IMFS_node_type,
- IMFS_mknod,
- IMFS_rmnod,
- IMFS_chown,
- IMFS_freenodinfo,
- IMFS_mount,
- IMFS_initialize,
- IMFS_unmount,
- IMFS_fsunmount,
- IMFS_utime,
- IMFS_evaluate_link,
- IMFS_symlink,
- IMFS_readlink
-@};
-@end example
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection IMFS_evalpath()
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-
-@subheading File:
-
-XXX
-
-@subheading Description:
-
-XXX
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection IMFS_evalformake()
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-
-@subheading File:
-
-XXX
-
-@subheading Description:
-
-XXX
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection IMFS_link()
-
-@subheading Corresponding Structure Element:
-
-link
-
-@subheading Arguments:
-
-
-@example
-rtems_filesystem_location_info_t *to_loc, /* IN */
-rtems_filesystem_location_info_t *parent_loc, /* IN */
-const char *token /* IN */
-@end example
-
-@subheading File:
-
-imfs_link.c
-
-@subheading Description:
-
-
-This routine is used in the IMFS filesystem to create a hard-link.
-
-It will first examine the st_nlink count of the node that we are trying to.
-If the link count exceeds LINK_MAX an error will be returned.
-
-The name of the link will be normalized to remove extraneous separators from
-the end of the name.
-
-IMFS_create_node will be used to create a filesystem node that will have the
-following characteristics:
-
-@itemize @bullet
-
-@item parent that was determined in the link() function in file link.c
-
-@item Type will be set to IMFS_HARD_LINK
-
-@item name will be set to the normalized name
-
-@item mode of the hard-link will be set to the mode of the target node
-
-@end itemize
-
-If there was trouble allocating memory for the new node an error will be
-returned.
-
-The st_nlink count of the target node will be incremented to reflect the new
-link.
-
-The time fields of the link will be set to reflect the creation time of the
-hard-link.
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection IMFS_unlink()
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-
-@subheading File:
-
-XXX
-
-@subheading Description:
-
-XXX
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection IMFS_node_type()
-
-@subheading Corresponding Structure Element:
-
-IMFS_node_type()
-
-@subheading Arguments:
-
-@example
-rtems_filesystem_location_info_t *pathloc /* IN */
-@end example
-
-@subheading File:
-
-imfs_ntype.c
-
-@subheading Description:
-
-This routine will locate the IMFS_jnode_t structure that holds ownership
-information for the selected node in the filesystem.
-
-This structure is pointed to by pathloc->node_access.
-
-The IMFS_jnode_t type element indicates one of the node types listed below:
-
-@itemize @bullet
-
-@item RTEMS_FILESYSTEM_DIRECTORY
-
-@item RTEMS_FILESYSTEM_DEVICE
-
-@item RTEMS_FILESYSTEM_HARD_LINK
-
-@item RTEMS_FILESYSTEM_MEMORY_FILE
-
-@end itemize
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection IMFS_mknod()
-
-@subheading Corresponding Structure Element:
-
-IMFS_mknod()
-
-@subheading Arguments:
-
-@example
-const char *token, /* IN */
-mode_t mode, /* IN */
-dev_t dev, /* IN */
-rtems_filesystem_location_info_t *pathloc /* IN/OUT */
-@end example
-
-@subheading File:
-
-imfs_mknod.c
-
-@subheading Description:
-
-This routine will examine the mode argument to determine is we are trying to
-create a directory, regular file and a device node. The creation of other
-node types is not permitted and will cause an assert.
-
-Memory space will be allocated for a @code{jnode} and the node will be set up
-according to the nodal type that was specified. The IMFS_create_node()
-function performs the allocation and setup of the node.
-
-The only problem that is currently reported is the lack of memory when we
-attempt to allocate space for the @code{jnode} (ENOMEN).
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection IMFS_rmnod()
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-
-@subheading File:
-
-XXX
-
-@subheading Description:
-
-XXX
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection IMFS_chown()
-
-@subheading Corresponding Structure Element:
-
-IMFS_chown()
-
-@subheading Arguments:
-
-@example
-rtems_filesystem_location_info_t *pathloc /* IN */
-uid_t owner /* IN */
-gid_t group /* IN */
-@end example
-
-@subheading File:
-
-imfs_chown.c
-
-@subheading Description:
-
-This routine will locate the IMFS_jnode_t structure that holds ownership
-information for the selected node in the filesystem.
-
-This structure is pointed to by pathloc->node_access.
-
-The st_uid and st_gid fields of the node are then modified. Since this is a
-memory based filesystem, no further action is required to alter the
-ownership of the IMFS_jnode_t structure.
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection IMFS_freenod()
-
-@subheading Corresponding Structure Element:
-
-IMFS_freenod()
-
-@subheading Arguments:
-
-@example
-rtems_filesystem_location_info_t *pathloc /* IN */
-@end example
-
-@subheading File:
-
-imfs_free.c
-
-@subheading Description:
-
-This method is a private function to the IMFS. It is called by IMFS routines
-to free nodes that have been allocated. Examples of where this routine
-may be called from are unlink and rmnod.
-
-Note: This routine should not be confused with the filesystem callback
-freenod. The IMFS allocates memory until the node no longer exists.
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection IMFS_freenodinfo()
-
-@subheading Corresponding Structure Element:
-
-IMFS_freenodinfo()
-
-@subheading Arguments:
-
-@example
-rtems_filesystem_location_info_t *pathloc /* IN */
-@end example
-
-@subheading File:
-
-imfs_free.c
-
-@subheading Description:
-
-The In-Memory File System does not need to allocate memory during the
-evaluate routines. Therefore, this routine simply routines PASS.
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection IMFS_mount()
-
-@subheading Corresponding Structure Element:
-
-IMFS_mount()
-
-@subheading Arguments:
-
-@example
-rtems_filesystem_mount_table_entry_t *mt_entry
-@end example
-
-@subheading File:
-
-imfs_mount.c
-
-@subheading Description:
-
-This routine provides the filesystem specific processing required to mount a
-filesystem for the system that contains the mount point. It will determine
-if the point that we are trying to mount onto is a node of IMFS_DIRECTORY
-type.
-
-If it is the node's info element is altered so that the info.directory.mt_fs
-element points to the mount table chain entry that is associated with the
-mounted filesystem at this point. The info.directory.mt_fs element can be
-examined to determine if a filesystem is mounted at a directory. If it is
-NULL, the directory does not serve as a mount point. A non-NULL entry
-indicates that the directory does serve as a mount point and the value of
-info.directory.mt_fs can be used to locate the mount table chain entry that
-describes the filesystem mounted at this point.
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection IMFS_fsmount_me()
-
-@subheading Corresponding Structure Element:
-
-IMFS_initialize()
-
-@subheading Arguments:
-
-@example
-rtems_filesystem_mount_table_entry_t *mt_entry
-@end example
-
-@subheading File:
-
-imfs_init.c
-
-@subheading Description:
-
-This function is provided with a filesystem to take care of the internal
-filesystem management details associated with mounting that filesystem
-under the RTEMS environment.
-
-It is not responsible for the mounting details associated the filesystem
-containing the mount point.
-
-The rtems_filesystem_mount_table_entry_t structure contains the key elements
-below:
-
-rtems_filesystem_location_info_t *mt_point_node,
-
-This structure contains information about the mount point. This
-allows us to find the ops-table and the handling functions
-associated with the filesystem containing the mount point.
-
-rtems_filesystem_location_info_t *fs_root_node,
-
-This structure contains information about the root node in the file
-system to be mounted. It allows us to find the ops-table and the
-handling functions associated with the filesystem to be mounted.
-
-rtems_filesystem_options_t options,
-
-Read only or read/write access
-
-void *fs_info,
-
-This points to an allocated block of memory the will be used to
-hold any filesystem specific information of a global nature. This
-allocated region if important because it allows us to mount the
-same filesystem type more than once under the RTEMS system.
-Each instance of the mounted filesystem has its own set of global
-management information that is separate from the global
-management information associated with the other instances of the
-mounted filesystem type.
-
-rtems_filesystem_limits_and_options_t pathconf_info,
-
-The table contains the following set of values associated with the
-mounted filesystem:
-
-@itemize @bullet
-
-@item link_max
-
-@item max_canon
-
-@item max_input
-
-@item name_max
-
-@item path_max
-
-@item pipe_buf
-
-@item posix_async_io
-
-@item posix_chown_restrictions
-
-@item posix_no_trunc
-
-@item posix_prio_io
-
-@item posix_sync_io
-
-@item posix_vdisable
-
-@end itemize
-
-These values are accessed with the pathconf() and the fpathconf ()
-functions.
-
-const char *dev
-
-The is intended to contain a string that identifies the device that contains
-the filesystem information. The filesystems that are currently implemented
-are memory based and don't require a device specification.
-
-If the mt_point_node.node_access is NULL then we are mounting the base file
-system.
-
-The routine will create a directory node for the root of the IMFS file
-system.
-
-The node will have read, write and execute permissions for owner, group and
-others.
-
-The node's name will be a null string.
-
-A filesystem information structure(fs_info) will be allocated and
-initialized for the IMFS filesystem. The fs_info pointer in the mount table
-entry will be set to point the filesystem information structure.
-
-The pathconf_info element of the mount table will be set to the appropriate
-table of path configuration constants ( IMFS_LIMITS_AND_OPTIONS ).
-
-The fs_root_node structure will be filled in with the following:
-
-@itemize @bullet
-
-@item pointer to the allocated root node of the filesystem
-
-@item directory handlers for a directory node under the IMFS filesystem
-
-@item OPS table functions for the IMFS
-
-@end itemize
-
-A 0 will be returned to the calling routine if the process succeeded,
-otherwise a 1 will be returned.
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection IMFS_unmount()
-
-@subheading Corresponding Structure Element:
-
-IMFS_unmount()
-
-@subheading Arguments:
-
-@example
-rtems_filesystem_mount_table_entry_t *mt_entry
-@end example
-
-@subheading File:
-
-imfs_unmount.c
-
-@subheading Description:
-
-This routine allows the IMFS to unmount a filesystem that has been
-mounted onto a IMFS directory.
-
-The mount entry mount point node access is verified to be a mounted
-directory. It's mt_fs is set to NULL. This identifies to future
-calles into the IMFS that this directory node is no longer a mount
-point. Additionally, it will allow any directories that were hidden
-by the mounted system to again become visible.
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection IMFS_fsunmount()
-
-@subheading Corresponding Structure Element:
-
-imfs_fsunmount()
-
-@subheading Arguments:
-
-@example
-rtems_filesystem_mount_table_entry_t *mt_entry
-@end example
-
-@subheading File:
-
-imfs_init.c
-
-@subheading Description:
-
-This method unmounts this instance of the IMFS file system. It is the
-counterpart to the IMFS_initialize routine. It is called by the generic
-code under the fsunmount_me callback.
-
-All method loops finding the first encountered node with no children and
-removing the node from the tree, thus returning allocated resources. This
-is done until all allocated nodes are returned.
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection IMFS_utime()
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-
-@subheading File:
-
-XXX
-
-@subheading Description:
-
-XXX
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection IMFS_eval_link()
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-
-@subheading File:
-
-XXX
-
-@subheading Description:
-
-XXX
-
-@c
-@c
-@c
-@c @page
-@subsection Regular File Handler Table Functions
-
-Handler table functions are defined in a rtems_filesystem_file_handlers_r
-structure. It defines functions that are specific to a node type in a given
-filesystem. One table exists for each of the filesystem's node types. The
-structure definition appears below. It is followed by general developmental
-information on each of the functions associated with regular files contained
-in this function management structure.
-
-@example
-rtems_filesystem_file_handlers_r IMFS_memfile_handlers = @{
- memfile_open,
- memfile_close,
- memfile_read,
- memfile_write,
- memfile_ioctl,
- memfile_lseek,
- IMFS_stat,
- IMFS_fchmod,
- memfile_ftruncate,
- NULL, /* fpathconf */
- NULL, /* fsync */
- IMFS_fdatasync,
- IMFS_fcntl
-@};
-@end example
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection memfile_open() for Regular Files
-
-@subheading Corresponding Structure Element:
-
-memfile_open()
-
-@subheading Arguments:
-
-@example
-rtems_libio_t *iop,
-const char *pathname,
-unsigned32 flag,
-unsigned32 mode
-@end example
-
-@subheading File:
-
-memfile.c
-
-@subheading Description:
-
-Currently this function is a shell. No meaningful processing is performed and
-a success code is always returned.
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection memfile_close() for Regular Files
-
-@subheading Corresponding Structure Element:
-
-memfile_close()
-
-@subheading Arguments:
-
-@example
-rtems_libio_t *iop
-@end example
-
-@subheading File:
-
-memfile.c
-
-@subheading Description:
-
-This routine is a dummy for regular files under the base filesystem. It
-performs a capture of the IMFS_jnode_t pointer from the file control block
-and then immediately returns a success status.
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection memfile_read() for Regular Files
-
-@subheading Corresponding Structure Element:
-
-memfile_read()
-
-@subheading Arguments:
-
-@example
-rtems_libio_t *iop,
-void *buffer,
-unsigned32 count
-@end example
-
-@subheading File:
-
-memfile.c
-
-@subheading Description:
-
-This routine will determine the @code{jnode} that is associated with this file.
-
-It will then call IMFS_memfile_read() with the @code{jnode}, file position index,
-buffer and transfer count as arguments.
-
-IMFS_memfile_read() will do the following:
-
-@itemize @bullet
-
-@item Verify that the @code{jnode} is associated with a memory file
-
-@item Verify that the destination of the read is valid
-
-@item Adjust the length of the read if it is too long
-
-@item Acquire data from the memory blocks associated with the file
-
-@item Update the access time for the data in the file
-
-@end itemize
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection memfile_write() for Regular Files
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-@subheading File:
-
-XXX
-
-@subheading Description:
-
-XXX
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection memfile_ioctl() for Regular Files
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-@example
-rtems_libio_t *iop,
-unsigned32 command,
-void *buffer
-@end example
-
-@subheading File:
-
-memfile.c
-
-@subheading Description:
-
-The current code is a placeholder for future development. The routine returns
-a successful completion status.
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection memfile_lseek() for Regular Files
-
-@subheading Corresponding Structure Element:
-
-Memfile_lseek()
-
-@subheading Arguments:
-
-@example
-rtems_libio_t *iop,
-off_t offset,
-int whence
-@end example
-
-@subheading File:
-
-memfile.c
-
-@subheading Description:
-
-This routine make sure that the memory based file is sufficiently large to
-allow for the new file position index.
-
-The IMFS_memfile_extend() function is used to evaluate the current size of
-the memory file and allocate additional memory blocks if required by the new
-file position index. A success code is always returned from this routine.
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection IMFS_stat() for Regular Files
-
-@subheading Corresponding Structure Element:
-
-IMFS_stat()
-
-@subheading Arguments:
-
-@example
-rtems_filesystem_location_info_t *loc,
-struct stat *buf
-@end example
-
-@subheading File:
-
-imfs_stat.c
-
-@subheading Description:
-
-This routine actually performs status processing for both devices and regular
-files.
-
-The IMFS_jnode_t structure is referenced to determine the type of node under
-the filesystem.
-
-If the node is associated with a device, node information is extracted and
-transformed to set the st_dev element of the stat structure.
-
-If the node is a regular file, the size of the regular file is extracted from
-the node.
-
-This routine rejects other node types.
-
-The following information is extracted from the node and placed in the stat
-structure:
-
-@itemize @bullet
-
-@item st_mode
-
-@item st_nlink
-
-@item st_ino
-
-@item st_uid
-
-@item st_gid
-
-@item st_atime
-
-@item st_mtime
-
-@item st_ctime
-
-@end itemize
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection IMFS_fchmod() for Regular Files
-
-@subheading Corresponding Structure Element:
-
-IMFS_fchmod()
-
-@subheading Arguments:
-
-@example
-rtems_libio_t *iop
-mode_t mode
-@end example
-
-@subheading File:
-
-imfs_fchmod.c
-
-@subheading Description:
-
-This routine will obtain the pointer to the IMFS_jnode_t structure from the
-information currently in the file control block.
-
-Based on configuration the routine will acquire the user ID from a call to
-getuid() or from the IMFS_jnode_t structure.
-
-It then checks to see if we have the ownership rights to alter the mode of
-the file. If the caller does not, an error code is returned.
-
-An additional test is performed to verify that the caller is not trying to
-alter the nature of the node. If the caller is attempting to alter more than
-the permissions associated with user group and other, an error is returned.
-
-If all the preconditions are met, the user, group and other fields are set
-based on the mode calling parameter.
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection memfile_ftruncate() for Regular Files
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-@subheading File:
-
-XXX
-
-@subheading Description:
-
-XXX
-
-
-@subsubsection No pathconf() for Regular Files
-
-@subheading Corresponding Structure Element:
-
-NULL
-
-@subheading Arguments:
-
-Not Implemented
-
-@subheading File:
-
-Not Implemented
-
-@subheading Description:
-
-Not Implemented
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection No fsync() for Regular Files
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-@subheading File:
-
-XXX
-
-@subheading Description:
-
-XXX
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection IMFS_fdatasync() for Regular Files
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-@subheading File:
-
-XXX
-
-@subheading Description:
-
-XXX
-
-@c
-@c
-@c
-@c @page
-@subsection Directory Handler Table Functions
-
-Handler table functions are defined in a rtems_filesystem_file_handlers_r
-structure. It defines functions that are specific to a node type in a given
-filesystem. One table exists for each of the filesystem's node types. The
-structure definition appears below. It is followed by general developmental
-information on each of the functions associated with directories contained in
-this function management structure.
-
-@example
-rtems_filesystem_file_handlers_r IMFS_directory_handlers = @{
- IMFS_dir_open,
- IMFS_dir_close,
- IMFS_dir_read,
- NULL, /* write */
- NULL, /* ioctl */
- IMFS_dir_lseek,
- IMFS_dir_fstat,
- IMFS_fchmod,
- NULL, /* ftruncate */
- NULL, /* fpathconf */
- NULL, /* fsync */
- IMFS_fdatasync,
- IMFS_fcntl
-@};
-@end example
-
-
-@c
-@c
-@c
-@c @page
-@subsubsection IMFS_dir_open() for Directories
-
-@subheading Corresponding Structure Element:
-
-imfs_dir_open()
-
-@subheading Arguments:
-
-@example
-rtems_libio_t *iop,
-const char *pathname,
-unsigned32 flag,
-unsigned32 mode
-@end example
-
-@subheading File:
-
-imfs_directory.c
-
-@subheading Description:
-
-This routine will look into the file control block to find the @code{jnode} that
-is associated with the directory.
-
-The routine will verify that the node is a directory. If its not a directory
-an error code will be returned.
-
-If it is a directory, the offset in the file control block will be set to 0.
-This allows us to start reading at the beginning of the directory.
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection IMFS_dir_close() for Directories
-
-@subheading Corresponding Structure Element:
-
-imfs_dir_close()
-
-@subheading Arguments:
-
-@example
-rtems_libio_t *iop
-@end example
-
-@subheading File:
-
-imfs_directory.c
-
-@subheading Description:
-
-This routine is a dummy for directories under the base filesystem. It
-immediately returns a success status.
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection IMFS_dir_read() for Directories
-
-@subheading Corresponding Structure Element:
-
-imfs_dir_read
-
-@subheading Arguments:
-
-@example
-rtems_libio_t *iop,
-void *buffer,
-unsigned32 count
-@end example
-
-@subheading File:
-
-imfs_directory.c
-
-@subheading Description:
-
-This routine will read a fixed number of directory entries from the current
-directory offset. The number of directory bytes read will be returned from
-this routine.
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection No write() for Directories
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-
-@subheading File:
-
-XXX
-
-@subheading Description:
-
-XXX
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection No ioctl() for Directories
-
-@subheading Corresponding Structure Element:
-
-ioctl
-
-@subheading Arguments:
-
-
-@subheading File:
-
-Not supported
-
-@subheading Description:
-
-XXX
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection IMFS_dir_lseek() for Directories
-
-@subheading Corresponding Structure Element:
-
-imfs_dir_lseek()
-
-@subheading Arguments:
-
-@example
-rtems_libio_t *iop,
-off_t offset,
-int whence
-@end example
-
-@subheading File:
-
-imfs_directory.c
-
-@subheading Description:
-
-This routine alters the offset in the file control block.
-
-No test is performed on the number of children under the current open
-directory. The imfs_dir_read() function protects against reads beyond the
-current size to the directory by returning a 0 bytes transfered to the
-calling programs whenever the file position index exceeds the last entry in
-the open directory.
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection IMFS_dir_fstat() for Directories
-
-@subheading Corresponding Structure Element:
-
-imfs_dir_fstat()
-
-@subheading Arguments:
-
-
-@example
-rtems_filesystem_location_info_t *loc,
-struct stat *buf
-@end example
-
-@subheading File:
-
-imfs_directory.c
-
-@subheading Description:
-
-The node access information in the rtems_filesystem_location_info_t structure
-is used to locate the appropriate IMFS_jnode_t structure. The following
-information is taken from the IMFS_jnode_t structure and placed in the stat
-structure:
-
-@itemize @bullet
-@item st_ino
-@item st_mode
-@item st_nlink
-@item st_uid
-@item st_gid
-@item st_atime
-@item st_mtime
-@item st_ctime
-@end itemize
-
-The st_size field is obtained by running through the chain of directory
-entries and summing the sizes of the dirent structures associated with each
-of the children of the directory.
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection IMFS_fchmod() for Directories
-
-@subheading Corresponding Structure Element:
-
-IMFS_fchmod()
-
-@subheading Arguments:
-
-@example
-rtems_libio_t *iop
-mode_t mode
-@end example
-
-@subheading File:
-
-imfs_fchmod.c
-
-@subheading Description:
-
-This routine will obtain the pointer to the IMFS_jnode_t structure from the
-information currently in the file control block.
-
-Based on configuration the routine will acquire the user ID from a call to
-getuid() or from the IMFS_jnode_t structure.
-
-It then checks to see if we have the ownership rights to alter the mode of
-the file. If the caller does not, an error code is returned.
-
-An additional test is performed to verify that the caller is not trying to
-alter the nature of the node. If the caller is attempting to alter more than
-the permissions associated with user group and other, an error is returned.
-
-If all the preconditions are met, the user, group and other fields are set
-based on the mode calling parameter.
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection No ftruncate() for Directories
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-
-@subheading File:
-
-XXX
-
-@subheading Description:
-
-XXX
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection No fpathconf() for Directories
-
-@subheading Corresponding Structure Element:
-
-fpathconf
-
-@subheading Arguments:
-
-Not Implemented
-
-@subheading File:
-
-Not Implemented
-
-@subheading Description:
-
-Not Implemented
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection No fsync() for Directories
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-@subheading File:
-
-XXX
-
-@subheading Description:
-
-XXX
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection IMFS_fdatasync() for Directories
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-
-@subheading File:
-
-XXX
-
-@subheading Description:
-
-XXX
-
-@c
-@c
-@c
-@c @page
-@subsection Device Handler Table Functions
-
-Handler table functions are defined in a rtems_filesystem_file_handlers_r
-structure. It defines functions that are specific to a node type in a given
-filesystem. One table exists for each of the filesystem's node types. The
-structure definition appears below. It is followed by general developmental
-information on each of the functions associated with devices contained in
-this function management structure.
-
-@example
-typedef struct @{
- rtems_filesystem_open_t open;
- rtems_filesystem_close_t close;
- rtems_filesystem_read_t read;
- rtems_filesystem_write_t write;
- rtems_filesystem_ioctl_t ioctl;
- rtems_filesystem_lseek_t lseek;
- rtems_filesystem_fstat_t fstat;
- rtems_filesystem_fchmod_t fchmod;
- rtems_filesystem_ftruncate_t ftruncate;
- rtems_filesystem_fpathconf_t fpathconf;
- rtems_filesystem_fsync_t fsync;
- rtems_filesystem_fdatasync_t fdatasync;
-@} rtems_filesystem_file_handlers_r;
-@end example
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection device_open() for Devices
-
-@subheading Corresponding Structure Element:
-
-device_open()
-
-@subheading Arguments:
-
-@example
-rtems_libio_t *iop,
-const char *pathname,
-unsigned32 flag,
-unsigned32 mode
-@end example
-
-@subheading File:
-
-deviceio.c
-
-@subheading Description:
-
-This routine will use the file control block to locate the node structure for
-the device.
-
-It will extract the major and minor device numbers from the @code{jnode}.
-
-The major and minor device numbers will be used to make a rtems_io_open()
-function call to open the device driver. An argument list is sent to the
-driver that contains the file control block, flags and mode information.
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection device_close() for Devices
-
-@subheading Corresponding Structure Element:
-
-device_close()
-
-@subheading Arguments:
-
-@example
-rtems_libio_t *iop
-@end example
-
-@subheading File:
-
-deviceio.c
-
-@subheading Description:
-
-This routine extracts the major and minor device driver numbers from the
-IMFS_jnode_t that is referenced in the file control block.
-
-It also forms an argument list that contains the file control block.
-
-A rtems_io_close() function call is made to close the device specified by the
-major and minor device numbers.
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection device_read() for Devices
-
-@subheading Corresponding Structure Element:
-
-device_read()
-
-@subheading Arguments:
-
-@example
-rtems_libio_t *iop,
-void *buffer,
-unsigned32 count
-@end example
-
-@subheading File:
-
-deviceio.c
-
-@subheading Description:
-
-This routine will extract the major and minor numbers for the device from the -
-jnode- associated with the file descriptor.
-
-A rtems_io_read() call will be made to the device driver associated with the file
-descriptor. The major and minor device number will be sent as arguments as well
-as an argument list consisting of:
-
-@itemize @bullet
-@item file control block
-
-@item file position index
-
-@item buffer pointer where the data read is to be placed
-
-@item count indicating the number of bytes that the program wishes to read
-from the device
-
-@item flags from the file control block
-
-@end itemize
-
-On return from the rtems_io_read() the number of bytes that were actually
-read will be returned to the calling program.
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection device_write() for Devices
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-@subheading File:
-
-XXX
-
-@subheading Description:
-
-XXX
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection device_ioctl() for Devices
-
-@subheading Corresponding Structure Element:
-
-ioctl
-
-@subheading Arguments:
-
-@example
-rtems_libio_t *iop,
-unsigned32 command,
-void *buffer
-@end example
-
-@subheading File:
-
-deviceio.c
-
-@subheading Description:
-
-This handler will obtain status information about a device.
-
-The form of status is device dependent.
-
-The rtems_io_control() function uses the major and minor number of the device
-to obtain the status information.
-
-rtems_io_control() requires an rtems_libio_ioctl_args_t argument list which
-contains the file control block, device specific command and a buffer pointer
-to return the device status information.
-
-The device specific command should indicate the nature of the information
-that is desired from the device.
-
-After the rtems_io_control() is processed, the buffer should contain the
-requested device information.
-
-If the device information is not obtained properly a -1 will be returned to
-the calling program, otherwise the ioctl_return value is returned.
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection device_lseek() for Devices
-
-@subheading Corresponding Structure Element:
-
-device_lseek()
-
-@subheading Arguments:
-
-@example
-rtems_libio_t *iop,
-off_t offset,
-int whence
-@end example
-
-@subheading File:
-
-deviceio.c
-
-@subheading Description:
-
-At the present time this is a placeholder function. It always returns a
-successful status.
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection IMFS_stat() for Devices
-
-@subheading Corresponding Structure Element:
-
-IMFS_stat()
-
-@subheading Arguments:
-
-@example
-rtems_filesystem_location_info_t *loc,
-struct stat *buf
-@end example
-
-@subheading File:
-
-imfs_stat.c
-
-@subheading Description:
-
-This routine actually performs status processing for both devices and regular files.
-
-The IMFS_jnode_t structure is referenced to determine the type of node under the
-filesystem.
-
-If the node is associated with a device, node information is extracted and
-transformed to set the st_dev element of the stat structure.
-
-If the node is a regular file, the size of the regular file is extracted from the node.
-
-This routine rejects other node types.
-
-The following information is extracted from the node and placed in the stat
-structure:
-
-@itemize @bullet
-
-@item st_mode
-
-@item st_nlink
-
-@item st_ino
-
-@item st_uid
-
-@item st_gid
-
-@item st_atime
-
-@item st_mtime
-
-@item st_ctime
-
-@end itemize
-
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection IMFS_fchmod() for Devices
-
-@subheading Corresponding Structure Element:
-
-IMFS_fchmod()
-
-@subheading Arguments:
-
-@example
-rtems_libio_t *iop
-mode_t mode
-@end example
-
-@subheading File:
-
-imfs_fchmod.c
-
-@subheading Description:
-
-This routine will obtain the pointer to the IMFS_jnode_t structure from the
-information currently in the file control block.
-
-Based on configuration the routine will acquire the user ID from a call to
-getuid() or from the IMFS_jnode_t structure.
-
-It then checks to see if we have the ownership rights to alter the mode of
-the file. If the caller does not, an error code is returned.
-
-An additional test is performed to verify that the caller is not trying to
-alter the nature of the node. If the caller is attempting to alter more than
-the permissions associated with user group and other, an error is returned.
-
-If all the preconditions are met, the user, group and other fields are set
-based on the mode calling parameter.
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection No ftruncate() for Devices
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-@subheading File:
-
-XXX
-
-@subheading Description:
-
-XXX
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection No fpathconf() for Devices
-
-@subheading Corresponding Structure Element:
-
-fpathconf
-
-@subheading Arguments:
-
-Not Implemented
-
-@subheading File:
-
-Not Implemented
-
-@subheading Description:
-
-Not Implemented
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection No fsync() for Devices
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-
-@subheading File:
-
-XXX
-
-@subheading Description:
-
-XXX
-
-
-@c
-@c
-@c
-@c @page
-
-@subsubsection No fdatasync() for Devices
-
-Not Implemented
-
-@subheading Corresponding Structure Element:
-
-XXX
-
-@subheading Arguments:
-
-XXX
-
-@subheading File:
-
-XXX
-
-@subheading Description:
-
-XXX
-
diff --git a/doc/filesystem/init.t b/doc/filesystem/init.t
deleted file mode 100644
index 02bf8bb0d1..0000000000
--- a/doc/filesystem/init.t
+++ /dev/null
@@ -1,110 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter System Initialization
-
-After the RTEMS initialization is performed, the application's
-initialization will be performed. Part of initialization is a call to
-rtems_filesystem_initialize(). This routine will mount the `In Memory File
-System' as the base filesystem. Mounting the base filesystem consists
-of the following:
-
-@itemize @bullet
-
-@item Initialization of mount table chain control structure
-
-@item Allocation of a @code{jnode} structure that will server as the root node
-of the `In Memory Filesystem'
-
-@item Initialization of the allocated @code{jnode} with the appropriate OPS,
-directory handlers and pathconf limits and options.
-
-@item Allocation of a memory region for filesystem specific global
-management variables
-
-@item Creation of first mount table entry for the base filesystem
-
-@item Initialization of the first mount table chain entry to indicate that
-the mount point is NULL and the mounted filesystem is the base file
-system
-
-@end itemize
-
-
-After the base filesystem has been mounted, the following operations are
-performed under its directory structure:
-
-@itemize @bullet
-
-@item Creation of the /dev directory
-
-@item Registration of devices under /dev directory
-
-@end itemize
-
-@section Base Filesystem
-
-RTEMS initially mounts a RAM based file system known as the base file system.
-The root directory of this file system tree serves as the logical root of the
-directory hierarchy (Figure 3). Under the root directory a `/dev' directory
-is created under which all I/O device directories and files are registered as
-part of the file system hierarchy.
-
-@example
-Figure of the tree structure goes here.
-@end example
-
-A RAM based file system draws its management resources from memory. File and
-directory nodes are simply allocated blocks of memory. Data associated with
-regular files is stored in collections of memory blocks. When the system is
-turned off or restarted all memory-based components of the file system are
-lost.
-
-The base file system serves as a starting point for the mounting of file
-systems that are resident on semi-permanent storage media. Examples of such
-media include non- volatile memory, flash memory and IDE hard disk drives
-(Figure 3). File systems of other types will be mounted onto mount points
-within the base file system or other file systems that are subordinate to the
-base file system. The framework set up under the base file system will allow
-for these new file system types and the unique data and functionality that is
-required to manage the future file systems.
-
-@subsection Base Filesystem Mounting
-
-At present, the first file system to be mounted is the `In Memory File
-System'. It is mounted using a standard MOUNT() command in which the mount
-point is NULL. This flags the mount as the first file system to be
-registered under the operating system and appropriate initialization of file
-system management information is performed (See figures 4 and 5). If a
-different file system type is desired as the base file system, alterations
-must be made to base_fs.c. This routine handles the mount of the base file
-system.
-
-
-@example
-Figure of the mount table chain goes here.
-@end example
-
-
-Once the root of the base file system has been established and it has been
-recorded as the mount point of the base file system, devices are integrated
-into the base file system. For every device that is configured into the
-system (See ioman.c) a device registration process is performed. Device
-registration produces a unique dev_t handle that consists of a major and
-minor device number. In addition, the configuration information for each
-device contains a text string that represents the fully qualified pathname to
-that device's place in the base file system's hierarchy. A file system node
-is created for the device along the specified registration path.
-
-
-@example
-Figure of the Mount Table Processing goes here.
-@end example
-
-
-Note: Other file systems can be mounted but they are mounted onto points
-(directory mount points) in the base file system.
-
-
diff --git a/doc/filesystem/miniimfs.t b/doc/filesystem/miniimfs.t
deleted file mode 100644
index a4f03bb351..0000000000
--- a/doc/filesystem/miniimfs.t
+++ /dev/null
@@ -1,13 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Miniature In-Memory Filesystem
-
-This chapter describes the Miniature In-Memory FileSystem (miniIMFS).
-The miniIMFS is a reduced feature version of the IMFS designed to
-provide minimal functionality and have a low memory footprint.
-
-This chapter should be written after the IMFS chapter is completed
-and describe the implementation of the mini-IMFS.
diff --git a/doc/filesystem/mounting.t b/doc/filesystem/mounting.t
deleted file mode 100644
index 5389f45e00..0000000000
--- a/doc/filesystem/mounting.t
+++ /dev/null
@@ -1,168 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Mounting and Unmounting Filesystems
-
-@section Mount Points
-
-The following is the list of the characteristics of a mount point:
-
-@itemize @bullet
-
-@item The mount point must be a directory. It may have files and other
-directories under it. These files and directories will be hidden when the
-filesystem is mounted.
-
-@item The task must have read/write/execute permissions to the mount point
-or the mount attempt will be rejected.
-
-@item Only one filesystem can be mounted to a single mount point.
-
-@item The Root of the mountable filesystem will be referenced by the name
-of the mount point after the mount is complete.
-
-@end itemize
-
-@section Mount Table Chain
-
-The mount table chain is a dynamic list of structures that describe
-mounted filesystems a specific points in the filesystem hierarchy. It is
-initialized to an empty state during the base filesystem initialization.
-The mount operation will add entries to the mount table chain. The
-un-mount operation will remove entries from the mount table chain.
-
-Each entry in the mount table chain is of the following type:
-
-@example
-struct rtems_filesystem_mount_table_entry_tt
-@{
- Chain_Node Node;
- rtems_filesystem_location_info_t mt_point_node;
- rtems_filesystem_location_info_t mt_fs_root;
- int options;
- void *fs_info;
-
- rtems_filesystem_limits_and_options_t pathconf_limits_and_options;
-
- /*
- * When someone adds a mounted filesystem on a real device,
- * this will need to be used.
- *
- * The best option long term for this is probably an
- * open file descriptor.
- */
- char *dev;
-@};
-@end example
-
-@table @b
-@item Node
-The Node is used to produce a linked list of mount table entry nodes.
-
-@item mt_point_node
-The mt_point_node contains all information necessary to access the
-directory where a filesystem is mounted onto. This element may contain
-memory that is allocated during a path evaluation of the filesystem
-containing the mountpoint directory. The generic code allows this
-memory to be returned by unmount when the filesystem identified by
-mt_fs_root is unmounted.
-
-@item mt_fs_root
-The mt_fs_root contains all information necessary to identify the root
-of the mounted filesystem. The user is never allowed access to this
-node by the generic code, but it is used to identify to the mounted
-filesystem where to start evaluation of pathnames at.
-
-@item options
-XXX
-
-@item fs_info
-The fs_info element is a location available for use by the mounted file
-system to identify unique things applicable to this instance of the file
-system. For example the IMFS uses this space to provide node
-identification that is unique for each instance (mounting) of the filesystem.
-
-@item pathconf_limits_and_options
-XXX
-
-@item dev
-This character string represents the device where the filesystem will reside.
-
-@end table
-
-@section Adding entries to the chain during mount
-
-When a filesystem is mounted, its presence and location in the file
-system hierarchy is recorded in a dynamic list structure known as a chain.
-A unique rtems_filesystem_mount_table_entry_tt structure is logged for
-each filesystem that is mounted. This includes the base filesystem.
-
-@section Removing entries from the chain during unmount
-
-When a filesystem is dismounted its entry in the mount table chain is
-extracted and the memory for this entry is freed.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/doc/filesystem/patheval.t b/doc/filesystem/patheval.t
deleted file mode 100644
index 37d1a9a5e6..0000000000
--- a/doc/filesystem/patheval.t
+++ /dev/null
@@ -1,106 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Pathname Evaluation
-
-This chapter describes the pathname evaluation process for the
-RTEMS Filesystem Infrastructure.
-
-@example
-XXX Include graphic of the path evaluation process
-@end example
-
-@section Pathname Evaluation Handlers
-
-There are two pathname evaluation routines. The handler patheval()
-is called to find, verify privlages on and return information on a node
-that exists. The handler evalformake() is called to find, verify
-permissions, and return information on a node that is to become a parent.
-Additionally, evalformake() returns a pointer to the start of the name of
-the new node to be created.
-
-Pathname evaluation is specific to a filesystem.
-Each filesystem is required to provide both a patheval() and an evalformake()
-routine. Both of these routines gets a name to evaluate and a node indicating
-where to start the evaluation.
-
-@section Crossing a Mount Point During Path Evaluation
-
-If the filesystem supports the mount command, the evaluate routines
-must handle crossing the mountpoint. The evaluate routine should evaluate
-the name upto the first directory node where the new filesystem is mounted.
-The filesystem may process terminator characters prior to calling the
-evaluate routine for the new filesystem. A pointer to the portion of the
-name which has not been evaluated along with the root node of the new
-file system ( gotten from the mount table entry ) is passed to the correct
-mounted filesystem evaluate routine.
-
-
-@section The rtems_filesystem_location_info_t Structure
-
-The @code{rtems_filesystem_location_info_t} structure contains all information
-necessary for identification of a node.
-
-The generic rtems filesystem code defines two global
-rtems_filesystem_location_info_t structures, the
-@code{rtems_filesystem_root} and the @code{rtems_filesystem_current}.
-Both are initially defined to be the root node of the base filesystem.
-Once the chdir command is correctly used the @code{rtems_filesystem_current}
-is set to the location specified by the command.
-
-The filesystem generic code peeks at the first character in the name to be
-evaluated. If this character is a valid seperator, the
-@code{rtems_filesystem_root} is used as the node to start the evaluation
-with. Otherwise, the @code{rtems_filesystem_current} node is used as the
-node to start evaluating with. Therefore, a valid
-rtems_filesystem_location_info_t is given to the evaluate routine to start
-evaluation with. The evaluate routines are then responsible for making
-any changes necessary to this structure to correspond to the name being
-parsed.
-
-@example
-struct rtems_filesystem_location_info_tt @{
- void *node_access;
- rtems_filesystem_file_handlers_r *handlers;
- rtems_filesystem_operations_table *ops;
- rtems_filesystem_mount_table_entry_t *mt_entry;
-@};
-@end example
-
-@table @b
-
-@item node_access
-This element is filesystem specific. A filesystem can define and store
-any information necessary to identify a node at this location. This element
-is normally filled in by the filesystem's evaluate routine. For the
-filesystem's root node, the filesystem's initilization routine should
-fill this in, and it should remain valid until the instance of the
-filesystem is unmounted.
-
-@item handlers
-This element is defined as a set of routines that may change within a
-given filesystem based upon node type. For example a directory and a
-memory file may have to completely different read routines. This element
-is set to an initialization state defined by the mount table, and may
-be set to the desired state by the evaluation routines.
-
-@item ops
-This element is defined as a set of routines that remain static for the
-filesystem. This element identifies entry points into the filesystem
-to the generic code.
-
-@item mt_entry
-This element identifies the mount table entry for this instance of the
-filesystem.
-
-@end table
-
-
-
-
-
-
-
-
diff --git a/doc/filesystem/preface.texi b/doc/filesystem/preface.texi
deleted file mode 100644
index 301f8499f6..0000000000
--- a/doc/filesystem/preface.texi
+++ /dev/null
@@ -1,78 +0,0 @@
-@c
-@c COPYRIGHT (c) 1989-2011.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@node Preface, , Top, Top
-@unnumbered Preface
-
-This document describes the implementation of the RTEMS filesystem
-infrastructure. This infrastructure supports the following
-capabilities:
-
-@itemize @bullet
-
-@item Mountable file systems
-
-@item Hierarchical file system directory structure
-
-@item POSIX compliant set of routines for the manipulation of files and directories
-
-@item Individual file and directory support for the following:
-
-@enumerate
-
-@item Permissions for read, write and execute
-
-@item User ID
-
-@item Group ID
-
-@item Access time
-
-@item Modification time
-
-@item Creation time
-
-@end enumerate
-
-@item Hard links to files and directories
-
-@item Symbolic links to files and directories
-
-@end itemize
-
-This has been implemented to provide the framework for a UNIX-like
-file system support. POSIX file and directory functions have been
-implemented that allow a standard method of accessing file, device and
-directory information within file systems. The file system concept that
-has been implemented allows for expansion and adaptation of the file
-system to a variety of existing and future data storage devices. To this
-end, file system mount and unmount capabilities have been included in this
-RTEMS framework.
-
-This framework slightly alters the manner in which devices are handled
-under RTEMS from that of public release 4.0.0 and earlier. Devices that
-are defined under a given RTEMS configuration will now be registered as
-files in a mounted file system. Access to these device drivers and their
-associated devices may now be performed through the traditional file system
-open(), read(), write(), lseek(), fstat() and ioctl() functions in addition
-to the interface provided by the IO Manager in the RTEMS Classic API.
-
-An In-Memory File System (IMFS) is included which provides full POSIX
-filesystem functionality yet is RAM based. The IMFS maintains a
-node structure for each file, device, and directory in each mounted
-instantiation of its file system. The node structure is used to
-manage ownership, access rights, access time, modification time,
-and creation time. A union of structures within the IMFS nodal
-structure provide for manipulation of file data, device selection,
-or directory content as required by the nodal type. Manipulation of
-these properties is accomplished through the POSIX set of file and
-directory functions. In addition to being useful in its own right,
-the IMFS serves as a full featured example filesystem.
-
-The intended audience for this document is those persons implementing
-their own filesystem. Users of the filesystem may find information
-on the implementation useful. But the user interface to the filesystem
-is through the ISO/ANSI C Library and POSIX 1003.1b file and directory
-APIs.
diff --git a/doc/filesystem/stamp-vti b/doc/filesystem/stamp-vti
deleted file mode 100644
index 5634951ec8..0000000000
--- a/doc/filesystem/stamp-vti
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 24 February 2013
-@set UPDATED-MONTH February 2013
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0
diff --git a/doc/filesystem/syscalls.t b/doc/filesystem/syscalls.t
deleted file mode 100644
index cbc55ae711..0000000000
--- a/doc/filesystem/syscalls.t
+++ /dev/null
@@ -1,1127 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter System Call Development Notes
-
-This set of routines represents the application's interface to files and directories
-under the RTEMS filesystem. All routines are compliant with POSIX standards if a
-specific interface has been established. The list below represents the routines that have
-been included as part of the application's interface.
-
-@enumerate
-@item access()
-@item chdir()
-@item chmod()
-@item chown()
-@item close()
-@item closedir()
-@item dup()
-@item dup2()
-@item fchmod()
-@item fcntl()
-@item fdatasync()
-@item fpathconf()
-@item fstat()
-@item ioctl()
-@item link()
-@item lseek()
-@item mkdir()
-@item mkfifo()
-@item mknod()
-@item mount()
-@item open()
-@item opendir()
-@item pathconf()
-@item read()
-@item readdir()
-@item unmount()
-@end enumerate
-
-The sections that follow provide developmental information concerning each
-of these functions.
-
-
-@c @page
-@section access
-
-@subheading File:
-
-access.c
-
-@subheading Processing:
-
-This routine is layered on the stat() function. It acquires the current
-status information for the specified file and then determines if the
-caller has the ability to access the file for read, write or execute
-according to the mode argument to this function.
-
-@subheading Development Comments:
-
-This routine is layered on top of the stat() function. As long as the
-st_mode element in the returned structure follow the standard UNIX
-conventions, this function should support other filesystems without
-alteration.
-
-@c @page
-@section chdir
-
-@subheading File:
-
-chdir.c
-
-
-@subheading Processing:
-
-This routine will determine if the pathname that we are attempting to make
-that current directory exists and is in fact a directory. If these
-conditions are met the global indication of the current directory
-(rtems_filesystem_current) is set to the rtems_filesystem_location_info_t
-structure that is returned by the rtems_filesystem_evaluate_path()
-routine.
-
-@subheading Development Comments:
-
-This routine is layered on the rtems_filesystem_evaluate_path() routine
-and the filesystem specific OP table function node_type().
-
-The routine node_type() must be a routine provided for each filesystem
-since it must access the filesystems node information to determine which
-of the following types the node is:
-
-@itemize @bullet
-@item RTEMS_FILESYSTEM_DIRECTORY
-@item RTEMS_FILESYSTEM_DEVICE
-@item RTEMS_FILESYSTEM_HARD_LINK
-@item RTEMS_FILESYSTEM_MEMORY_FILE
-@end itemize
-
-This acknowledges that the form of the node management information can
-vary from one filesystem implementation to another.
-
-RTEMS has a special global structure that maintains the current directory
-location. This global variable is of type rtems_filesystem_location_info_t
-and is called rtems_filesystem_current. This structure is not always
-valid. In order to determine if the structure is valid, you must first
-test the node_access element of this structure. If the pointer is NULL,
-then the structure does not contain a valid indication of what the current
-directory is.
-
-@c @page
-@section chmod
-
-@subheading File:
-
-chmod.c
-
-@subheading Processing:
-
-This routine is layered on the open(), fchmod() and close() functions. As
-long as the standard interpretation of the mode_t value is maintained,
-this routine should not need modification to support other filesystems.
-
-@subheading Development Comments:
-
-The routine first determines if the selected file can be open with
-read/write access. This is required to allow modification of the mode
-associated with the selected path.
-
-The fchmod() function is used to actually change the mode of the path
-using the integer file descriptor returned by the open() function.
-
-After mode modification, the open file descriptor is closed.
-
-@c @page
-@section chown
-
-@subheading File:
-
-chown.c
-
-@subheading Processing:
-
-This routine is layered on the rtems_filesystem_evaluate_path() and the
-file system specific chown() routine that is specified in the OPS table
-for the file system.
-
-@subheading Development Comments:
-
-rtems_filesystem_evaluate_path() is used to determine if the path
-specified actually exists. If it does a rtems_filesystem_location_info_t
-structure will be obtained that allows the shell function to locate the
-OPS table that is to be used for this filesystem.
-
-It is possible that the chown() function that should be in the OPS table
-is not defined. A test for a non-NULL OPS table chown() entry is performed
-before the function is called.
-
-If the chown() function is defined in the indicated OPS table, the
-function is called with the rtems_filesystem_location_info_t structure
-returned from the path evaluation routine, the desired owner, and group
-information.
-
-@c @page
-@section close
-
-@subheading File:
-
-close.c
-
-@subheading Processing:
-
-This routine will allow for the closing of both network connections and
-file system devices. If the file descriptor is associated with a network
-device, the appropriate network function handler will be selected from a
-table of previously registered network functions (rtems_libio_handlers)
-and that function will be invoked.
-
-If the file descriptor refers to an entry in the filesystem, the
-appropriate handler will be selected using information that has been
-placed in the file control block for the device (rtems_libio_t structure).
-
-@subheading Development Comments:
-
-rtems_file_descriptor_type examines some of the upper bits of the file
-descriptor index. If it finds that the upper bits are set in the file
-descriptor index, the device referenced is a network device.
-
-Network device handlers are obtained from a special registration table
-(rtems_libio_handlers) that is set up during network initialization. The
-network handler invoked and the status of the network handler will be
-returned to the calling process.
-
-If none of the upper bits are set in the file descriptor index, the file
-descriptor refers to an element of the RTEMS filesystem.
-
-The following sequence will be performed for any filesystem file
-descriptor:
-
-@enumerate
-
-@item Use the rtems_libio_iop() function to obtain the rtems_libio_t
-structure for the file descriptor
-
-@item Range check the file descriptor using rtems_libio_check_fd()
-
-@item Determine if there is actually a function in the selected handler
-table that processes the close() operation for the filesystem and node
-type selected. This is generally done to avoid execution attempts on
-functions that have not been implemented.
-
-@item If the function has been defined it is invoked with the file control
-block pointer as its argument.
-
-@item The file control block that was associated with the open file
-descriptor is marked as free using rtems_libio_free().
-
-@item The return code from the close handler is then passed back to the
-calling program.
-
-@end enumerate
-
-@c @page
-@section closedir
-
-@subheading File:
-
-closedir.c
-
-@subheading Processing:
-
-The code was obtained from the BSD group. This routine must clean up the
-memory resources that are required to track an open directory. The code is
-layered on the close() function and standard memory free() functions. It
-should not require alterations to support other filesystems.
-
-@subheading Development Comments:
-
-The routine alters the file descriptor and the index into the DIR
-structure to make it an invalid file descriptor. Apparently the memory
-that is about to be freed may still be referenced before it is
-reallocated.
-
-The dd_buf structure's memory is reallocated before the control structure
-that contains the pointer to the dd_buf region.
-
-DIR control memory is reallocated.
-
-The close() function is used to free the file descriptor index.
-
-
-@c @page
-@section dup() Unimplemented
-
-@subheading File:
-
-dup.c
-
-@subheading Processing:
-
-
-@subheading Development Comments:
-
-
-
-
-
-@c @page
-@section dup2() Unimplemented
-
-@subheading File:
-
-dup2.c
-
-@subheading Processing:
-
-
-@subheading Development Comments:
-
-
-
-
-
-
-@c @page
-@section fchmod
-
-@subheading File:
-
-fchmod.c
-
-@subheading Processing:
-
-This routine will alter the permissions of a node in a filesystem. It is
-layered on the following functions and macros:
-
-@itemize @bullet
-@item rtems_file_descriptor_type()
-
-@item rtems_libio_iop()
-
-@item rtems_libio_check_fd()
-
-@item rtems_libio_check_permissions()
-
-@item fchmod() function that is referenced by the handler table in the
-file control block associated with this file descriptor
-
-@end itemize
-
-@subheading Development Comments:
-
-The routine will test to see if the file descriptor index is associated
-with a network connection. If it is, an error is returned from this
-routine.
-
-The file descriptor index is used to obtain the associated file control
-block.
-
-The file descriptor value is range checked.
-
-The file control block is examined to determine if it has write
-permissions to allow us to alter the mode of the file.
-
-A test is made to determine if the handler table that is referenced in the
-file control block contains an entry for the fchmod() handler function. If
-it does not, an error is returned to the calling routine.
-
-If the fchmod() handler function exists, it is called with the file
-control block and the desired mode as parameters.
-
-@c @page
-@section fcntl()
-
-@subheading File:
-
-fcntl.c
-
-@subheading Processing:
-
-This routine currently only interacts with the file control block. If the
-structure of the file control block and the associated meanings do not
-change, the partial implementation of fcntl() should remain unaltered for
-other filesystem implementations.
-
-@subheading Development Comments:
-
-The only commands that have been implemented are the F_GETFD and F_SETFD.
-The commands manipulate the LIBIO_FLAGS_CLOSE_ON_EXEC bit in the
-@code{flags} element of the file control block associated with the file
-descriptor index.
-
-The current implementation of the function performs the sequence of
-operations below:
-
-@enumerate
-
-@item Test to see if we are trying to operate on a file descriptor
-associated with a network connection
-
-@item Obtain the file control block that is associated with the file
-descriptor index
-
-@item Perform a range check on the file descriptor index.
-
-@end enumerate
-
-
-
-@c @page
-@section fdatasync
-
-@subheading File:
-
-fdatasync.c
-
-@subheading Processing:
-
-This routine is a template in the in memory filesystem that will route us to the
-appropriate handler function to carry out the fdatasync() processing. In the in
-memory filesystem this function is not necessary. Its function in a disk based file
-system that employs a memory cache is to flush all memory based data buffers to
-disk. It is layered on the following functions and macros:
-
-@itemize @bullet
-
-@item rtems_file_descriptor_type()
-
-@item rtems_libio_iop()
-
-@item rtems_libio_check_fd()
-
-@item rtems_libio_check_permissions()
-
-@item fdatasync() function that is referenced by the handler table in the
-file control block associated with this file descriptor
-
-@end itemize
-
-@subheading Development Comments:
-
-The routine will test to see if the file descriptor index is associated
-with a network connection. If it is, an error is returned from this
-routine.
-
-The file descriptor index is used to obtain the associated file control
-block.
-
-The file descriptor value is range checked.
-
-The file control block is examined to determine if it has write
-permissions to the file.
-
-A test is made to determine if the handler table that is referenced in the
-file control block contains an entry for the fdatasync() handler function.
-If it does not an error is returned to the calling routine.
-
-If the fdatasync() handler function exists, it is called with the file
-control block as its parameter.
-
-@c @page
-@section fpathconf
-
-@subheading File:
-
-fpathconf.c
-
-@subheading Processing:
-
-This routine is layered on the following functions and macros:
-
-@itemize @bullet
-
-@item rtems_file_descriptor_type()
-
-@item rtems_libio_iop()
-
-@item rtems_libio_check_fd()
-
-@item rtems_libio_check_permissions()
-
-@end itemize
-
-When a filesystem is mounted, a set of constants is specified for the
-filesystem. These constants are stored with the mount table entry for the
-filesystem. These constants appear in the POSIX standard and are listed
-below.
-
-@itemize @bullet
-
-@item PCLINKMAX
-
-@item PCMAXCANON
-
-@item PCMAXINPUT
-
-@item PCNAMEMAX
-
-@item PCPATHMAX
-
-@item PCPIPEBUF
-
-@item PCCHOWNRESTRICTED
-
-@item PCNOTRUNC
-
-@item PCVDISABLE
-
-@item PCASYNCIO
-
-@item PCPRIOIO
-
-@item PCSYNCIO
-
-
-@end itemize
-
-This routine will find the mount table information associated the file
-control block for the specified file descriptor parameter. The mount table
-entry structure contains a set of filesystem specific constants that can
-be accessed by individual identifiers.
-
-@subheading Development Comments:
-
-The routine will test to see if the file descriptor index is associated
-with a network connection. If it is, an error is returned from this
-routine.
-
-The file descriptor index is used to obtain the associated file control
-block.
-
-The file descriptor value is range checked.
-
-The file control block is examined to determine if it has read permissions
-to the file.
-
-Pathinfo in the file control block is used to locate the mount table entry
-for the filesystem associated with the file descriptor.
-
-The mount table entry contains the pathconf_limits_and_options element.
-This element is a table of constants that is associated with the
-filesystem.
-
-The name argument is used to reference the desired constant from the
-pathconf_limits_and_options table.
-
-
-@c @page
-@section fstat
-
-@subheading File:
-
-fstat.c
-
-@subheading Processing:
-
-This routine will return information concerning a file or network
-connection. If the file descriptor is associated with a network
-connection, the current implementation of @code{fstat()} will return a
-mode set to @code{S_IFSOCK}. In a later version, this routine will map the
-status of a network connection to an external handler routine.
-
-If the file descriptor is associated with a node under a filesystem, the
-fstat() routine will map to the fstat() function taken from the node
-handler table.
-
-@subheading Development Comments:
-
-This routine validates that the struct stat pointer is not NULL so that
-the return location is valid.
-
-The struct stat is then initialized to all zeros.
-
-rtems_file_descriptor_type() is then used to determine if the file
-descriptor is associated with a network connection. If it is, network
-status processing is performed. In the current implementation, the file
-descriptor type processing needs to be improved. It currently just drops
-into the normal processing for file system nodes.
-
-If the file descriptor is associated with a node under a filesystem, the
-following steps are performed:
-
-@enumerate
-
-@item Obtain the file control block that is associated with the file descriptor
-index.
-
-@item Range check the file descriptor index.
-
-@item Test to see if there is a non-NULL function pointer in the handler
-table for the fstat() function. If there is, invoke the function with the
-file control block and the pointer to the stat structure.
-
-@end enumerate
-
-@c @page
-@section ioctl
-
-@subheading File:
-
-ioctl.c
-
-@subheading Processing:
-
-Not defined in the POSIX 1003.1b standard but commonly supported in most
-UNIX and POSIX system. Ioctl() is a catchall for I/O operations. Routine
-is layered on external network handlers and filesystem specific handlers.
-The development of new filesystems should not alter the basic processing
-performed by this routine.
-
-@subheading Development Comments:
-
-
-The file descriptor is examined to determine if it is associated with a
-network device. If it is processing is mapped to an external network
-handler. The value returned by this handler is then returned to the
-calling program.
-
-File descriptors that are associated with a filesystem undergo the
-following processing:
-
-@enumerate
-
-@item The file descriptor index is used to obtain the associated file
-control block.
-
-@item The file descriptor value is range checked.
-
-@item A test is made to determine if the handler table that is referenced
-in the file control block contains an entry for the ioctl() handler
-function. If it does not, an error is returned to the calling routine.
-
-@item If the ioctl() handler function exists, it is called with the file
-control block, the command and buffer as its parameters.
-
-@item The return code from this function is then sent to the calling
-routine.
-
-@end enumerate
-
-
-@c @page
-@section link
-
-@subheading File:
-
-link.c
-
-@subheading Processing:
-
-This routine will establish a hard link to a file, directory or a device.
-The target of the hard link must be in the same filesystem as the new link
-being created. A link to an existing link is also permitted but the
-existing link is evaluated before the new link is made. This implies that
-links to links are reduced to links to files, directories or devices
-before they are made.
-
-@subheading Development Comments:
-
-Calling parameters:
-const char *existing
- const char *new
-
-link() will determine if the target of the link actually exists using
-rtems_filesystem_evaluate_path()
-
-rtems_filesystem_get_start_loc() is used to determine where to start the
-path evaluation of the new name. This macro examines the first characters
-of the name to see if the name of the new link starts with a
-rtems_filesystem_is_separator. If it does the search starts from the root
-of the RTEMS filesystem; otherwise the search will start from the current
-directory.
-
-The OPS table evalformake() function for the parent's filesystem is used
-to locate the node that will be the parent of the new link. It will also
-locate the start of the new path's name. This name will be used to define
-a child under the parent directory.
-
-If the parent is found, the routine will determine if the hard link that
-we are trying to create will cross a filesystem boundary. This is not
-permitted for hard-links.
-
-If the hard-link does not cross a filesystem boundary, a check is
-performed to determine if the OPS table contains an entry for the link()
-function.
-
-If a link() function is defined, the OPS table link() function will be
-called to establish the actual link within the filesystem.
-
-The return code from the OPS table link() function is returned to the
-calling program.
-
-@c @page
-@section lseek
-
-@subheading File:
-
-lseek.c
-
-@subheading Processing:
-
-This routine is layered on both external handlers and filesystem / node
-type specific handlers. This routine should allow for the support of new
-filesystems without modification.
-
-@subheading Development Comments:
-
-This routine will determine if the file descriptor is associated with a
-network device. If it is lseek will map to an external network handler.
-The handler will be called with the file descriptor, offset and whence as
-its calling parameters. The return code from the external handler will be
-returned to the calling routine.
-
-If the file descriptor is not associated with a network connection, it is
-associated with a node in a filesystem. The following steps will be
-performed for filesystem nodes:
-
-@enumerate
-
-@item The file descriptor is used to obtain the file control block for the
-node.
-
-@item The file descriptor is range checked.
-
-@item The offset element of the file control block is altered as indicated
-by the offset and whence calling parameters
-
-@item The handler table in the file control block is examined to determine
-if it contains an entry for the lseek() function. If it does not an error
-is returned to the calling program.
-
-@item The lseek() function from the designated handler table is called
-with the file control block, offset and whence as calling arguments
-
-@item The return code from the lseek() handler function is returned to the
-calling program
-
-@end enumerate
-
-
-@c @page
-@section mkdir
-
-@subheading File:
-
-mkdir.c
-
-@subheading Processing:
-
-This routine attempts to create a directory node under the filesystem. The
-routine is layered the mknod() function.
-
-@subheading Development Comments:
-
-See mknod() for developmental comments.
-
-@c @page
-@section mkfifo
-
-@subheading File:
-
-mkfifo.c
-
-@subheading Processing:
-
-This routine attempts to create a FIFO node under the filesystem. The
-routine is layered the mknod() function.
-
-@subheading Development Comments:
-
-See mknod() for developmental comments
-
-@c @page
-@section mknod
-
-@subheading File:
-
-mknod.c
-
-@subheading Processing:
-
-This function will allow for the creation of the following types of nodes
-under the filesystem:
-
-@itemize @bullet
-
-@item directories
-
-@item regular files
-
-@item character devices
-
-@item block devices
-
-@item fifos
-
-@end itemize
-
-At the present time, an attempt to create a FIFO will result in an ENOTSUP
-error to the calling function. This routine is layered the filesystem
-specific routines evalformake and mknod. The introduction of a new
-filesystem must include its own evalformake and mknod function to support
-the generic mknod() function. Under this condition the generic mknod()
-function should accommodate other filesystem types without alteration.
-
-@subheading Development Comments:
-
-Test for nodal types - I thought that this test should look like the
-following code:
-
-@example
-if ( (mode & S_IFDIR) = = S_IFDIR) ||
- (mode & S_IFREG) = = S_IFREG) ||
- (mode & S_IFCHR) = = S_IFCHR) ||
- (mode & S_IFBLK) = = S_IFBLK) ||
- (mode & S_IFIFO) = = S_IFIFO))
- Set_errno_and_return_minus_one (EINVAL);
-
-@end example
-
-Where:
-
-@itemize @bullet
-@item S_IFREG (0100000) - Creation of a regular file
-@item S_IFCHR (0020000) - Creation of a character device
-@item S_IFBLK (0060000) - Creation of a block device
-@item S_IFIFO (0010000) - Creation of a FIFO
-@end itemize
-
-Determine if the pathname that we are trying to create starts at the root
-directory or is relative to the current directory using the
-rtems_filesystem_get_start_loc() function.
-
-Determine if the pathname leads to a valid directory that can be accessed
-for the creation of a node.
-
-If the pathname is a valid location to create a node, verify that a
-filesystem specific mknod() function exists.
-
-If the mknod() function exists, call the filesystem specific mknod()
-function. Pass the name, mode, device type and the location information
-associated with the directory under which the node will be created.
-
-@c @page
-@section mount
-
-@subheading File:
-
-mount.c
-
-
-Arguments (Not a standard POSIX call):
-
-rtems_filesystem_mount_table_entry_t **mt_entry,
-
-If the mount operation is successful, this pointer to a pointer will be
-set to reference the mount table chain entry that has been allocated for
-this file system mount.
-
-rtems_filesystem_operations_table *fs_ops,
-
-This is a pointer to a table of functions that are associated with the
-file system that we are about to mount. This is the mechanism to selected
-file system type without keeping a dynamic database of all possible file
-system types that are valid for the mount operation. Using this method, it
-is only necessary to configure the filesystems that we wish to use into
-the RTEMS build. Unused filesystems types will not be drawn into the
-build.
-
-char *fsoptions,
-
-This argument points to a string that selects mounting for read only
-access or read/write access. Valid states are "RO" and "RW"
-
-char *device,
-
-This argument is reserved for the name of a device that will be used to
-access the filesystem information. Current filesystem implementations are
-memory based and do not require a device to access filesystem information.
-
-char *mount_point
-
-This is a pathname to a directory in a currently mounted filesystem that
-allows read, write and execute permissions. If successful, the node found
-by evaluating this name, is stored in the mt_entry.
-
-@subheading Processing:
-
-This routine will handle the mounting of a filesystem on a mount point. If
-the operation is successful, a pointer to the mount table chain entry
-associated with the mounted filesystem will be returned to the calling
-function. The specifics about the processing required at the mount point
-and within the filesystem being mounted is isolated in the filesystem
-specific mount() and fsmount_me() functions. This allows the generic
-mount() function to remain unaltered even if new filesystem types are
-introduced.
-
-
-
-@subheading Development Comments:
-
-This routine will use get_file_system_options() to determine if the mount
-options are valid ("RO" or "RW").
-
-It confirms that a filesystem ops-table has been selected.
-
-Space is allocated for a mount table entry and selective elements of the
-temporary mount table entry are initialized.
-
-If a mount point is specified: The mount point is examined to determine
-that it is a directory and also has the appropriate permissions to allow a
-filesystem to be mounted.
-
-The current mount table chain is searched to determine that there is not
-another filesystem mounted at the mount point we are trying to mount onto.
-
-If a mount function is defined in the ops table for the filesystem
-containing the mount point, it is called at this time.
-
-If no mount point is specified: Processing if performed to set up the
-mount table chain entry as the base filesystem.
-
-If the fsmount_me() function is specified for ops-table of the filesystem
-being mounted, that function is called to initialize for the new
-filesystem.
-
-On successful completion, the temporary mount table entry will be placed
-on the mount table chain to record the presence of the mounted filesystem.
-
-@c @page
-@section open
-
-@subheading File:
-
-open.c
-
-@subheading Processing:
-
-This routine is layered on both RTEMS calls and filesystem specific
-implementations of the open() function. These functional interfaces should
-not change for new filesystems and therefore this code should be stable as
-new file systems are introduced.
-
-@subheading Development Comments:
-
-This routine will allocate a file control block for the file or device
-that we are about to open.
-
-It will then test to see if the pathname exists. If it does a
-rtems_filesystem_location_info_t data structure will be filled out. This
-structure contains information that associates node information,
-filesystem specific functions and mount table chain information with the
-pathname.
-
-If the create option has been it will attempt to create a node for a
-regular file along the specified path. If a file already exists along this
-path, an error will be generated; otherwise, a node will be allocated for
-the file under the filesystem that contains the pathname. When a new node
-is created, it is also evaluated so that an appropriate
-rtems_filesystem_location_info_t data structure can be filled out for the
-newly created node.
-
-If the file exists or the new file was created successfully, the file
-control block structure will be initialized with handler table
-information, node information and the rtems_filesystem_location_info_t
-data structure that describes the node and filesystem data in detail.
-
-If an open() function exists in the filesystem specific handlers table for
-the node that we are trying to open, it will be called at this time.
-
-If any error is detected in the process, cleanup is performed. It consists
-of freeing the file control block structure that was allocated at the
-beginning of the generic open() routine.
-
-On a successful open(), the index into the file descriptor table will be
-calculated and returned to the calling routine.
-
-@c @page
-@section opendir
-
-@subheading File:
-
-opendir.c
-
-@subheading Processing:
-
-This routine will attempt to open a directory for read access. It will
-setup a DIR control structure that will be used to access directory
-information. This routine is layered on the generic open() routine and
-filesystem specific directory processing routines.
-
-@subheading Development Comments:
-
-The BSD group provided this routine.
-
-@c @page
-@section pathconf
-
-@subheading File:
-
-pathconf.c
-
-@subheading Processing:
-
-This routine will obtain the value of one of the path configuration
-parameters and return it to the calling routine. It is layered on the
-generic open() and fpathconf() functions. These interfaces should not
-change with the addition of new filesystem types.
-
-@subheading Development Comments:
-
-This routine will try to open the file indicated by path.
-
-If successful, the file descriptor will be used to access the pathconf
-value specified by @code{name} using the fpathconf() function.
-
-The file that was accessed is then closed.
-
-@c @page
-@section read
-
-@subheading File:
-
-deviceio.c
-
-@subheading Processing:
-
-This routine is layered on a set of RTEMS calls and filesystem specific
-read operations. The functions are layered in such a way as to isolate
-them from change as new filesystems are introduced.
-
-@subheading Development Comments:
-
-This routine will examine the type of file descriptor it is sent.
-
-If the file descriptor is associated with a network device, the read
-function will be mapped to a special network handler. The return code from
-the network handler will then be sent as the return code from generic
-read() function.
-
-For file descriptors that are associated with the filesystem the following
-sequence will be performed:
-
-@enumerate
-
-@item Obtain the file control block associated with the file descriptor
-
-@item Range check the file descriptor
-
-@item Determine that the buffer pointer is not invalid
-
-@item Check that the count is not zero
-
-@item Check the file control block to see if we have permissions to read
-
-@item If there is a read function in the handler table, invoke the handler
-table read() function
-
-@item Use the return code from the handler table read function(number of
-bytes read) to increment the offset element of the file control block
-
-@item Return the number of bytes read to the calling program
-
-@end enumerate
-
-@c @page
-@section readdir
-
-@subheading File:
-
-readdir.c
-
-@subheading Processing:
-
-This routine was acquired from the BSD group. It has not been altered from
-its original form.
-
-@subheading Development Comments:
-
-The routine calls a customized getdents() function that is provided by the
-user. This routine provides the filesystem specific aspects of reading a
-directory.
-
-It is layered on the read() function in the directory handler table. This
-function has been mapped to the Imfs_dir_read() function.
-
-@c @page
-@section unmount
-
-@subheading File:
-
-unmount.c
-
-@subheading Processing:
-
-This routine will attempt to dismount a mounted filesystem and then free
-all resources that were allocated for the management of that filesystem.
-
-@subheading Development Comments:
-
-@itemize @bullet
-
-@item This routine will determine if there are any filesystems currently
-mounted under the filesystem that we are trying to dismount. This would
-prevent the dismount of the filesystem.
-
-@item It will test to see if the current directory is in the filesystem
-that we are attempting to dismount. This would prevent the dismount of the
-filesystem.
-
-@item It will scan all the currently open file descriptors to determine is
-there is an open file descriptor to a file in the filesystem that we are
-attempting to unmount().
-
-@end itemize
-
-If the above preconditions are met then the following sequence is
-performed:
-
-@enumerate
-
-@item Call the filesystem specific unmount() function for the filesystem
-that contains the mount point. This routine should indicate that the mount
-point no longer has a filesystem mounted below it.
-
-@item Call the filesystem specific fsunmount_me() function for the mounted
-filesystem that we are trying to unmount(). This routine should clean up
-any resources that are no longer needed for the management of the file
-system being un-mounted.
-
-@item Extract the mount table entry for the filesystem that was just
-dismounted from the mount table chain.
-
-@item Free the memory associated with the extracted mount table entry.
-
-@end enumerate
-
-@c @page
-@section eval
-
-@subheading File:
-
-XXX
-
-@subheading Processing:
-
-XXX
-
-@subheading Development Comments:
-
-XXX
-
-@c @page
-@section getdentsc
-
-@subheading File:
-
-XXX
-
-@subheading Processing:
-
-XXX
-
-@subheading Development Comments:
-
-XXX
-
diff --git a/doc/filesystem/tftp.t b/doc/filesystem/tftp.t
deleted file mode 100644
index a470317131..0000000000
--- a/doc/filesystem/tftp.t
+++ /dev/null
@@ -1,11 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Trivial FTP Client Filesystem
-
-This chapter describes the Trivial FTP (TFTP) Client Filesystem.
-
-This chapter should be written after the IMFS chapter is completed
-and describe the implementation of the TFTP.
diff --git a/doc/filesystem/version.texi b/doc/filesystem/version.texi
deleted file mode 100644
index c0e4bbb7b6..0000000000
--- a/doc/filesystem/version.texi
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 17 July 2015
-@set UPDATED-MONTH July 2015
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0
diff --git a/doc/images/dir-arrow.gif b/doc/images/dir-arrow.gif
deleted file mode 100644
index 5d661527cc..0000000000
--- a/doc/images/dir-arrow.gif
+++ /dev/null
Binary files differ
diff --git a/doc/images/dvi.gif b/doc/images/dvi.gif
deleted file mode 100644
index 163a5d52b5..0000000000
--- a/doc/images/dvi.gif
+++ /dev/null
Binary files differ
diff --git a/doc/images/missing-arrow.gif b/doc/images/missing-arrow.gif
deleted file mode 100644
index c686c80b5f..0000000000
--- a/doc/images/missing-arrow.gif
+++ /dev/null
Binary files differ
diff --git a/doc/images/next-arrow.gif b/doc/images/next-arrow.gif
deleted file mode 100644
index 57f5cddb81..0000000000
--- a/doc/images/next-arrow.gif
+++ /dev/null
Binary files differ
diff --git a/doc/images/oaronly.jpg b/doc/images/oaronly.jpg
deleted file mode 100644
index c87c151404..0000000000
--- a/doc/images/oaronly.jpg
+++ /dev/null
Binary files differ
diff --git a/doc/images/pdf.gif b/doc/images/pdf.gif
deleted file mode 100644
index c88fd777c4..0000000000
--- a/doc/images/pdf.gif
+++ /dev/null
Binary files differ
diff --git a/doc/images/pdf1.gif b/doc/images/pdf1.gif
deleted file mode 100644
index 784fe2ac8c..0000000000
--- a/doc/images/pdf1.gif
+++ /dev/null
Binary files differ
diff --git a/doc/images/prev-arrow.gif b/doc/images/prev-arrow.gif
deleted file mode 100644
index 350785be10..0000000000
--- a/doc/images/prev-arrow.gif
+++ /dev/null
Binary files differ
diff --git a/doc/images/ps.gif b/doc/images/ps.gif
deleted file mode 100644
index 0f565bc1db..0000000000
--- a/doc/images/ps.gif
+++ /dev/null
Binary files differ
diff --git a/doc/images/rtems_logo.jpg b/doc/images/rtems_logo.jpg
deleted file mode 100644
index 485b80bc8a..0000000000
--- a/doc/images/rtems_logo.jpg
+++ /dev/null
Binary files differ
diff --git a/doc/images/up-arrow.gif b/doc/images/up-arrow.gif
deleted file mode 100644
index 82aa8ccc68..0000000000
--- a/doc/images/up-arrow.gif
+++ /dev/null
Binary files differ
diff --git a/doc/index.html.in b/doc/index.html.in
deleted file mode 100644
index 5a4b202ebe..0000000000
--- a/doc/index.html.in
+++ /dev/null
@@ -1,142 +0,0 @@
-<HTML>
-<HEAD><TITLE>RTEMS @VERSION@ On-Line Library</TITLE></HEAD>
-<BODY BGCOLOR="FFFFFF">
-<A HREF="http://www.rtems.org" target="Text Frame">
- <IMG align=right BORDER=0 SRC="images/rtems_logo.jpg" ALT="RTEMS Logo"> </A>
-<H1>RTEMS @VERSION@ On-Line Library</H1>
-<HR>
-<BODY>
-<MENU>
- <LI><A HREF="http://www.rtems.org/wiki">RTEMS Wiki</A></LI>
- <LI>C/C++ Manuals</LI>
- <MENU>
- <LI><A HREF="../pdf/started.pdf">
- <IMG SRC="images/pdf1.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="../ps/started.ps">
- <IMG SRC="images/ps.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="../dvi/started.dvi">
- <IMG SRC="images/dvi.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="started/index.html">
- Getting Started with RTEMS</A>
- </LI>
-
- <LI><A HREF="../pdf/c_user.pdf">
- <IMG SRC="images/pdf1.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="../ps/c_user.ps">
- <IMG SRC="images/ps.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="../dvi/c_user.dvi">
- <IMG SRC="images/dvi.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="c_user/index.html">
- RTEMS Applications C User's Guide</A>
- </LI>
-
- <LI><A HREF="../pdf/posix_users.pdf">
- <IMG SRC="images/pdf1.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="../ps/posix_users.ps">
- <IMG SRC="images/ps.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="../dvi/posix_users.dvi">
- <IMG SRC="images/dvi.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="posix_users/index.html">
- RTEMS POSIX API User's Guide</A>
- </LI>
-
- <LI><A HREF="../pdf/networking.pdf">
- <IMG SRC="images/pdf1.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="../ps/networking.ps">
- <IMG SRC="images/ps.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="../dvi/networking.dvi">
- <IMG SRC="images/dvi.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="networking/index.html">
- RTEMS TCP/IP Networking Supplement</A>
- </LI>
-
- <LI><A HREF="../pdf/shell.pdf">
- <IMG SRC="images/pdf1.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="../ps/shell.ps">
- <IMG SRC="images/ps.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="../dvi/shell.dvi">
- <IMG SRC="images/dvi.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="shell/index.html">
- RTEMS Shell User's Guide</A>
- </LI>
- </MENU>
- <LI>Ada Manuals</LI>
- <MENU>
- <LI><A HREF="../pdf/ada_user.pdf">
- <IMG SRC="images/pdf1.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="../ps/ada_user.ps">
- <IMG SRC="images/ps.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="../dvi/ada_user.dvi">
- <IMG SRC="images/dvi.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="ada_user/index.html">
- RTEMS Applications Ada User's Guide</A>
- </LI>
- </MENU>
-
- <LI>Miscellaneous Manuals</LI>
- <MENU>
- <LI><A HREF="../pdf/bsp_howto.pdf">
- <IMG SRC="images/pdf1.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="../ps/bsp_howto.ps">
- <IMG SRC="images/ps.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="../dvi/bsp_howto.dvi">
- <IMG SRC="images/dvi.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="bsp_howto/index.html">
- RTEMS BSP and Device Driver Development Guide</A>
- </LI>
-
- <LI><A HREF="../pdf/cpu_supplement.pdf">
- <IMG SRC="images/pdf1.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="../ps/cpu_supplement.ps">
- <IMG SRC="images/ps.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="../dvi/cpu_supplement.dvi">
- <IMG SRC="images/dvi.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="cpu_supplement/index.html">
- RTEMS CPU Architecture Supplement</A>
- </LI>
-
- <LI><A HREF="../pdf/develenv.pdf">
- <IMG SRC="images/pdf1.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="../ps/develenv.ps">
- <IMG SRC="images/ps.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="../dvi/develenv.dvi">
- <IMG SRC="images/dvi.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="develenv/index.html">
- RTEMS Development Environment Guide</A>
- </LI>
-
- <LI><A HREF="../pdf/porting.pdf">
- <IMG SRC="images/pdf1.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="../ps/porting.ps">
- <IMG SRC="images/ps.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="../dvi/porting.dvi">
- <IMG SRC="images/dvi.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="porting/index.html">
- RTEMS Porting Guide</A>
- </LI>
-
- <LI><A HREF="../pdf/posix1003_1.pdf">
- <IMG SRC="images/pdf1.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="../ps/posix1003_1.ps">
- <IMG SRC="images/ps.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="../dvi/posix1003_1.dvi">
- <IMG SRC="images/dvi.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="posix1003_1/index.html">
- RTEMS POSIX 1003.1 Compliance Guide</A>
- </LI>
-
- <LI><A HREF="../pdf/filesystem.pdf">
- <IMG SRC="images/pdf1.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="../ps/filesystem.ps">
- <IMG SRC="images/ps.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="../dvi/filesystem.dvi">
- <IMG SRC="images/dvi.gif" HEIGHT=18 WIDTH=16></A>
- <A HREF="filesystem/index.html">
- RTEMS Filesystem Design Guide</A>
- </LI>
- </MENU>
-
-</MENU>
-<HR>
-Copyright &copy; 1988-2013 <A HREF="http://www.oarcorp.com" target="Text Frame">OAR Corporation</A>
-</BODY></HTML>
diff --git a/doc/main.am b/doc/main.am
deleted file mode 100644
index 5076f4aa12..0000000000
--- a/doc/main.am
+++ /dev/null
@@ -1,21 +0,0 @@
-if USE_HTML
-html_projectdir = $(htmldir)/$(PROJECT)
-endif
-
-# The arguments are carefully selected to make the output of texi2html
-# and texi2any generate into the same directory, using the same naming
-# patterns. This is intended to make the dependency tracking and install
-# file naming consistent.
-TEXI2HTML_ARGS=\
--D use-html --split node --node-files \
--o $(PROJECT)/ \
---top-file=index.html \
---init-file=$(top_builddir)/texi2html_init \
--I $(srcdir) -I $(top_srcdir) -I $(top_builddir) -I .
-
-TEXI2ANY_ARGS=\
---html -D use-html --split node \
--c MENU_ENTRY_COLON= -c NODE_NAME_IN_MENU=0 -c USE_NODES=0 \
--o $(PROJECT)/ \
---init-file=$(top_builddir)/texi2any_init \
--I $(srcdir) -I $(top_srcdir) -I $(top_builddir) -I .
diff --git a/doc/networking/Makefile.am b/doc/networking/Makefile.am
deleted file mode 100644
index bb33fc48c2..0000000000
--- a/doc/networking/Makefile.am
+++ /dev/null
@@ -1,67 +0,0 @@
-#
-# COPYRIGHT (c) 1988-2002.
-# On-Line Applications Research Corporation (OAR).
-# All rights reserved.
-
-PROJECT = networking
-
-include $(top_srcdir)/project.am
-include $(top_srcdir)/main.am
-
-BMENU2 += -c
-
-GENERATED_FILES = networkapp.texi driver.texi networktasks.texi testing.texi \
- servers.texi decdriver.texi
-
-COMMON_FILES += $(top_srcdir)/common/cpright.texi
-
-FILES = networktasks.texi preface.texi
-
-info_TEXINFOS = networking.texi
-networking_TEXINFOS = $(FILES) $(COMMON_FILES) $(GENERATED_FILES)
-
-$(PROJECT).dvi: networkflow.eps PCIreg.eps recvbd.eps
-
-PDF_IMAGES = networkflow.pdf PCIreg.pdf recvbd.pdf
-
-if USE_HTML
-html_project_DATA += networkflow.jpg networkflow.png PCIreg.jpg recvbd.jpg
-endif
-
-networktasks.texi: networktasks.t
- $(BMENU2) -p "Preface" \
- -u "Top" \
- -n "Networking Driver" < $< > $@
-
-driver.texi: driver.t
- $(BMENU2) -p "Network Task Structure and Data Flow" \
- -u "Top" \
- -n "Using Networking in an RTEMS Application" < $< > $@
-
-networkapp.texi: networkapp.t
- $(BMENU2) -p "Write the Driver Statistic-Printing Function" \
- -u "Top" \
- -n "Testing the Driver" < $< > $@
-
-testing.texi: testing.t
- $(BMENU2) -p "Time Synchronization Using NTP" \
- -u "Top" \
- -n "Network Servers" < $< > $@
-
-servers.texi: servers.t
- $(BMENU2) -p "Throughput" \
- -u "Top" \
- -n "DEC 21140 Driver" < $< > $@
-
-decdriver.texi: decdriver.t
- $(BMENU2) -p "Using Hooks" \
- -u "Top" \
- -n "Command and Variable Index" < $< > $@
-
-PICTURE_FILES = PCIreg.eps PCIreg.jpg networkflow.eps networkflow.jpg \
- networkflow.png recvbd.eps recvbd.jpg
-
-EXTRA_DIST = decdriver.t driver.t networkapp.t networktasks.t servers.t \
- testing.t $(PICTURE_FILES)
-
-CLEANFILES += networking.info networking.info-?
diff --git a/doc/networking/PCIreg.eps b/doc/networking/PCIreg.eps
deleted file mode 100644
index e627786434..0000000000
--- a/doc/networking/PCIreg.eps
+++ /dev/null
@@ -1,319 +0,0 @@
-%!PS-Adobe-2.0 EPSF-2.0
-%%Title: PCI_reg.eps
-%%Creator: fig2dev Version 3.2 Patchlevel 1
-%%CreationDate: Mon Feb 8 15:09:56 1999
-%%For: raguet@genesis (Emmanuel Raguet)
-%%Orientation: Portrait
-%%BoundingBox: 0 0 270 592
-%%Pages: 0
-%%BeginSetup
-%%EndSetup
-%%Magnification: 1.0000
-%%EndComments
-/$F2psDict 200 dict def
-$F2psDict begin
-$F2psDict /mtrx matrix put
-/col-1 {0 setgray} bind def
-/col0 {0.000 0.000 0.000 srgb} bind def
-/col1 {0.000 0.000 1.000 srgb} bind def
-/col2 {0.000 1.000 0.000 srgb} bind def
-/col3 {0.000 1.000 1.000 srgb} bind def
-/col4 {1.000 0.000 0.000 srgb} bind def
-/col5 {1.000 0.000 1.000 srgb} bind def
-/col6 {1.000 1.000 0.000 srgb} bind def
-/col7 {1.000 1.000 1.000 srgb} bind def
-/col8 {0.000 0.000 0.560 srgb} bind def
-/col9 {0.000 0.000 0.690 srgb} bind def
-/col10 {0.000 0.000 0.820 srgb} bind def
-/col11 {0.530 0.810 1.000 srgb} bind def
-/col12 {0.000 0.560 0.000 srgb} bind def
-/col13 {0.000 0.690 0.000 srgb} bind def
-/col14 {0.000 0.820 0.000 srgb} bind def
-/col15 {0.000 0.560 0.560 srgb} bind def
-/col16 {0.000 0.690 0.690 srgb} bind def
-/col17 {0.000 0.820 0.820 srgb} bind def
-/col18 {0.560 0.000 0.000 srgb} bind def
-/col19 {0.690 0.000 0.000 srgb} bind def
-/col20 {0.820 0.000 0.000 srgb} bind def
-/col21 {0.560 0.000 0.560 srgb} bind def
-/col22 {0.690 0.000 0.690 srgb} bind def
-/col23 {0.820 0.000 0.820 srgb} bind def
-/col24 {0.500 0.190 0.000 srgb} bind def
-/col25 {0.630 0.250 0.000 srgb} bind def
-/col26 {0.750 0.380 0.000 srgb} bind def
-/col27 {1.000 0.500 0.500 srgb} bind def
-/col28 {1.000 0.630 0.630 srgb} bind def
-/col29 {1.000 0.750 0.750 srgb} bind def
-/col30 {1.000 0.880 0.880 srgb} bind def
-/col31 {1.000 0.840 0.000 srgb} bind def
-
-end
-save
--172.0 622.0 translate
-1 -1 scale
-
-/cp {closepath} bind def
-/ef {eofill} bind def
-/gr {grestore} bind def
-/gs {gsave} bind def
-/sa {save} bind def
-/rs {restore} bind def
-/l {lineto} bind def
-/m {moveto} bind def
-/rm {rmoveto} bind def
-/n {newpath} bind def
-/s {stroke} bind def
-/sh {show} bind def
-/slc {setlinecap} bind def
-/slj {setlinejoin} bind def
-/slw {setlinewidth} bind def
-/srgb {setrgbcolor} bind def
-/rot {rotate} bind def
-/sc {scale} bind def
-/sd {setdash} bind def
-/ff {findfont} bind def
-/sf {setfont} bind def
-/scf {scalefont} bind def
-/sw {stringwidth} bind def
-/tr {translate} bind def
-/tnt {dup dup currentrgbcolor
- 4 -2 roll dup 1 exch sub 3 -1 roll mul add
- 4 -2 roll dup 1 exch sub 3 -1 roll mul add
- 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb}
- bind def
-/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul
- 4 -2 roll mul srgb} bind def
-/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def
-/$F2psEnd {$F2psEnteredState restore end} def
-%%EndProlog
-
-$F2psBegin
-10 setmiterlimit
-n -1000 10868 m -1000 -1000 l 8010 -1000 l 8010 10868 l cp clip
- 0.06299 0.06299 sc
-% Polyline
-7.500 slw
-n 2745 1305 m 6525 1305 l 6525 1800 l 2745 1800 l cp gs 0.00 setgray ef gr gs col0 s gr
-% Polyline
-n 4635 1305 m 4635 1800 l gs col7 s gr
-% Polyline
-n 2745 6750 m 6525 6750 l 6525 7245 l 2745 7245 l cp gs col0 s gr
-% Polyline
-n 4635 6750 m 4635 7245 l gs col0 s gr
-% Polyline
-n 2745 8730 m 6525 8730 l 6525 9225 l 2745 9225 l cp gs col0 s gr
-% Polyline
-n 4635 8730 m 4635 9225 l gs col0 s gr
-% Polyline
-n 3735 8730 m 3735 9225 l gs col0 s gr
-% Polyline
-n 5580 8730 m 5580 9225 l gs col0 s gr
-% Polyline
-n 2745 3285 m 6525 3285 l 6525 3780 l 2745 3780 l cp gs col0 s gr
-% Polyline
-n 2745 3780 m 6525 3780 l 6525 4275 l 2745 4275 l cp gs col0 s gr
-% Polyline
-n 2745 4275 m 6525 4275 l 6525 4770 l 2745 4770 l cp gs col0 s gr
-% Polyline
-n 2745 4770 m 6525 4770 l 6525 5265 l 2745 5265 l cp gs col0 s gr
-% Polyline
-n 2745 5265 m 6525 5265 l 6525 5760 l 2745 5760 l cp gs col0 s gr
-% Polyline
-n 2745 5760 m 6525 5760 l 6525 6255 l 2745 6255 l cp gs col0 s gr
-% Polyline
-n 2745 2790 m 6525 2790 l 6525 3285 l 2745 3285 l cp gs col0 s gr
-% Polyline
-n 4635 2790 m 4635 3285 l gs col0 s gr
-% Polyline
-n 3735 2790 m 3735 3285 l gs col0 s gr
-% Polyline
-n 5580 2790 m 5580 3285 l gs col0 s gr
-% Polyline
-n 2745 2295 m 6525 2295 l 6525 2790 l 2745 2790 l cp gs 0.00 setgray ef gr gs col7 s gr
-% Polyline
-n 5580 2295 m 5580 2790 l gs col7 s gr
-% Polyline
-n 2745 1800 m 6525 1800 l 6525 2295 l 2745 2295 l cp gs 0.00 setgray ef gr gs col7 s gr
-% Polyline
-n 4635 1800 m 4635 2295 l gs col7 s gr
-% Polyline
-n 3735 3285 m 4635 3285 l 4635 2790 l 3735 2790 l cp gs 0.00 setgray ef gr gs col7 s gr
-% Polyline
-n 2745 6255 m 6525 6255 l 6525 6750 l 2745 6750 l cp gs col0 s gr
-% Polyline
-n 2745 7740 m 6525 7740 l 6525 8235 l 2745 8235 l cp gs col0 s gr
-% Polyline
-n 2745 8235 m 6525 8235 l 6525 8730 l 2745 8730 l cp gs col0 s gr
-% Polyline
-n 2880 9585 m 3285 9585 l 3285 9855 l 2880 9855 l cp gs 0.00 setgray ef gr gs col0 s gr
-% Polyline
-n 2745 7245 m 6525 7245 l 6525 7740 l 2745 7740 l cp gs col0 s gr
-% Polyline
-gs clippath
-6915 1140 m 6885 1260 l 6855 1140 l 6855 1275 l 6915 1275 l cp
-clip
-n 6885 1260 m 6885 675 l 6660 675 l gs col0 s gr gr
-
-% arrowhead
-n 6915 1140 m 6885 1260 l 6855 1140 l col0 s
-/Times-Roman ff 270.00 scf sf
-3735 7155 m
-gs 1 -1 sc (Subsystem ID) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman ff 270.00 scf sf
-4635 8145 m
-gs 1 -1 sc (Reserved) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman ff 270.00 scf sf
-4635 8550 m
-gs 1 -1 sc (Reserved) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman ff 270.00 scf sf
-3240 3195 m
-gs 1 -1 sc (BIST) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman ff 210.00 scf sf
-3240 9135 m
-gs 1 -1 sc (Max_Lat) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman ff 210.00 scf sf
-4185 9135 m
-gs 1 -1 sc (Min_Gnt) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman ff 210.00 scf sf
-5085 8955 m
-gs 1 -1 sc (Interrupt) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman ff 210.00 scf sf
-6030 8955 m
-gs 1 -1 sc (Interrupt) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman ff 210.00 scf sf
-5040 3015 m
-gs 1 -1 sc (Latency) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman ff 210.00 scf sf
-5535 6975 m
-gs 1 -1 sc (Subsystem) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman ff 210.00 scf sf
-5535 7200 m
-gs 1 -1 sc (Vendor ID) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman ff 210.00 scf sf
-4725 7695 m
-gs 1 -1 sc (Base address) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman ff 210.00 scf sf
-4725 7470 m
-gs 1 -1 sc (Expansion ROM) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman ff 210.00 scf sf
-6030 3195 m
-gs 1 -1 sc (Size Line) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman ff 210.00 scf sf
-5985 3015 m
-gs 1 -1 sc (Cache) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman ff 210.00 scf sf
-5085 3240 m
-gs 1 -1 sc (Timer) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman ff 270.00 scf sf
-4635 6615 m
-gs 1 -1 sc (CardBus CIS Pointer) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman ff 270.00 scf sf
-4680 6120 m
-gs 1 -1 sc (Base address 5) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman ff 270.00 scf sf
-4680 5625 m
-gs 1 -1 sc (Base address 4) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman ff 270.00 scf sf
-4680 5130 m
-gs 1 -1 sc (Base address 3) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman ff 270.00 scf sf
-4680 4635 m
-gs 1 -1 sc (Base address 2) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman ff 270.00 scf sf
-4680 4140 m
-gs 1 -1 sc (Base address 1) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman ff 270.00 scf sf
-4680 3600 m
-gs 1 -1 sc (Base address 0) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman ff 210.00 scf sf
-5085 9180 m
-gs 1 -1 sc (Pin) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman ff 210.00 scf sf
-6030 9180 m
-gs 1 -1 sc (Line) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman ff 270.00 scf sf
-5535 1665 m
-gs 1 -1 sc (Vendor ID) dup sw pop 2 div neg 0 rm col7 sh gr
-/Times-Roman ff 270.00 scf sf
-4185 2655 m
-gs 1 -1 sc (Class code) dup sw pop 2 div neg 0 rm col7 sh gr
-/Times-Roman ff 210.00 scf sf
-6030 2475 m
-gs 1 -1 sc (Revision) dup sw pop 2 div neg 0 rm col7 sh gr
-/Times-Roman ff 210.00 scf sf
-6030 2730 m
-gs 1 -1 sc (ID) dup sw pop 2 div neg 0 rm col7 sh gr
-/Times-Roman ff 240.00 scf sf
-5625 2160 m
-gs 1 -1 sc (Command register) dup sw pop 2 div neg 0 rm col7 sh gr
-/Times-Roman ff 270.00 scf sf
-3690 2160 m
-gs 1 -1 sc (Status register) dup sw pop 2 div neg 0 rm col7 sh gr
-/Times-Roman ff 270.00 scf sf
-3735 1665 m
-gs 1 -1 sc (Device ID) dup sw pop 2 div neg 0 rm col7 sh gr
-/Times-Roman ff 210.00 scf sf
-4185 2970 m
-gs 1 -1 sc (Header) dup sw pop 2 div neg 0 rm col7 sh gr
-/Times-Roman ff 210.00 scf sf
-4185 3225 m
-gs 1 -1 sc (Type) dup sw pop 2 div neg 0 rm col7 sh gr
-/Times-Roman ff 210.00 scf sf
-3375 9810 m
-gs 1 -1 sc (Required configuration registers) col0 sh gr
-/Times-Roman ff 210.00 scf sf
-6795 1665 m
-gs 1 -1 sc (00) col0 sh gr
-/Times-Roman ff 210.00 scf sf
-6795 4140 m
-gs 1 -1 sc (05) col0 sh gr
-/Times-Roman ff 210.00 scf sf
-6795 4635 m
-gs 1 -1 sc (06) col0 sh gr
-/Times-Roman ff 210.00 scf sf
-6795 2160 m
-gs 1 -1 sc (01) col0 sh gr
-/Times-Roman ff 210.00 scf sf
-6795 2655 m
-gs 1 -1 sc (02) col0 sh gr
-/Times-Roman ff 210.00 scf sf
-6795 3645 m
-gs 1 -1 sc (04) col0 sh gr
-/Times-Roman ff 210.00 scf sf
-6795 3150 m
-gs 1 -1 sc (03) col0 sh gr
-/Times-Roman ff 210.00 scf sf
-6795 5085 m
-gs 1 -1 sc (07) col0 sh gr
-/Times-Roman ff 210.00 scf sf
-6795 5580 m
-gs 1 -1 sc (08) col0 sh gr
-/Times-Roman ff 210.00 scf sf
-6795 6570 m
-gs 1 -1 sc (10) col0 sh gr
-/Times-Roman ff 210.00 scf sf
-6795 7110 m
-gs 1 -1 sc (11) col0 sh gr
-/Times-Roman ff 210.00 scf sf
-6795 7605 m
-gs 1 -1 sc (12) col0 sh gr
-/Times-Roman ff 210.00 scf sf
-6795 6075 m
-gs 1 -1 sc (09) col0 sh gr
-/Times-Roman ff 210.00 scf sf
-6795 8100 m
-gs 1 -1 sc (13) col0 sh gr
-/Times-Roman ff 210.00 scf sf
-6795 8595 m
-gs 1 -1 sc (14) col0 sh gr
-/Times-Roman ff 210.00 scf sf
-6795 9090 m
-gs 1 -1 sc (15) col0 sh gr
-/Times-Roman ff 210.00 scf sf
-5580 855 m
-gs 1 -1 sc (\(in decimal\)) col0 sh gr
-/Times-Roman ff 210.00 scf sf
-4725 630 m
-gs 1 -1 sc (Double word number) col0 sh gr
-$F2psEnd
-rs
diff --git a/doc/networking/PCIreg.jpg b/doc/networking/PCIreg.jpg
deleted file mode 100644
index c03257bed4..0000000000
--- a/doc/networking/PCIreg.jpg
+++ /dev/null
Binary files differ
diff --git a/doc/networking/PCIreg.txt b/doc/networking/PCIreg.txt
deleted file mode 100644
index adff06479e..0000000000
--- a/doc/networking/PCIreg.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-Figure: PCI Device's Configuration Header Space Format
- (Not available in ASCII version of this document.)
diff --git a/doc/networking/decdriver.t b/doc/networking/decdriver.t
deleted file mode 100644
index 74ade6c6d6..0000000000
--- a/doc/networking/decdriver.t
+++ /dev/null
@@ -1,268 +0,0 @@
-@c
-@c RTEMS Remote Debugger Server Specifications
-@c
-@c Written by: Emmanuel Raguet <raguet@crf.canon.fr>
-@c
-
-@chapter DEC 21140 Driver
-
-@section DEC 21240 Driver Introduction
-
-@c XXX add back in cross reference to list of boards.
-
-One aim of our project is to port RTEMS on a standard PowerPC platform.
-To achieve it, we have chosen a Motorola MCP750 board. This board includes
-an Ethernet controller based on a DEC21140 chip. Because RTEMS has a
-TCP/IP stack, we will
-have to develop the DEC21140 related ethernet driver for the PowerPC port of
-RTEMS. As this controller is able to support 100Mbps network and as there is
-a lot of PCI card using this DEC chip, we have decided to first
-implement this driver on an Intel PC386 target to provide a solution for using
-RTEMS on PC with the 100Mbps network and then to port this code on PowerPC in
-a second phase.
-
-
-The aim of this document is to give some PCI board generalities and
-to explain the software architecture of the RTEMS driver. Finally, we will see
-what will be done for ChorusOs and Netboot environment .
-
-
-@section Document Revision History
-
-@b{Current release}:
-
-@itemize @bullet
-@item Current applicable release is 1.0.
-@end itemize
-@b{Existing releases}:
-
-@itemize @bullet
-@item 1.0 : Released the 10/02/98. First version of this document.
-@item 0.1 : First draft of this document
-@end itemize
-@b{Planned releases}:
-
-@itemize @bullet
-@item None planned today.
-@end itemize
-
-@section DEC21140 PCI Board Generalities
-
-@c XXX add crossreference to PCI Register Figure
-This chapter describes rapidely the PCI interface of this Ethernet controller.
-The board we have chosen for our PC386 implementation is a D-Link DFE-500TX.
-This is a dual-speed 10/100Mbps Ethernet PCI adapter with a DEC21140AF chip.
-Like other PCI devices, this board has a PCI device's header containing some
-required configuration registers, as shown in the PCI Register Figure.
-By reading
-or writing these registers, a driver can obtain information about the type of
-the board, the interrupt it uses, the mapping of the chip specific registers, ...
-
-
-
-On Intel target, the chip specific registers can be accessed via 2
-methods : I/O port access or PCI address mapped access. We have chosen to implement
-the PCI address access to obtain compatible source code to the port the driver
-on a PowerPC target.
-
-@c
-@c PCI Device's Configuration Header Space Format
-@c
-
-@ifclear use-html
-@image{PCIreg,,,PCI Device's Configuration Header Space Format}
-@end ifclear
-
-@ifset use-html
-@c <IMG SRC="PCIreg.jpg" WIDTH=500 HEIGHT=600 ALT="PCI Device's Configuration Header Space Format">
-@html
- <IMG SRC="PCIreg.jpg" ALT="PCI Device's Configuration Header Space Format">
-@end html
-@end ifset
-
-
-@c XXX add crossreference to PCI Register Figure
-
-On RTEMS, a PCI API exists. We have used it to configure the board. After initializing
-this PCI module via the @code{pci_initialize()} function, we try to detect
-the DEC21140 based ethernet board. This board is characterized by its Vendor
-ID (0x1011) and its Device ID (0x0009). We give these arguments to the
-@code{pcib_find_by_deviceid}
-function which returns , if the device is present, a pointer to the configuration
-header space (see PCI Registers Fgure). Once this operation performed,
-the driver
-is able to extract the information it needs to configure the board internal
-registers, like the interrupt line, the base address,... The board internal
-registers will not be detailled here. You can find them in @b{DIGITAL
-Semiconductor 21140A PCI Fast Ethernet LAN Controller
-- Hardware Reference Manual}.
-
-@c fix citation
-
-
-@section RTEMS Driver Software Architecture
-
-In this chapter will see the initialization phase, how the controller uses the
-host memory and the 2 threads launched at the initialization time.
-
-
-@subsection Initialization phase
-
-The DEC21140 Ethernet driver keeps the same software architecture than the other
-RTEMS ethernet drivers. The only API the programmer can use is the @code{rtems_dec21140_driver_attach}
-@code{(struct rtems_bsdnet_ifconfig *config)} function which
-detects the board and initializes the associated data structure (with registers
-base address, entry points to low-level initialization function,...), if the
-board is found.
-
-Once the attach function executed, the driver initializes the DEC
-chip. Then the driver connects an interrupt handler to the interrupt line driven
-by the Ethernet controller (the only interrupt which will be treated is the
-receive interrupt) and launches 2 threads : a receiver thread and a transmitter
-thread. Then the driver waits for incoming frame to give to the protocol stack
-or outcoming frame to send on the physical link.
-
-
-@subsection Memory Buffer
-
-@c XXX add cross reference to Problem
-This DEC chip uses the host memory to store the incoming Ethernet frames and
-the descriptor of these frames. We have chosen to use 7 receive buffers and
-1 transmit buffer to optimize memory allocation due to cache and paging problem
-that will be explained in the section @b{Encountered Problems}.
-
-
-To reference these buffers to the DEC chip we use a buffer descriptors
-ring. The descriptor structure is defined in the Buffer Descriptor Figure.
-Each descriptor
-can reference one or two memory buffers. We choose to use only one buffer of
-1520 bytes per descriptor.
-
-
-The difference between a receive and a transmit buffer descriptor
-is located in the status and control bits fields. We do not give details here,
-please refer to the [DEC21140 Hardware Manual].
-
-@c
-@c Buffer Descriptor
-@c
-
-@ifclear use-html
-@image{recvbd,,,"Buffer Descriptor"}
-@end ifclear
-
-@ifset use-html
-@c <IMG SRC="recvbd.jpg" WIDTH=500 HEIGHT=600 ALT="Buffer Descriptor">
-@html
-<IMG SRC="recvbd.jpg" ALT="Buffer Descriptor">
-@end html
-@end ifset
-
-
-
-@subsection Receiver Thread
-
-This thread is event driven. Each time a DEC PCI board interrupt occurs, the
-handler checks if this is a receive interrupt and send an event ``reception''
-to the receiver thread which looks into the entire buffer descriptors ring the
-ones that contain a valid incoming frame (bit OWN=0 means descriptor belongs
-to host processor). Each valid incoming ethernet frame is sent to the protocol
-stack and the buffer descriptor is given back to the DEC board (the host processor
-reset bit OWN, which means descriptor belongs to 21140).
-
-
-@subsection Transmitter Thread
-
-This thread is also event driven. Each time an Ethernet frame is put in the
-transmit queue, an event is sent to the transmit thread, which empty the queue
-by sending each outcoming frame. Because we use only one transmit buffer, we
-are sure that the frame is well-sent before sending the next.
-
-
-@section Encountered Problems
-
-On Intel PC386 target, we were faced with a problem of memory cache management.
-Because the DEC chip uses the host memory to store the incoming frame and because
-the DEC21140 configuration registers are mapped into the PCI address space,
-we must ensure that the data read (or written) by the host processor are the
-ones written (or read) by the DEC21140 device in the host memory and not old
-data stored in the cache memory. Therefore, we had to provide a way to manage
-the cache. This module is described in the document @b{RTEMS
-Cache Management For Intel}. On Intel, the
-memory region cache management is available only if the paging unit is enabled.
-We have used this paging mechanism, with 4Kb page. All the buffers allocated
-to store the incoming or outcoming frames, buffer descriptor and also the PCI
-address space of the DEC board are located in a memory space with cache disable.
-
-
-Concerning the buffers and their descriptors, we have tried to optimize
-the memory space in term of allocated page. One buffer has 1520 bytes, one descriptor
-has 16 bytes. We have 7 receive buffers and 1 transmit buffer, and for each,
-1 descriptor : (7+1)*(1520+16) = 12288 bytes = 12Kb = 3 entire pages. This
-allows not to lose too much memory or not to disable cache memory for a page
-which contains other data than buffer, which could decrease performance.
-
-
-@section ChorusOs DEC Driver
-
-Because ChorusOs is used in several Canon CRF projects, we must provide such
-a driver on this OS to ensure compatibility between the RTEMS and ChorusOs developments.
-On ChorusOs, a DEC driver source code already exists but only for a PowerPC
-target. We plan to port this code (which uses ChorusOs API) on Intel target.
-This will allow us to have homogeneous developments. Moreover, the port of the
-development performed with ChorusOs environment to RTEMS environment will be
-easier for the developers.
-
-
-@section Netboot DEC driver
-
-We use Netboot tool to load our development from a server to the target via
-an ethernet network. Currently, this tool does not support the DEC board. We
-plan to port the DEC driver for the Netboot tool.
-
-
-But concerning the port of the DEC driver into Netboot, we are faced
-with a problem : in RTEMS environment, the DEC driver is interrupt or event
-driven, in Netboot environment, it must be used in polling mode. It means that
-we will have to re-write some mechanisms of this driver.
-
-
-@section List of Ethernet cards using the DEC chip
-
-Many Ethernet adapter cards use the Tulip chip. Here is a non exhaustive list
-of adapters which support this driver :
-
-@itemize @bullet
-@item Accton EtherDuo PCI.
-@item Accton EN1207 All three media types supported.
-@item Adaptec ANA6911/TX 21140-AC.
-@item Cogent EM110 21140-A with DP83840 N-Way MII transceiver.
-@item Cogent EM400 EM100 with 4 21140 100mbps-only ports + PCI Bridge.
-@item Danpex EN-9400P3.
-@item D-Link DFE500-Tx 21140-A with DP83840 transceiver.
-@item Kingston EtherX KNE100TX 21140AE.
-@item Netgear FX310 TX 10/100 21140AE.
-@item SMC EtherPower10/100 With DEC21140 and 68836 SYM transceiver.
-@item SMC EtherPower10/100 With DEC21140-AC and DP83840 MII transceiver.
-Note: The EtherPower II uses the EPIC chip, which requires a different driver.
-@item Surecom EP-320X DEC 21140.
-@item Thomas Conrad TC5048.
-@item Znyx ZX345 21140-A, usually with the DP83840 N-Way MII transciever. Some ZX345
-cards made in 1996 have an ICS 1890 transciver instead.
-@item ZNYX ZX348 Two 21140-A chips using ICS 1890 transcievers and either a 21052
-or 21152 bridge. Early versions used National 83840 transcievers, but later
-versions are depopulated ZX346 boards.
-@item ZNYX ZX351 21140 chip with a Broadcom 100BaseT4 transciever.
-@end itemize
-
-Our DEC driver has not been tested with all these cards, only with the D-Link
-DFE500-TX.
-
-@itemize @code{ }
-@item @cite{[DEC21140 Hardware Manual] DIGITAL, @b{DIGITAL
-Semiconductor 21140A PCI Fast Ethernet LAN Controller - Hardware
-Reference Manual}}.
-
-@item @cite{[99.TA.0021.M.ER]Emmanuel Raguet,
-@b{RTEMS Cache Management For Intel}}.
-@end itemize
diff --git a/doc/networking/driver.t b/doc/networking/driver.t
deleted file mode 100644
index 2f1a4c368e..0000000000
--- a/doc/networking/driver.t
+++ /dev/null
@@ -1,339 +0,0 @@
-@c
-@c Written by Eric Norum
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Networking Driver
-
-@section Introduction
-
-This chapter is intended to provide an introduction to the
-procedure for writing RTEMS network device drivers.
-The example code is taken from the `Generic 68360' network device
-driver. The source code for this driver is located in the
-@code{c/src/lib/libbsp/m68k/gen68360/network} directory in the RTEMS
-source code distribution. Having a copy of this driver at
-hand when reading the following notes will help significantly.
-
-@section Learn about the network device
-
-Before starting to write the network driver become completely
-familiar with the programmer's view of the device.
-The following points list some of the details of the
-device that must be understood before a driver can be written.
-
-@itemize @bullet
-
-@item Does the device use DMA to transfer packets to and from
-memory or does the processor have to
-copy packets to and from memory on the device?
-
-@item If the device uses DMA, is it capable of forming a single
-outgoing packet from multiple fragments scattered in separate
-memory buffers?
-
-@item If the device uses DMA, is it capable of chaining multiple
-outgoing packets, or does each outgoing packet require
-intervention by the driver?
-
-@item Does the device automatically pad short frames to the minimum
-64 bytes or does the driver have to supply the padding?
-
-@item Does the device automatically retry a transmission on detection
-of a collision?
-
-@item If the device uses DMA, is it capable of buffering multiple
-packets to memory, or does the receiver have to be restarted
-after the arrival of each packet?
-
-@item How are packets that are too short, too long, or received with
-CRC errors handled? Does the device automatically continue
-reception or does the driver have to intervene?
-
-@item How is the device Ethernet address set? How is the device
-programmed to accept or reject broadcast and multicast packets?
-
-@item What interrupts does the device generate? Does it generate an
-interrupt for each incoming packet, or only for packets received
-without error? Does it generate an interrupt for each packet
-transmitted, or only when the transmit queue is empty? What
-happens when a transmit error is detected?
-
-@end itemize
-
-In addition, some controllers have specific questions regarding
-board specific configuration. For example, the SONIC Ethernet
-controller has a very configurable data bus interface. It can
-even be configured for sixteen and thirty-two bit data buses. This
-type of information should be obtained from the board vendor.
-
-@section Understand the network scheduling conventions
-
-When writing code for the driver transmit and receive tasks,
-take care to follow the network scheduling conventions. All tasks
-which are associated with networking share various
-data structures and resources. To ensure the consistency
-of these structures the tasks
-execute only when they hold the network semaphore (@code{rtems_bsdnet_semaphore}).
-The transmit and receive tasks must abide by this protocol. Be very
-careful to avoid `deadly embraces' with the other network tasks.
-A number of routines are provided to make it easier for the network
-driver code to conform to the network task scheduling conventions.
-
-@itemize @bullet
-
-@item @code{void rtems_bsdnet_semaphore_release(void)}
-
-This function releases the network semaphore.
-The network driver tasks must call this function immediately before
-making any blocking RTEMS request.
-
-@item @code{void rtems_bsdnet_semaphore_obtain(void)}
-
-This function obtains the network semaphore.
-If a network driver task has released the network semaphore to allow other
-network-related tasks to run while the task blocks, then this function must
-be called to reobtain the semaphore immediately after the return from the
-blocking RTEMS request.
-
-@item @code{rtems_bsdnet_event_receive(rtems_event_set, rtems_option, rtems_interval, rtems_event_set *)}
-The network driver task should call this function when it wishes to wait
-for an event. This function releases the network semaphore,
-calls @code{rtems_event_receive} to wait for the specified event
-or events and reobtains the semaphore.
-The value returned is the value returned by the @code{rtems_event_receive}.
-
-@end itemize
-
-@section Network Driver Makefile
-
-Network drivers are considered part of the BSD network package and as such
-are to be compiled with the appropriate flags. This can be accomplished by
-adding @code{-D__INSIDE_RTEMS_BSD_TCPIP_STACK__} to the @code{command line}.
-If the driver is inside the RTEMS source tree or is built using the
-RTEMS application Makefiles, then adding the following line accomplishes
-this:
-
-@example
-DEFINES += -D__INSIDE_RTEMS_BSD_TCPIP_STACK__
-@end example
-
-This is equivalent to the following list of definitions. Early versions
-of the RTEMS BSD network stack required that all of these be defined.
-
-@example
--D_COMPILING_BSD_KERNEL_ -DKERNEL -DINET -DNFS \
- -DDIAGNOSTIC -DBOOTP_COMPAT
-@end example
-
-Defining these macros tells the network header files that the driver
-is to be compiled with extended visibility into the network stack. This
-is in sharp contrast to applications that simply use the network stack.
-Applications do not require this level of visibility and should stick
-to the portable application level API.
-
-As a direct result of being logically internal to the network stack,
-network drivers use the BSD memory allocation routines This means,
-for example, that malloc takes three arguments. See the SONIC
-device driver (@code{c/src/lib/libchip/network/sonic.c}) for an example
-of this. Because of this, network drivers should not include
-@code{<stdlib.h>}. Doing so will result in conflicting definitions
-of @code{malloc()}.
-
-@b{Application level} code including network servers such as the FTP
-daemon are @b{not} part of the BSD kernel network code and should not be
-compiled with the BSD network flags. They should include
-@code{<stdlib.h>} and not define the network stack visibility
-macros.
-
-@section Write the Driver Attach Function
-
-The driver attach function is responsible for configuring the driver
-and making the connection between the network stack
-and the driver.
-
-Driver attach functions take a pointer to an
-@code{rtems_bsdnet_ifconfig} structure as their only argument.
-and set the driver parameters based on the
-values in this structure. If an entry in the configuration
-structure is zero the attach function chooses an
-appropriate default value for that parameter.
-
-
-The driver should then set up several fields in the ifnet structure
-in the device-dependent data structure supplied and maintained by the driver:
-
-@table @code
-@item ifp->if_softc
-Pointer to the device-dependent data. The first entry
-in the device-dependent data structure must be an @code{arpcom}
-structure.
-
-@item ifp->if_name
-The name of the device. The network stack uses this string
-and the device number for device name lookups. The device name should
-be obtained from the @code{name} entry in the configuration structure.
-
-@item ifp->if_unit
-The device number. The network stack uses this number and the
-device name for device name lookups. For example, if
-@code{ifp->if_name} is @samp{scc} and @code{ifp->if_unit} is @samp{1},
-the full device name would be @samp{scc1}. The unit number should be
-obtained from the `name' entry in the configuration structure.
-
-@item ifp->if_mtu
-The maximum transmission unit for the device. For Ethernet
-devices this value should almost always be 1500.
-
-@item ifp->if_flags
-The device flags. Ethernet devices should set the flags
-to @code{IFF_BROADCAST|IFF_SIMPLEX}, indicating that the
-device can broadcast packets to multiple destinations
-and does not receive and transmit at the same time.
-
-@item ifp->if_snd.ifq_maxlen
-The maximum length of the queue of packets waiting to be
-sent to the driver. This is normally set to @code{ifqmaxlen}.
-
-@item ifp->if_init
-The address of the driver initialization function.
-
-@item ifp->if_start
-The address of the driver start function.
-
-@item ifp->if_ioctl
-The address of the driver ioctl function.
-
-@item ifp->if_output
-The address of the output function. Ethernet devices
-should set this to @code{ether_output}.
-@end table
-
-RTEMS provides a function to parse the driver name in the
-configuration structure into a device name and unit number.
-
-@example
-int rtems_bsdnet_parse_driver_name (
- const struct rtems_bsdnet_ifconfig *config,
- char **namep
-);
-@end example
-
-The function takes two arguments; a pointer to the configuration
-structure and a pointer to a pointer to a character. The function
-parses the configuration name entry, allocates memory for the driver
-name, places the driver name in this memory, sets the second argument
-to point to the name and returns the unit number.
-On error, a message is printed and -1 is returned.
-
-Once the attach function has set up the above entries it must link the
-driver data structure onto the list of devices by
-calling @code{if_attach}. Ethernet devices should then
-call @code{ether_ifattach}. Both functions take a pointer to the
-device's @code{ifnet} structure as their only argument.
-
-The attach function should return a non-zero value to indicate that
-the driver has been successfully configured and attached.
-
-@section Write the Driver Start Function.
-This function is called each time the network stack wants to start the
-transmitter. This occures whenever the network stack adds a packet
-to a device's send queue and the @code{IFF_OACTIVE} bit in the
-device's @code{if_flags} is not set.
-
-For many devices this function need only set the @code{IFF_OACTIVE} bit in the
-@code{if_flags} and send an event to the transmit task
-indicating that a packet is in the driver transmit queue.
-
-
-@section Write the Driver Initialization Function.
-
-This function should initialize the device, attach to interrupt handler,
-and start the driver transmit and receive tasks. The function
-
-@example
-rtems_id
-rtems_bsdnet_newproc (char *name,
- int stacksize,
- void(*entry)(void *),
- void *arg);
-@end example
-
-should be used to start the driver tasks.
-
-Note that the network stack may call the driver initialization function more
-than once.
-Make sure multiple versions of the receive and transmit tasks are not accidentally
-started.
-
-
-
-@section Write the Driver Transmit Task
-
-This task is reponsible for removing packets from the driver send queue and sending them to the device. The task should block waiting for an event from the
-driver start function indicating that packets are waiting to be transmitted.
-When the transmit task has drained the driver send queue the task should clear
-the @code{IFF_OACTIVE} bit in @code{if_flags} and block until another outgoing
-packet is queued.
-
-
-@section Write the Driver Receive Task
-This task should block until a packet arrives from the device. If the
-device is an Ethernet interface the function @code{ether_input} should be called
-to forward the packet to the network stack. The arguments to @code{ether_input}
-are a pointer to the interface data structure, a pointer to the ethernet
-header and a pointer to an mbuf containing the packet itself.
-
-
-
-
-@section Write the Driver Interrupt Handler
-A typical interrupt handler will do nothing more than the hardware
-manipulation required to acknowledge the interrupt and send an RTEMS event
-to wake up the driver receive or transmit task waiting for the event.
-Network interface interrupt handlers must not make any calls to other
-network routines.
-
-
-
-@section Write the Driver IOCTL Function
-This function handles ioctl requests directed at the device. The ioctl
-commands which must be handled are:
-
-@table @code
-@item SIOCGIFADDR
-@item SIOCSIFADDR
-If the device is an Ethernet interface these
-commands should be passed on to @code{ether_ioctl}.
-
-@item SIOCSIFFLAGS
-This command should be used to start or stop the device,
-depending on the state of the interface @code{IFF_UP} and
-@code{IFF_RUNNING} bits in @code{if_flags}:
-@table @code
-@item IFF_RUNNING
-Stop the device.
-
-@item IFF_UP
-Start the device.
-
-@item IFF_UP|IFF_RUNNING
-Stop then start the device.
-
-@item 0
-Do nothing.
-
-@end table
-@end table
-
-
-
-@section Write the Driver Statistic-Printing Function
-This function should print the values of any statistic/diagnostic
-counters the network driver may use. The driver ioctl function should call
-the statistic-printing function when the ioctl command is
-@code{SIO_RTEMS_SHOW_STATS}.
-
-
diff --git a/doc/networking/networkapp.t b/doc/networking/networkapp.t
deleted file mode 100644
index dd356a80a6..0000000000
--- a/doc/networking/networkapp.t
+++ /dev/null
@@ -1,924 +0,0 @@
-@c
-@c Written by Eric Norum
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Using Networking in an RTEMS Application
-
-@section Makefile changes
-@subsection Including the required managers
-The FreeBSD networking code requires several RTEMS managers
-in the application:
-
-@example
-MANAGERS = io event semaphore
-@end example
-
-@subsection Increasing the size of the heap
-The networking tasks allocate a lot of memory. For most applications
-the heap should be at least 256 kbytes.
-The amount of memory set aside for the heap can be adjusted by setting
-the @code{CFLAGS_LD} definition as shown below:
-
-@example
-CFLAGS_LD += -Wl,--defsym -Wl,HeapSize=0x80000
-@end example
-
-This sets aside 512 kbytes of memory for the heap.
-
-@section System Configuration
-
-The networking tasks allocate some RTEMS objects. These
-must be accounted for in the application configuration table. The following
-lists the requirements.
-
-@table @b
-@item TASKS
-One network task plus a receive and transmit task for each device.
-
-@item SEMAPHORES
-One network semaphore plus one syslog mutex semaphore if the application uses
-openlog/syslog.
-
-@item EVENTS
-The network stack uses @code{RTEMS_EVENT_24} and @code{RTEMS_EVENT_25}.
-This has no effect on the application configuration, but
-application tasks which call the network functions should not
-use these events for other purposes.
-
-@end table
-
-@section Initialization
-@subsection Additional include files
-The source file which declares the network configuration
-structures and calls the network initialization function must include
-
-@example
-#include <rtems/rtems_bsdnet.h>
-@end example
-
-@subsection Network Configuration
-The network configuration is specified by declaring
-and initializing the @code{rtems_bsdnet_config}
-structure.
-
-@example
-@group
-struct rtems_bsdnet_config @{
- /*
- * This entry points to the head of the ifconfig chain.
- */
- struct rtems_bsdnet_ifconfig *ifconfig;
-
- /*
- * This entry should be rtems_bsdnet_do_bootp if BOOTP
- * is being used to configure the network, and NULL
- * if BOOTP is not being used.
- */
- void (*bootp)(void);
-
- /*
- * The remaining items can be initialized to 0, in
- * which case the default value will be used.
- */
- rtems_task_priority network_task_priority; /* 100 */
- unsigned long mbuf_bytecount; /* 64 kbytes */
- unsigned long mbuf_cluster_bytecount; /* 128 kbytes */
- char *hostname; /* BOOTP */
- char *domainname; /* BOOTP */
- char *gateway; /* BOOTP */
- char *log_host; /* BOOTP */
- char *name_server[3]; /* BOOTP */
- char *ntp_server[3]; /* BOOTP */
- unsigned long sb_efficiency; /* 2 */
- /* UDP TX: 9216 bytes */
- unsigned long udp_tx_buf_size;
- /* UDP RX: 40 * (1024 + sizeof(struct sockaddr_in)) */
- unsigned long udp_rx_buf_size;
- /* TCP TX: 16 * 1024 bytes */
- unsigned long tcp_tx_buf_size;
- /* TCP TX: 16 * 1024 bytes */
- unsigned long tcp_rx_buf_size;
- /* Default Network Tasks CPU Affinity */
-#ifdef RTEMS_SMP
- const cpu_set_t *network_task_cpuset;
- size_t network_task_cpuset_size;
-#endif
-@};
-@end group
-@end example
-
-The structure entries are described in the following table.
-If your application uses BOOTP/DHCP to obtain network configuration
-information and if you are happy with the default values described
-below, you need to provide only the first two entries in this structure.
-
-@table @code
-
-@item struct rtems_bsdnet_ifconfig *ifconfig
-A pointer to the first configuration structure of the first network
-device. This structure is described in the following section.
-You must provide a value for this entry since there is no default value for it.
-
-@item void (*bootp)(void)
-This entry should be set to @code{rtems_bsdnet_do_bootp} if your
-application by default uses the BOOTP/DHCP client protocol to obtain
-network configuration information. It should be set to @code{NULL} if
-your application does not use BOOTP/DHCP.
-
-You can also use @code{rtems_bsdnet_do_bootp_rootfs} to have a set of
-standard files created with the information return by the BOOTP/DHCP
-protocol. The IP address is added to @file{/etc/hosts} with the host
-name and domain returned. If no host name or domain is returned
-@code{me.mydomain} is used. The BOOTP/DHCP server's address is also
-added to @file{/etc/hosts}. The domain name server listed in the
-BOOTP/DHCP information are added to @file{/etc/resolv.conf}. A
-@code{search} record is also added if a domain is returned. The files
-are created if they do not exist.
-
-The default @code{rtems_bsdnet_do_bootp} and
-@code{rtems_bsdnet_do_bootp_rootfs} handlers will loop for-ever
-waiting for a BOOTP/DHCP server to respond. If an error is detected
-such as not valid interface or valid hardware address the target will
-reboot allowing any hardware reset to correct itself.
-
-You can provide your own custom handler which allows you to perform
-an initialization that meets your specific system requirements. For
-example you could try BOOTP/DHCP then enter a configuration tool if no
-server is found allowing the user to switch to a static configuration.
-
-@item int network_task_priority
-The priority at which the network task and network device
-receive and transmit tasks will run.
-If a value of 0 is specified the tasks will run at priority 100.
-
-@item unsigned long mbuf_bytecount
-The number of bytes to allocate from the heap for use as mbufs.
-If a value of 0 is specified, 64 kbytes will be allocated.
-
-@item unsigned long mbuf_cluster_bytecount
-The number of bytes to allocate from the heap for use as mbuf clusters.
-If a value of 0 is specified, 128 kbytes will be allocated.
-
-@item char *hostname
-The host name of the system.
-If this, or any of the following, entries are @code{NULL} the value
-may be obtained from a BOOTP/DHCP server.
-
-@item char *domainname
-The name of the Internet domain to which the system belongs.
-
-@item char *gateway
-The Internet host number of the network gateway machine,
-specified in 'dotted decimal' (@code{129.128.4.1}) form.
-
-@item char *log_host
-The Internet host number of the machine to which @code{syslog} messages
-will be sent.
-
-@item char *name_server[3]
-The Internet host numbers of up to three machines to be used as
-Internet Domain Name Servers.
-
-@item char *ntp_server[3]
-The Internet host numbers of up to three machines to be used as
-Network Time Protocol (NTP) Servers.
-
-@item unsigned long sb_efficiency
-This is the first of five configuration parameters related to
-the amount of memory each socket may consume for buffers. The
-TCP/IP stack reserves buffers (e.g. mbufs) for each open socket. The
-TCP/IP stack has different limits for the transmit and receive
-buffers associated with each TCP and UDP socket. By tuning these
-parameters, the application developer can make trade-offs between
-memory consumption and performance. The default parameters favor
-performance over memory consumption. See
-@uref{http://www.rtems.org/ml/rtems-users/2004/february/msg00200.html}
-for more details but note that after the RTEMS 4.8 release series,
-the sb_efficiency default was changed from @code{8} to @code{2}.
-
-The user should also be aware of the @code{SO_SNDBUF} and @code{SO_RCVBUF}
-IO control operations. These can be used to specify the
-send and receive buffer sizes for a specific socket. There
-is no standard IO control to change the @code{sb_efficiency} factor.
-
-The @code{sb_efficiency} parameter is a buffering factor used
-in the implementation of the TCP/IP stack. The default is @code{2}
-which indicates double buffering. When allocating memory for each
-socket, this number is multiplied by the buffer sizes for that socket.
-
-@item unsigned long udp_tx_buf_size
-This configuration parameter specifies the maximum amount of
-buffer memory which may be used for UDP sockets to transmit
-with. The default size is 9216 bytes which corresponds to
-the maximum datagram size.
-
-@item unsigned long udp_rx_buf_size
-This configuration parameter specifies the maximum amount of
-buffer memory which may be used for UDP sockets to receive
-into. The default size is the following length in bytes:
-
-@example
-40 * (1024 + sizeof(struct sockaddr_in)
-@end example
-
-@item unsigned long tcp_tx_buf_size
-This configuration parameter specifies the maximum amount of
-buffer memory which may be used for TCP sockets to transmit
-with. The default size is sixteen kilobytes.
-
-@item unsigned long tcp_rx_buf_size
-This configuration parameter specifies the maximum amount of
-buffer memory which may be used for TCP sockets to receive
-into. The default size is sixteen kilobytes.
-
-@item const cpu_set_t *network_task_cpuset
-This configuration parameter specifies the CPU affinity of the
-network task. If set to @code{0} the network task can be scheduled on
-any CPU. Only available in SMP configurations.
-
-@item size_t network_task_cpuset_size
-This configuration parameter specifies the size of the
-@code{network_task_cpuset} used. Only available in SMP configurations.
-
-@end table
-
-In addition, the following fields in the @code{rtems_bsdnet_ifconfig}
-are of interest.
-
-@table @b
-
-@item int port
-The I/O port number (ex: 0x240) on which the external Ethernet
-can be accessed.
-
-@item int irno
-The interrupt number of the external Ethernet controller.
-
-@item int bpar
-The address of the shared memory on the external Ethernet controller.
-
-
-@end table
-
-@subsection Network device configuration
-Network devices are specified and configured by declaring and initializing a
-@code{struct rtems_bsdnet_ifconfig} structure for each network device.
-
-The structure entries are described in the following table. An application
-which uses a single network interface, gets network configuration information
-from a BOOTP/DHCP server, and uses the default values for all driver
-parameters needs to initialize only the first two entries in the
-structure.
-
-@table @code
-@item char *name
-The full name of the network device. This name consists of the
-driver name and the unit number (e.g. @code{"scc1"}).
-The @code{bsp.h} include file usually defines RTEMS_BSP_NETWORK_DRIVER_NAME as
-the name of the primary (or only) network driver.
-
-@item int (*attach)(struct rtems_bsdnet_ifconfig *conf)
-The address of the driver @code{attach} function. The network
-initialization function calls this function to configure the driver and
-attach it to the network stack.
-The @code{bsp.h} include file usually defines RTEMS_BSP_NETWORK_DRIVER_ATTACH as
-the name of the attach function of the primary (or only) network driver.
-
-@item struct rtems_bsdnet_ifconfig *next
-A pointer to the network device configuration structure for the next network
-interface, or @code{NULL} if this is the configuration structure of the
-last network interface.
-
-@item char *ip_address
-The Internet address of the device,
-specified in `dotted decimal' (@code{129.128.4.2}) form, or @code{NULL}
-if the device configuration information is being obtained from a
-BOOTP/DHCP server.
-
-@item char *ip_netmask
-The Internet inetwork mask of the device,
-specified in `dotted decimal' (@code{255.255.255.0}) form, or @code{NULL}
-if the device configuration information is being obtained from a
-BOOTP/DHCP server.
-
-
-@item void *hardware_address
-The hardware address of the device, or @code{NULL} if the driver is
-to obtain the hardware address in some other way (usually by reading
-it from the device or from the bootstrap ROM).
-
-@item int ignore_broadcast
-Zero if the device is to accept broadcast packets, non-zero if the device
-is to ignore broadcast packets.
-
-@item int mtu
-The maximum transmission unit of the device, or zero if the driver
-is to choose a default value (typically 1500 for Ethernet devices).
-
-@item int rbuf_count
-The number of receive buffers to use, or zero if the driver is to
-choose a default value
-
-@item int xbuf_count
-The number of transmit buffers to use, or zero if the driver is to
-choose a default value
-Keep in mind that some network devices may use 4 or more
-transmit descriptors for a single transmit buffer.
-
-@end table
-
-A complete network configuration specification can be as simple as the one
-shown in the following example.
-This configuration uses a single network interface, gets
-network configuration information
-from a BOOTP/DHCP server, and uses the default values for all driver
-parameters.
-
-@example
-static struct rtems_bsdnet_ifconfig netdriver_config = @{
- RTEMS_BSP_NETWORK_DRIVER_NAME,
- RTEMS_BSP_NETWORK_DRIVER_ATTACH
-@};
-struct rtems_bsdnet_config rtems_bsdnet_config = @{
- &netdriver_config,
- rtems_bsdnet_do_bootp,
-@};
-@end example
-
-
-@subsection Network initialization
-The networking tasks must be started before any network I/O operations
-can be performed. This is done by calling:
-
-
-@example
-rtems_bsdnet_initialize_network ();
-@end example
-
-This function is declared in @code{rtems/rtems_bsdnet.h}.
-t returns 0 on success and -1 on failure with an error code
-in @code{errno}. It is not possible to undo the effects of
-a partial initialization, though, so the function can be
-called only once irregardless of the return code. Consequently,
-if the condition for the failure can be corrected, the
-system must be reset to permit another network initialization
-attempt.
-
-
-
-@section Application Programming Interface
-
-The RTEMS network package provides almost a complete set of BSD network
-services. The network functions work like their BSD counterparts
-with the following exceptions:
-
-@itemize @bullet
-@item A given socket can be read or written by only one task at a time.
-
-@item The @code{select} function only works for file descriptors associated
-with sockets.
-
-@item You must call @code{openlog} before calling any of the @code{syslog} functions.
-
-@item @b{Some of the network functions are not thread-safe.}
-For example the following functions return a pointer to a static
-buffer which remains valid only until the next call:
-
-@table @code
-@item gethostbyaddr
-@item gethostbyname
-@item inet_ntoa
-(@code{inet_ntop} is thread-safe, though).
-@end table
-
-@item The RTEMS network package gathers statistics.
-
-@item Addition of a mechanism to "tap onto" an interface
-and monitor every packet received and transmitted.
-
-@item Addition of @code{SO_SNDWAKEUP} and @code{SO_RCVWAKEUP} socket options.
-
-@end itemize
-
-Some of the new features are discussed in more detail in the following
-sections.
-
-@subsection Network Statistics
-
-There are a number of functions to print statistics gathered by
-the network stack.
-These function are declared in @code{rtems/rtems_bsdnet.h}.
-
-@table @code
-@item rtems_bsdnet_show_if_stats
-Display statistics gathered by network interfaces.
-
-@item rtems_bsdnet_show_ip_stats
-Display IP packet statistics.
-
-@item rtems_bsdnet_show_icmp_stats
-Display ICMP packet statistics.
-
-@item rtems_bsdnet_show_tcp_stats
-Display TCP packet statistics.
-
-@item rtems_bsdnet_show_udp_stats
-Display UDP packet statistics.
-
-@item rtems_bsdnet_show_mbuf_stats
-Display mbuf statistics.
-
-@item rtems_bsdnet_show_inet_routes
-Display the routing table.
-
-@end table
-
-@subsection Tapping Into an Interface
-
-RTEMS add two new ioctls to the BSD networking code:
-SIOCSIFTAP and SIOCGIFTAP. These may be used to set and get a
-@i{tap function}. The tap function will be called for every
-Ethernet packet received by the interface.
-
-These are called like other interface ioctls, such as SIOCSIFADDR.
-When setting the tap function with SIOCSIFTAP, set the ifr_tap field
-of the ifreq struct to the tap function. When retrieving the tap
-function with SIOCGIFTAP, the current tap function will be returned in
-the ifr_tap field. To stop tapping packets, call SIOCSIFTAP with a
-ifr_tap field of 0.
-
-The tap function is called like this:
-
-@example
-int tap (struct ifnet *, struct ether_header *, struct mbuf *)
-@end example
-
-The tap function should return 1 if the packet was fully handled, in
-which case the caller will simply discard the mbuf. The tap function
-should return 0 if the packet should be passed up to the higher
-networking layers.
-
-The tap function is called with the network semaphore locked. It must
-not make any calls on the application levels of the networking level
-itself. It is safe to call other non-networking RTEMS functions.
-
-@subsection Socket Options
-
-RTEMS adds two new @code{SOL_SOCKET} level options for @code{setsockopt} and
-@code{getsockopt}: @code{SO_SNDWAKEUP} and @code{SO_RCVWAKEUP}. For both, the
-option value should point to a sockwakeup structure. The sockwakeup
-structure has the following fields:
-
-@example
-@group
- void (*sw_pfn) (struct socket *, caddr_t);
- caddr_t sw_arg;
-@end group
-@end example
-
-These options are used to set a callback function to be called when, for
-example, there is
-data available from the socket (@code{SO_RCVWAKEUP}) and when there is space
-available to accept data written to the socket (@code{SO_SNDWAKEUP}).
-
-If @code{setsockopt} is called with the @code{SO_RCVWAKEUP} option, and the
-@code{sw_pfn} field is not zero, then when there is data
-available to be read from
-the socket, the function pointed to by the @code{sw_pfn} field will be
-called. A pointer to the socket structure will be passed as the first
-argument to the function. The @code{sw_arg} field set by the
-@code{SO_RCVWAKEUP} call will be passed as the second argument to the function.
-
-If @code{setsockopt} is called with the @code{SO_SNDWAKEUP}
-function, and the @code{sw_pfn} field is not zero, then when
-there is space available to accept data written to the socket,
-the function pointed to by the @code{sw_pfn} field
-will be called. The arguments passed to the function will be as with
-@code{SO_SNDWAKEUP}.
-
-When the function is called, the network semaphore will be locked and
-the callback function runs in the context of the networking task.
-The function must be careful not to call any networking functions. It
-is OK to call an RTEMS function; for example, it is OK to send an
-RTEMS event.
-
-The purpose of these callback functions is to permit a more efficient
-alternative to the select call when dealing with a large number of
-sockets.
-
-The callbacks are called by the same criteria that the select
-function uses for indicating "ready" sockets. In Stevens @cite{Unix
-Network Programming} on page 153-154 in the section "Under what Conditions
-Is a Descriptor Ready?" you will find the definitive list of conditions
-for readable and writable that also determine when the functions are
-called.
-
-When the number of received bytes equals or exceeds the socket receive
-buffer "low water mark" (default 1 byte) you get a readable callback. If
-there are 100 bytes in the receive buffer and you only read 1, you will
-not immediately get another callback. However, you will get another
-callback after you read the remaining 99 bytes and at least 1 more byte
-arrives. Using a non-blocking socket you should probably read until it
-produces error EWOULDBLOCK and then allow the readable callback to tell
-you when more data has arrived. (Condition 1.a.)
-
-For sending, when the socket is connected and the free space becomes at
-or above the "low water mark" for the send buffer (default 4096 bytes)
-you will receive a writable callback. You don't get continuous callbacks
-if you don't write anything. Using a non-blocking write socket, you can
-then call write until it returns a value less than the amount of data
-requested to be sent or it produces error EWOULDBLOCK (indicating buffer
-full and no longer writable). When this happens you can
-try the write again, but it is often better to go do other things and
-let the writable callback tell you when space is available to send
-again. You only get a writable callback when the free space transitions
-to above the "low water mark" and not every time you
-write to a non-full send buffer. (Condition 2.a.)
-
-The remaining conditions enumerated by Stevens handle the fact that
-sockets become readable and/or writable when connects, disconnects and
-errors occur, not just when data is received or sent. For example, when
-a server "listening" socket becomes readable it indicates that a client
-has connected and accept can be called without blocking, not that
-network data was received (Condition 1.c).
-
-@subsection Adding an IP Alias
-
-The following code snippet adds an IP alias:
-
-@example
-void addAlias(const char *pName, const char *pAddr, const char *pMask)
-@{
- struct ifaliasreq aliasreq;
- struct sockaddr_in *in;
-
- /* initialize alias request */
- memset(&aliasreq, 0, sizeof(aliasreq));
- sprintf(aliasreq.ifra_name, pName);
-
- /* initialize alias address */
- in = (struct sockaddr_in *)&aliasreq.ifra_addr;
- in->sin_family = AF_INET;
- in->sin_len = sizeof(aliasreq.ifra_addr);
- in->sin_addr.s_addr = inet_addr(pAddr);
-
- /* initialize alias mask */
- in = (struct sockaddr_in *)&aliasreq.ifra_mask;
- in->sin_family = AF_INET;
- in->sin_len = sizeof(aliasreq.ifra_mask);
- in->sin_addr.s_addr = inet_addr(pMask);
-
- /* call to setup the alias */
- rtems_bsdnet_ifconfig(pName, SIOCAIFADDR, &aliasreq);
-@}
-@end example
-
-Thanks to @uref{mailto:mikes@@poliac.com,Mike Seirs} for this example
-code.
-
-@subsection Adding a Default Route
-
-The function provided in this section is functionally equivalent to
-the command @code{route add default gw yyy.yyy.yyy.yyy}:
-
-@example
-void mon_ifconfig(int argc, char *argv[], unsigned32 command_arg,
- bool verbose)
-@{
- struct sockaddr_in ipaddr;
- struct sockaddr_in dstaddr;
- struct sockaddr_in netmask;
- struct sockaddr_in broadcast;
- char *iface;
- int f_ip = 0;
- int f_ptp = 0;
- int f_netmask = 0;
- int f_up = 0;
- int f_down = 0;
- int f_bcast = 0;
- int cur_idx;
- int rc;
- int flags;
-
- bzero((void*) &ipaddr, sizeof(ipaddr));
- bzero((void*) &dstaddr, sizeof(dstaddr));
- bzero((void*) &netmask, sizeof(netmask));
- bzero((void*) &broadcast, sizeof(broadcast));
-
- ipaddr.sin_len = sizeof(ipaddr);
- ipaddr.sin_family = AF_INET;
-
- dstaddr.sin_len = sizeof(dstaddr);
- dstaddr.sin_family = AF_INET;
-
- netmask.sin_len = sizeof(netmask);
- netmask.sin_family = AF_INET;
-
- broadcast.sin_len = sizeof(broadcast);
- broadcast.sin_family = AF_INET;
-
- cur_idx = 0;
- if (argc <= 1) @{
- /* display all interfaces */
- iface = NULL;
- cur_idx += 1;
- @} else @{
- iface = argv[1];
- if (isdigit(*argv[2])) @{
- if (inet_pton(AF_INET, argv[2], &ipaddr.sin_addr) < 0) @{
- printf("bad ip address: %s\n", argv[2]);
- return;
- @}
- f_ip = 1;
- cur_idx += 3;
- @} else @{
- cur_idx += 2;
- @}
- @}
-
- if ((f_down !=0) && (f_ip != 0)) @{
- f_up = 1;
- @}
-
- while(argc > cur_idx) @{
- if (strcmp(argv[cur_idx], "up") == 0) @{
- f_up = 1;
- if (f_down != 0) @{
- printf("Can't make interface up and down\n");
- @}
- @} else if(strcmp(argv[cur_idx], "down") == 0) @{
- f_down = 1;
- if (f_up != 0) @{
- printf("Can't make interface up and down\n");
- @}
- @} else if(strcmp(argv[cur_idx], "netmask") == 0) @{
- if ((cur_idx + 1) >= argc) @{
- printf("No netmask address\n");
- return;
- @}
- if (inet_pton(AF_INET, argv[cur_idx+1], &netmask.sin_addr) < 0) @{
- printf("bad netmask: %s\n", argv[cur_idx]);
- return;
- @}
- f_netmask = 1;
- cur_idx += 1;
- @} else if(strcmp(argv[cur_idx], "broadcast") == 0) @{
- if ((cur_idx + 1) >= argc) @{
- printf("No broadcast address\n");
- return;
- @}
- if (inet_pton(AF_INET, argv[cur_idx+1], &broadcast.sin_addr) < 0) @{
- printf("bad broadcast: %s\n", argv[cur_idx]);
- return;
- @}
- f_bcast = 1;
- cur_idx += 1;
- @} else if(strcmp(argv[cur_idx], "pointopoint") == 0) @{
- if ((cur_idx + 1) >= argc) @{
- printf("No pointopoint address\n");
- return;
- @}
- if (inet_pton(AF_INET, argv[cur_idx+1], &dstaddr.sin_addr) < 0) @{
- printf("bad pointopoint: %s\n", argv[cur_idx]);
- return;
- @}
-
- f_ptp = 1;
- cur_idx += 1;
- @} else @{
- printf("Bad parameter: %s\n", argv[cur_idx]);
- return;
- @}
-
- cur_idx += 1;
- @}
-
- printf("ifconfig ");
- if (iface != NULL) @{
- printf("%s ", iface);
- if (f_ip != 0) @{
- char str[256];
- inet_ntop(AF_INET, &ipaddr.sin_addr, str, 256);
- printf("%s ", str);
- @}
-
- if (f_netmask != 0) @{
- char str[256];
- inet_ntop(AF_INET, &netmask.sin_addr, str, 256);
- printf("netmask %s ", str);
- @}
-
- if (f_bcast != 0) @{
- char str[256];
- inet_ntop(AF_INET, &broadcast.sin_addr, str, 256);
- printf("broadcast %s ", str);
- @}
-
- if (f_ptp != 0) @{
- char str[256];
- inet_ntop(AF_INET, &dstaddr.sin_addr, str, 256);
- printf("pointopoint %s ", str);
- @}
-
- if (f_up != 0) @{
- printf("up\n");
- @} else if (f_down != 0) @{
- printf("down\n");
- @} else @{
- printf("\n");
- @}
- @}
-
- if ((iface == NULL) || ((f_ip == 0) && (f_down == 0) && (f_up == 0))) @{
- rtems_bsdnet_show_if_stats();
- return;
- @}
-
- flags = 0;
- if (f_netmask) @{
- rc = rtems_bsdnet_ifconfig(iface, SIOCSIFNETMASK, &netmask);
- if (rc < 0) @{
- printf("Could not set netmask: %s\n", strerror(errno));
- return;
- @}
- @}
-
- if (f_bcast) @{
- rc = rtems_bsdnet_ifconfig(iface, SIOCSIFBRDADDR, &broadcast);
- if (rc < 0) @{
- printf("Could not set broadcast: %s\n", strerror(errno));
- return;
- @}
- @}
-
- if (f_ptp) @{
- rc = rtems_bsdnet_ifconfig(iface, SIOCSIFDSTADDR, &dstaddr);
- if (rc < 0) @{
- printf("Could not set destination address: %s\n", strerror(errno));
- return;
- @}
- flags |= IFF_POINTOPOINT;
- @}
-
- /* This must come _after_ setting the netmask, broadcast addresses */
- if (f_ip) @{
- rc = rtems_bsdnet_ifconfig(iface, SIOCSIFADDR, &ipaddr);
- if (rc < 0) @{
- printf("Could not set IP address: %s\n", strerror(errno));
- return;
- @}
- @}
-
- if (f_up != 0) @{
- flags |= IFF_UP;
- @}
-
- if (f_down != 0) @{
- printf("Warning: taking interfaces down is not supported\n");
- @}
-
- rc = rtems_bsdnet_ifconfig(iface, SIOCSIFFLAGS, &flags);
- if (rc < 0) @{
- printf("Could not set interface flags: %s\n", strerror(errno));
- return;
- @}
-@}
-
-
-
-void mon_route(int argc, char *argv[], unsigned32 command_arg,
- bool verbose)
-@{
- int cmd;
- struct sockaddr_in dst;
- struct sockaddr_in gw;
- struct sockaddr_in netmask;
- int f_host;
- int f_gw = 0;
- int cur_idx;
- int flags;
- int rc;
-
- memset(&dst, 0, sizeof(dst));
- memset(&gw, 0, sizeof(gw));
- memset(&netmask, 0, sizeof(netmask));
-
- dst.sin_len = sizeof(dst);
- dst.sin_family = AF_INET;
- dst.sin_addr.s_addr = inet_addr("0.0.0.0");
-
- gw.sin_len = sizeof(gw);
- gw.sin_family = AF_INET;
- gw.sin_addr.s_addr = inet_addr("0.0.0.0");
-
- netmask.sin_len = sizeof(netmask);
- netmask.sin_family = AF_INET;
- netmask.sin_addr.s_addr = inet_addr("255.255.255.0");
-
- if (argc < 2) @{
- rtems_bsdnet_show_inet_routes();
- return;
- @}
-
- if (strcmp(argv[1], "add") == 0) @{
- cmd = RTM_ADD;
- @} else if (strcmp(argv[1], "del") == 0) @{
- cmd = RTM_DELETE;
- @} else @{
- printf("invalid command: %s\n", argv[1]);
- printf("\tit should be 'add' or 'del'\n");
- return;
- @}
-
- if (argc < 3) @{
- printf("not enough arguments\n");
- return;
- @}
-
- if (strcmp(argv[2], "-host") == 0) @{
- f_host = 1;
- @} else if (strcmp(argv[2], "-net") == 0) @{
- f_host = 0;
- @} else @{
- printf("Invalid type: %s\n", argv[1]);
- printf("\tit should be '-host' or '-net'\n");
- return;
- @}
-
- if (argc < 4) @{
- printf("not enough arguments\n");
- return;
- @}
-
- inet_pton(AF_INET, argv[3], &dst.sin_addr);
-
- cur_idx = 4;
- while(cur_idx < argc) @{
- if (strcmp(argv[cur_idx], "gw") == 0) @{
- if ((cur_idx +1) >= argc) @{
- printf("no gateway address\n");
- return;
- @}
- f_gw = 1;
- inet_pton(AF_INET, argv[cur_idx + 1], &gw.sin_addr);
- cur_idx += 1;
- @} else if(strcmp(argv[cur_idx], "netmask") == 0) @{
- if ((cur_idx +1) >= argc) @{
- printf("no netmask address\n");
- return;
- @}
- f_gw = 1;
- inet_pton(AF_INET, argv[cur_idx + 1], &netmask.sin_addr);
- cur_idx += 1;
- @} else @{
- printf("Unknown argument\n");
- return;
- @}
- cur_idx += 1;
- @}
-
- flags = RTF_STATIC;
- if (f_gw != 0) @{
- flags |= RTF_GATEWAY;
- @}
- if (f_host != 0) @{
- flags |= RTF_HOST;
- @}
-
- rc = rtems_bsdnet_rtrequest(cmd, &dst, &gw, &netmask, flags, NULL);
- if (rc < 0) @{
- printf("Error adding route\n");
- @}
-@}
-@end example
-
-Thanks to @uref{mailto:jtm@@smoothmsmoothie.com,Jay Monkman} for this example
-code.
-
-@subsection Time Synchronization Using NTP
-
-@example
-int rtems_bsdnet_synchronize_ntp (int interval, rtems_task_priority priority);
-@end example
-
-If the interval argument is 0 the routine synchronizes the RTEMS time-of-day
-clock with the first NTP server in the rtems_bsdnet_ntpserve array and
-returns. The priority argument is ignored.
-
-If the interval argument is greater than 0, the routine also starts an
-RTEMS task at the specified priority and polls the NTP server every
-`interval' seconds. NOTE: This mode of operation has not yet been
-implemented.
-
-On successful synchronization of the RTEMS time-of-day clock the routine
-returns 0. If an error occurs a message is printed and the routine returns -1
-with an error code in errno.
-There is no timeout -- if there is no response from an NTP server the
-routine will wait forever.
-
-
-
-
diff --git a/doc/networking/networkflow.eps b/doc/networking/networkflow.eps
deleted file mode 100644
index 8aba78d55f..0000000000
--- a/doc/networking/networkflow.eps
+++ /dev/null
@@ -1,1343 +0,0 @@
-%!PS-Adobe-2.0 EPSF-2.0
-%%Title:
-%%Creator: Diagram
-%%CreationDate: Tue Aug 18 16:41:45 1998
-%%For: eric
-%%DocumentFonts: (atend)
-%%Pages: 0 0
-%%BoundingBox: 0 0 487 549
-%%NXNextStepVersion: 3.0
-%%EndComments
-
-%%BeginProcSet: /usr/lib/NextStep/printPackage.ps 3.0
-%!
-% NeXT Printing Package
-% Version: 3.1
-% Copyright: 1988, NeXT, Inc.
-
-/__NXdef{1 index where{pop pop pop}{def}ifelse}bind def
-/__NXbdef{1 index where{pop pop pop}{bind def}ifelse}bind def
-/UserObjects 10 array __NXdef
-/defineuserobject{
- exch dup 1 add dup UserObjects length gt{
- array dup 0 UserObjects putinterval
- /UserObjects exch def
- }{pop}ifelse UserObjects exch 3 -1 roll put
-}__NXbdef
-/undefineuserobject{UserObjects exch null put}__NXbdef
-/execuserobject{UserObjects exch get exec}__NXbdef
-/__NXRectPath{4 2 roll moveto 1 index 0 rlineto
-0 exch rlineto neg 0 rlineto closepath}__NXbdef
-/__NXProcessRectArgs{
- 1 index type /arraytype eq{
- exch 0 4 2 index length 1 sub{
- dup 3 add 1 exch{1 index exch get exch}for
- 5 1 roll 5 index exec
- }for pop pop
- }{exec}ifelse
-}__NXbdef
-/rectfill{gsave newpath {__NXRectPath fill} __NXProcessRectArgs grestore}__NXbdef
-/rectclip{newpath {__NXRectPath} __NXProcessRectArgs clip newpath}__NXbdef
-/rectstroke{
- gsave newpath dup type /arraytype eq{dup length 6 eq}{false}ifelse{
- {gsave __NXRectPath null concat stroke grestore}
- dup length array cvx copy dup 2 4 -1 roll put __NXProcessRectArgs
- }{{__NXRectPath stroke} __NXProcessRectArgs}ifelse grestore
-}__NXbdef
-/_NXLevel2 systemdict /languagelevel known {languagelevel 2 ge}{false}ifelse __NXdef
-/xyshow{
- 0 1 3 index length 1 sub{
- currentpoint 4 index 3 index 1 getinterval show
- 3 index 3 index 2 mul 1 add get add exch
- 3 index 3 index 2 mul get add exch moveto pop
- }for pop pop
-}__NXbdef
-/xshow{
- 0 1 3 index length 1 sub{
- currentpoint 4 index 3 index 1 getinterval show
- exch 3 index 3 index get add exch moveto pop
- }for pop pop
-}__NXbdef
-/yshow{
- 0 1 3 index length 1 sub{
- currentpoint 4 index 3 index 1 getinterval show
- 3 index 3 index get add moveto pop
- }for pop pop
-}__NXbdef
-/arct{arcto pop pop pop pop}__NXbdef
-/setbbox{pop pop pop pop}__NXbdef
-/ucache{}__NXbdef
-/ucachestatus{mark 0 0 0 0 0}__NXbdef
-/setucacheparams{cleartomark}__NXbdef
-/uappend{systemdict begin cvx exec end}__NXbdef
-/ueofill{gsave newpath uappend eofill grestore}__NXbdef
-/ufill{gsave newpath uappend fill grestore}__NXbdef
-/ustroke{
- gsave newpath dup length 6 eq
- {exch uappend concat}{uappend}ifelse
- stroke grestore
-}__NXbdef
-/__NXustrokepathMatrix dup where {pop pop}{matrix def}ifelse
-/ustrokepath{
- newpath dup length 6 eq{
- exch uappend __NXustrokepathMatrix currentmatrix exch concat
- strokepath setmatrix
- }{uappend strokepath}ifelse
-} __NXbdef
-/upath{
- [exch {/ucache cvx}if pathbbox /setbbox cvx
- {/moveto cvx}{/lineto cvx}{/curveto cvx}{/closepath cvx}pathforall]cvx
-} __NXbdef
-/setstrokeadjust{pop}__NXbdef
-/currentstrokeadjust{false}__NXbdef
-/selectfont{exch findfont exch
-dup type /arraytype eq {makefont}{scalefont}ifelse setfont}__NXbdef
-/_NXCombineArrays{
- counttomark dup 2 add index dup length 3 -1 roll {
- 2 index length sub dup 4 1 roll 1 index exch 4 -1 roll putinterval exch
- }repeat pop pop pop
-}__NXbdef
-/flushgraphics{}def
-/setwindowtype{pop pop}def
-/currentwindowtype{pop 0}def
-/setalpha{pop}def
-/currentalpha{1.0}def
-/hidecursor{}def
-/obscurecursor{}def
-/revealcursor{}def
-/setcursor{4 {pop}repeat}bind def
-/showcursor{}def
-/NextStepEncoding where not{
-/NextStepEncoding StandardEncoding 256 array copy def
-0 [129/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/Ccedilla/Egrave
-/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex/Idieresis
-/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis/Ugrave/Uacute
-/Ucircumflex/Udieresis/Yacute/Thorn/mu/multiply/divide/copyright
-176/registered 181/brokenbar 190/logicalnot 192/onesuperior 201/twosuperior
-204/threesuperior 209/plusminus/onequarter/onehalf/threequarters/agrave
-/aacute/acircumflex/atilde/adieresis/aring/ccedilla/egrave/eacute
-/ecircumflex/edieresis/igrave 226/iacute 228/icircumflex/idieresis/eth
-/ntilde 236/ograve/oacute/ocircumflex/otilde/odieresis 242/ugrave/uacute
-/ucircumflex 246/udieresis/yacute 252/thorn/ydieresis]
-{dup type /nametype eq
- {NextStepEncoding 2 index 2 index put pop 1 add}{exch pop}ifelse
-}forall pop
-/NextStepEncoding NextStepEncoding readonly def
-/_NXfstr 128 string dup 0 (_NX) putinterval def
-/_NXfindfont /findfont load def
-/findfont{
- % Because we can never let NextStepEncoding get into
- % SharedFontDirectory, we cannot reencode a font to NextStepEncoding
- % if we are in shared mode. So if currentshared is true,
- % we call the normal findfont and return that
- /currentshared where {pop currentshared} {false} ifelse
- {_NXfindfont}
- {dup _NXfstr 3 125 getinterval cvs length 3 add _NXfstr 0 3 -1 roll
- getinterval cvn exch FontDirectory 2 index known
- {pop FontDirectory exch get}
- {_NXfindfont dup /Encoding get StandardEncoding eq
- { dup length dict exch
- {1 index /FID ne {2 index 3 1 roll put}{pop pop}ifelse}forall
- dup /Encoding NextStepEncoding put definefont
- }{exch pop} ifelse
- }ifelse
- }ifelse
-}bind def
-}{pop}ifelse
-/_NXImageString {/__NXImageString where{pop}{/__NXImageString 4000 string __NXdef}ifelse __NXImageString}__NXbdef
-/_NXDoImageOp{
- 3 dict begin /parr 5 array def 1 index{dup}{1}ifelse /chans exch def
- chans 2 add 2 roll parr 0 chans getinterval astore pop
- 5 index 4 index mul 2 index{1 sub 8 idiv 1 add mul}{mul 1 sub 8 idiv 1 add}ifelse
- 4 index mul /totbytes exch def pop exch pop
- gsave matrix invertmatrix concat 0.5 setgray 0 0 4 2 roll rectfill grestore
- {0 1 chans 1 sub{parr exch get exec length totbytes exch sub /totbytes exch def}for totbytes 0 le{exit}if}loop end
-}__NXbdef
-/alphaimage{1 add _NXDoImageOp}def
-_NXLevel2{
- /NXCalibratedRGBColorSpace where{pop}{
- /NXCalibratedRGBColorSpace
- {mark /NXCalibratedRGB /ColorSpace findresource exch pop}stopped
- {cleartomark /NXCalibratedRGB[/CIEBasedABC 2 dict dup begin
- /MatrixLMN[.4124 .2126 .0193 .3576 .7152 .1192 .1805 .0722 .9505]def
- /WhitePoint[.9505 1 1.089] def end] /ColorSpace defineresource}if def}ifelse
- /nxsetrgbcolor{NXCalibratedRGBColorSpace setcolorspace setcolor}__NXbdef
- /nxsetgray{dup dup nxsetrgbcolor}__NXbdef
- /_NXCalibratedImage{exch{array astore dup length true}{false}ifelse
- 8 -1 roll{NXCalibratedRGBColorSpace setcolorspace}if
- 8 dict dup 9 1 roll begin /ImageType 1 def /MultipleDataSources exch def
- currentcolorspace 0 get /Indexed eq{pop /Decode[0 2 6 index exp 1 sub]def}
- {2 mul dup array /Decode exch def 1 sub 0 1 3 -1 roll{Decode exch dup 2 mod put}for}ifelse
- /DataSource exch def /ImageMatrix exch def
- /BitsPerComponent exch def /Height exch def /Width exch def end image}__NXbdef
-} {
- /setcmykcolor{
- 1.0 exch sub dup dup 6 -1 roll sub dup 0 lt{pop 0}if 5 1 roll
- 4 -1 roll sub dup 0 lt{pop 0}if 3 1 roll exch sub dup 0 lt{pop 0}if setrgbcolor}__NXbdef
- /currentcmykcolor{currentrgbcolor 3{1.0 exch sub 3 1 roll}repeat 0}__NXbdef
- /colorimage{2 copy 3 ne or{_NXDoImageOp}{4 index dup 8 ne exch 4 ne and{_NXDoImageOp}{
- pop pop save 6 1 roll 12 dict begin/Proc exch def/Res 0 string def
- /Alloc{2 index length mul 2 add dup 2 index load length gt{1.2 mul round cvi string def}{pop pop}ifelse}def
- 1 index 8 eq{/Unpack{.34 Alloc}def}{
- /Wid 4 index 3 mul def exch pop 8 exch/Str1 0 string def/Lim Wid def
- /Unpack{.67 Alloc/Str1 2 Alloc 0 exch Lim exch
- {dup -4 bitshift 17 mul Str1 exch 4 index exch put 15 and 17 mul Str1 exch 3 index 1 add exch put
- 2 sub dup 0 le{0 lt Wid exch{exch 1 sub exch}if}if exch 2 add exch
- }forall/Lim exch def Str1 exch 0 exch getinterval
- }def
- }ifelse
- /Ops[{.3 mul add 1}{.59 mul add 2}{.11 mul add round cvi Res exch 2 index exch put 1 add 0.0 0}]def/Val 0.0 def/Phase 0 def
- {0 Val Phase Proc/Res Unpack{exch Ops exch get exec}forall/Phase exch def/Val exch def Res exch 0 exch getinterval}
- image end restore}ifelse}ifelse
- }__NXbdef
- /nxsetrgbcolor{setrgbcolor}__NXbdef /nxsetgray{setgray}__NXbdef
- /setpattern{pop .5 setgray}__NXbdef
- /_NXCalibratedImage{dup 1 eq {pop pop image}{colorimage}ifelse pop}__NXbdef
-} ifelse
-/_NXSetCMYKOrRGB where{pop}{
- mark{systemdict /currentwindow get exec}stopped
- {{pop pop pop setcmykcolor}}{{nxsetrgbcolor pop pop pop pop}}ifelse /_NXSetCMYKOrRGB exch def cleartomark
-}ifelse
-%%EndProcSet
-
-gsave
- /__NXbasematrix matrix currentmatrix def
-grestore
-%%EndProlog
-%%BeginSetup
-%%EndSetup
-gsave
-0 0 488 549 rectclip
-[1 0 0 -1 -26.5 567] concat
-26.5 18 487 549 rectclip
-gsave
-36 306 306 261 rectclip
-0 nxsetgray
-1 setlinewidth
-[6] 1 setdash
-36.5 306.5 305 260 rectstroke
-grestore
-0.333338 nxsetgray
-gsave
-0.333338 nxsetgray
-newpath
-systemdict
-begin
-58 418 166 472 setbbox
-68.800003 418 moveto
-155.200012 428.799988 10.8 -90 0 arc
-155.200012 461.199982 10.8 0 90 arc
-68.800003 461.199982 10.8 90 180 arc
-68.800003 428.799988 10.8 180 270 arc
-closepath
-end
-clip
-newpath
-1 setlinewidth
-gsave
-newpath
-systemdict
-begin
-58 418 166 472 setbbox
-69.300003 418.5 moveto
-154.700012 429.299988 10.8 -90 0 arc
-154.700012 460.699982 10.8 0 90 arc
-69.300003 460.699982 10.8 90 180 arc
-69.300003 429.299988 10.8 180 270 arc
-closepath
-end
-stroke
-grestore
-grestore
-gsave
-newpath
-systemdict
-begin
-58 418 166 472 setbbox
-69.300003 419 moveto
-154.700012 429.299988 10.3 -90 0 arc
-154.700012 460.699982 10.3 0 90 arc
-69.300003 460.699982 10.3 90 180 arc
-69.300003 429.299988 10.3 180 270 arc
-closepath
-end
-fill
-grestore
-1 nxsetgray
-gsave
-newpath
-systemdict
-begin
-54 414 162 468 setbbox
-65.300003 415 moveto
-150.700012 425.299988 10.3 -90 0 arc
-150.700012 456.699982 10.3 0 90 arc
-65.300003 456.699982 10.3 90 180 arc
-65.300003 425.299988 10.3 180 270 arc
-closepath
-end
-fill
-grestore
-gsave
-newpath
-systemdict
-begin
-54 414 162 468 setbbox
-64.800003 414 moveto
-151.200012 424.799988 10.8 -90 0 arc
-151.200012 457.199982 10.8 0 90 arc
-64.800003 457.199982 10.8 90 180 arc
-64.800003 424.799988 10.8 180 270 arc
-closepath
-end
-clip
-newpath
-0 nxsetgray
-1 setlinewidth
-gsave
-newpath
-systemdict
-begin
-54 414 162 468 setbbox
-65.300003 414.5 moveto
-150.700012 425.299988 10.8 -90 0 arc
-150.700012 456.699982 10.8 0 90 arc
-65.300003 456.699982 10.8 90 180 arc
-65.300003 425.299988 10.8 180 270 arc
-closepath
-end
-stroke
-grestore
-grestore
-gsave
-/Helvetica findfont 12 scalefont [1 0 0 -1 0 0] makefont
-8
-exch
-defineuserobject
-8 execuserobject setfont
-0 nxsetgray
-8 execuserobject setfont
-0 nxsetgray
-84 430 moveto (Interface) show
-85 445 moveto (Receive) show
-84 460 moveto (Daemon) show
-grestore
-0.333338 nxsetgray
-gsave
-0.333338 nxsetgray
-newpath
-systemdict
-begin
-193 418 301 472 setbbox
-203.800003 418 moveto
-290.200012 428.799988 10.8 -90 0 arc
-290.200012 461.199982 10.8 0 90 arc
-203.800003 461.199982 10.8 90 180 arc
-203.800003 428.799988 10.8 180 270 arc
-closepath
-end
-clip
-newpath
-1 setlinewidth
-gsave
-newpath
-systemdict
-begin
-193 418 301 472 setbbox
-204.300003 418.5 moveto
-289.700012 429.299988 10.8 -90 0 arc
-289.700012 460.699982 10.8 0 90 arc
-204.300003 460.699982 10.8 90 180 arc
-204.300003 429.299988 10.8 180 270 arc
-closepath
-end
-stroke
-grestore
-grestore
-gsave
-newpath
-systemdict
-begin
-193 418 301 472 setbbox
-204.300003 419 moveto
-289.700012 429.299988 10.3 -90 0 arc
-289.700012 460.699982 10.3 0 90 arc
-204.300003 460.699982 10.3 90 180 arc
-204.300003 429.299988 10.3 180 270 arc
-closepath
-end
-fill
-grestore
-1 nxsetgray
-gsave
-newpath
-systemdict
-begin
-189 414 297 468 setbbox
-200.300003 415 moveto
-285.700012 425.299988 10.3 -90 0 arc
-285.700012 456.699982 10.3 0 90 arc
-200.300003 456.699982 10.3 90 180 arc
-200.300003 425.299988 10.3 180 270 arc
-closepath
-end
-fill
-grestore
-gsave
-newpath
-systemdict
-begin
-189 414 297 468 setbbox
-199.800003 414 moveto
-286.200012 424.799988 10.8 -90 0 arc
-286.200012 457.199982 10.8 0 90 arc
-199.800003 457.199982 10.8 90 180 arc
-199.800003 424.799988 10.8 180 270 arc
-closepath
-end
-clip
-newpath
-0 nxsetgray
-1 setlinewidth
-gsave
-newpath
-systemdict
-begin
-189 414 297 468 setbbox
-200.300003 414.5 moveto
-285.700012 425.299988 10.8 -90 0 arc
-285.700012 456.699982 10.8 0 90 arc
-200.300003 456.699982 10.8 90 180 arc
-200.300003 425.299988 10.8 180 270 arc
-closepath
-end
-stroke
-grestore
-grestore
-gsave
-8 execuserobject setfont
-0 nxsetgray
-8 execuserobject setfont
-0 nxsetgray
-219 430 moveto (Interface) show
-219 445 moveto (Transmit) show
-219 460 moveto (Daemon) show
-grestore
-0.333338 nxsetgray
-gsave
-0.333338 nxsetgray
-newpath
-systemdict
-begin
-184 328 310 382 setbbox
-184 328 moveto
-100.800003 0 rlineto
-25.200001 54 rlineto
--100.800003 0 rlineto
-closepath
-end
-clip
-newpath
-1 setlinewidth
-gsave
-newpath
-systemdict
-begin
-184.5 328.5 309.5 381.5 setbbox
-184.5 328.5 moveto
-100 0 rlineto
-25 53 rlineto
--100 0 rlineto
-closepath
-end
-stroke
-grestore
-grestore
-gsave
-newpath
-systemdict
-begin
-185 329 309 381 setbbox
-185 329 moveto
-99.199997 0 rlineto
-24.799999 52 rlineto
--99.199997 0 rlineto
-closepath
-end
-fill
-grestore
-1 nxsetgray
-gsave
-newpath
-systemdict
-begin
-181 325 305 377 setbbox
-181 325 moveto
-99.199997 0 rlineto
-24.799999 52 rlineto
--99.199997 0 rlineto
-closepath
-end
-fill
-grestore
-gsave
-newpath
-systemdict
-begin
-180 324 306 378 setbbox
-180 324 moveto
-100.800003 0 rlineto
-25.200001 54 rlineto
--100.800003 0 rlineto
-closepath
-end
-clip
-newpath
-0 nxsetgray
-1 setlinewidth
-gsave
-newpath
-systemdict
-begin
-180.5 324.5 305.5 377.5 setbbox
-180.5 324.5 moveto
-100 0 rlineto
-25 53 rlineto
--100 0 rlineto
-closepath
-end
-stroke
-grestore
-grestore
-gsave
-8 execuserobject setfont
-0 nxsetgray
-8 execuserobject setfont
-0 nxsetgray
-219 340.5 moveto (Interface) show
-224 355.5 moveto (Output) show
-224 370.5 moveto (Queue) show
-grestore
-0.333338 nxsetgray
-gsave
-0.333338 nxsetgray
-193 184 108 54 rectclip
-1 setlinewidth
-193.5 184.5 107 53 rectstroke
-grestore
-194 185 106 52 rectfill
-1 nxsetgray
-190 181 106 52 rectfill
-gsave
-189 180 108 54 rectclip
-0 nxsetgray
-1 setlinewidth
-189.5 180.5 107 53 rectstroke
-grestore
-gsave
-8 execuserobject setfont
-0 nxsetgray
-8 execuserobject setfont
-0 nxsetgray
-220 204 moveto (Network) show
-228 219 moveto (Code) show
-grestore
-0 nxsetgray
-1 setlinewidth
-2 setlinejoin
-gsave
-newpath
-systemdict
-begin
-242.999969 234 243.000031 316.299988 setbbox
-243.000031 234 moveto
-242.999969 316.299988 lineto
-end
-stroke
-grestore
-0 setlinejoin
-gsave
-[0 1 -1 0 567 81.000031] concat
-gsave
-newpath
-systemdict
-begin
-233.799973 319.5 242.999969 328.5 setbbox
-242.999969 324 moveto
--9.2 4.5 rlineto
-1.5 -4.5 rlineto
--1.5 -4.5 rlineto
-closepath
-end
-fill
-grestore
-grestore
-0 nxsetgray
-1 setlinewidth
-2 setlinejoin
-gsave
-newpath
-systemdict
-begin
-242.999985 378 243.000031 406.299988 setbbox
-243.000031 378 moveto
-242.999985 406.299988 lineto
-end
-stroke
-grestore
-0 setlinejoin
-gsave
-[0 1 -1 0 657 171.000031] concat
-gsave
-newpath
-systemdict
-begin
-233.799973 409.5 242.999969 418.5 setbbox
-242.999969 414 moveto
--9.2 4.5 rlineto
-1.5 -4.5 rlineto
--1.5 -4.5 rlineto
-closepath
-end
-fill
-grestore
-grestore
-0.333338 nxsetgray
-gsave
-0.333338 nxsetgray
-newpath
-systemdict
-begin
-193 22 301 76 setbbox
-203.800003 22 moveto
-290.200012 32.799999 10.8 -90 0 arc
-290.200012 65.199997 10.8 0 90 arc
-203.800003 65.199997 10.8 90 180 arc
-203.800003 32.799999 10.8 180 270 arc
-closepath
-end
-clip
-newpath
-1 setlinewidth
-gsave
-newpath
-systemdict
-begin
-193 22 301 76 setbbox
-204.300003 22.5 moveto
-289.700012 33.299999 10.8 -90 0 arc
-289.700012 64.699997 10.8 0 90 arc
-204.300003 64.699997 10.8 90 180 arc
-204.300003 33.299999 10.8 180 270 arc
-closepath
-end
-stroke
-grestore
-grestore
-gsave
-newpath
-systemdict
-begin
-193 22 301 76 setbbox
-204.300003 23 moveto
-289.700012 33.299999 10.3 -90 0 arc
-289.700012 64.699997 10.3 0 90 arc
-204.300003 64.699997 10.3 90 180 arc
-204.300003 33.299999 10.3 180 270 arc
-closepath
-end
-fill
-grestore
-1 nxsetgray
-gsave
-newpath
-systemdict
-begin
-189 18 297 72 setbbox
-200.300003 19 moveto
-285.700012 29.299999 10.3 -90 0 arc
-285.700012 60.699997 10.3 0 90 arc
-200.300003 60.699997 10.3 90 180 arc
-200.300003 29.299999 10.3 180 270 arc
-closepath
-end
-fill
-grestore
-gsave
-newpath
-systemdict
-begin
-189 18 297 72 setbbox
-199.800003 18 moveto
-286.200012 28.799999 10.8 -90 0 arc
-286.200012 61.200001 10.8 0 90 arc
-199.800003 61.200001 10.8 90 180 arc
-199.800003 28.799999 10.8 180 270 arc
-closepath
-end
-clip
-newpath
-0 nxsetgray
-1 setlinewidth
-gsave
-newpath
-systemdict
-begin
-189 18 297 72 setbbox
-200.300003 18.5 moveto
-285.700012 29.299999 10.8 -90 0 arc
-285.700012 60.699997 10.8 0 90 arc
-200.300003 60.699997 10.8 90 180 arc
-200.300003 29.299999 10.8 180 270 arc
-closepath
-end
-stroke
-grestore
-grestore
-gsave
-8 execuserobject setfont
-0 nxsetgray
-8 execuserobject setfont
-0 nxsetgray
-229 34 moveto (User) show
-213 49 moveto (Application) show
-229 64 moveto (Task) show
-grestore
-0.333338 nxsetgray
-gsave
-0.333338 nxsetgray
-newpath
-systemdict
-begin
-346 121 472 175 setbbox
-346 121 moveto
-100.800003 0 rlineto
-25.200001 54 rlineto
--100.800003 0 rlineto
-closepath
-end
-clip
-newpath
-1 setlinewidth
-gsave
-newpath
-systemdict
-begin
-346.5 121.5 471.5 174.5 setbbox
-346.5 121.5 moveto
-100 0 rlineto
-25 53 rlineto
--100 0 rlineto
-closepath
-end
-stroke
-grestore
-grestore
-gsave
-newpath
-systemdict
-begin
-347 122 471 174 setbbox
-347 122 moveto
-99.199997 0 rlineto
-24.799999 52 rlineto
--99.199997 0 rlineto
-closepath
-end
-fill
-grestore
-1 nxsetgray
-gsave
-newpath
-systemdict
-begin
-343 118 467 170 setbbox
-343 118 moveto
-99.199997 0 rlineto
-24.799999 52 rlineto
--99.199997 0 rlineto
-closepath
-end
-fill
-grestore
-gsave
-newpath
-systemdict
-begin
-342 117 468 171 setbbox
-342 117 moveto
-100.800003 0 rlineto
-25.200001 54 rlineto
--100.800003 0 rlineto
-closepath
-end
-clip
-newpath
-0 nxsetgray
-1 setlinewidth
-gsave
-newpath
-systemdict
-begin
-342.5 117.5 467.5 170.5 setbbox
-342.5 117.5 moveto
-100 0 rlineto
-25 53 rlineto
--100 0 rlineto
-closepath
-end
-stroke
-grestore
-grestore
-gsave
-8 execuserobject setfont
-0 nxsetgray
-8 execuserobject setfont
-0 nxsetgray
-386 133.5 moveto (Socket) show
-382 148.5 moveto (Receive) show
-384 163.5 moveto ( Queue) show
-grestore
-0.333338 nxsetgray
-gsave
-0.333338 nxsetgray
-newpath
-systemdict
-begin
-373 418 481 472 setbbox
-383.799988 418 moveto
-470.199982 428.799988 10.8 -90 0 arc
-470.199982 461.199982 10.8 0 90 arc
-383.799988 461.199982 10.8 90 180 arc
-383.799988 428.799988 10.8 180 270 arc
-closepath
-end
-clip
-newpath
-1 setlinewidth
-gsave
-newpath
-systemdict
-begin
-373 418 481 472 setbbox
-384.299988 418.5 moveto
-469.699982 429.299988 10.8 -90 0 arc
-469.699982 460.699982 10.8 0 90 arc
-384.299988 460.699982 10.8 90 180 arc
-384.299988 429.299988 10.8 180 270 arc
-closepath
-end
-stroke
-grestore
-grestore
-gsave
-newpath
-systemdict
-begin
-373 418 481 472 setbbox
-384.299988 419 moveto
-469.699982 429.299988 10.3 -90 0 arc
-469.699982 460.699982 10.3 0 90 arc
-384.299988 460.699982 10.3 90 180 arc
-384.299988 429.299988 10.3 180 270 arc
-closepath
-end
-fill
-grestore
-1 nxsetgray
-gsave
-newpath
-systemdict
-begin
-369 414 477 468 setbbox
-380.299988 415 moveto
-465.699982 425.299988 10.3 -90 0 arc
-465.699982 456.699982 10.3 0 90 arc
-380.299988 456.699982 10.3 90 180 arc
-380.299988 425.299988 10.3 180 270 arc
-closepath
-end
-fill
-grestore
-gsave
-newpath
-systemdict
-begin
-369 414 477 468 setbbox
-379.799988 414 moveto
-466.199982 424.799988 10.8 -90 0 arc
-466.199982 457.199982 10.8 0 90 arc
-379.799988 457.199982 10.8 90 180 arc
-379.799988 424.799988 10.8 180 270 arc
-closepath
-end
-clip
-newpath
-0 nxsetgray
-1 setlinewidth
-gsave
-newpath
-systemdict
-begin
-369 414 477 468 setbbox
-380.299988 414.5 moveto
-465.699982 425.299988 10.8 -90 0 arc
-465.699982 456.699982 10.8 0 90 arc
-380.299988 456.699982 10.8 90 180 arc
-380.299988 425.299988 10.8 180 270 arc
-closepath
-end
-stroke
-grestore
-grestore
-gsave
-8 execuserobject setfont
-0 nxsetgray
-8 execuserobject setfont
-0 nxsetgray
-400 437.5 moveto (Network) show
-399 452.5 moveto (Daemon) show
-grestore
-0.333338 nxsetgray
-gsave
-0.333338 nxsetgray
-67 499 90 45 rectclip
-1 setlinewidth
-67.5 499.5 89 44 rectstroke
-grestore
-68 500 88 43 rectfill
-1 nxsetgray
-64 496 88 43 rectfill
-gsave
-63 495 90 45 rectclip
-0 nxsetgray
-1 setlinewidth
-63.5 495.5 89 44 rectstroke
-grestore
-gsave
-8 execuserobject setfont
-0 nxsetgray
-8 execuserobject setfont
-0 nxsetgray
-86 508 moveto (Receive) show
-85 523 moveto (Interrupt) show
-gsave
-66 496 84 43 rectclip
-86 538 moveto (Handler) show
-grestore
-grestore
-0.333338 nxsetgray
-gsave
-0.333338 nxsetgray
-202 499 90 45 rectclip
-1 setlinewidth
-202.5 499.5 89 44 rectstroke
-grestore
-203 500 88 43 rectfill
-1 nxsetgray
-199 496 88 43 rectfill
-gsave
-198 495 90 45 rectclip
-0 nxsetgray
-1 setlinewidth
-198.5 495.5 89 44 rectstroke
-grestore
-gsave
-8 execuserobject setfont
-0 nxsetgray
-8 execuserobject setfont
-0 nxsetgray
-219 508 moveto (Transmit) show
-220 523 moveto (Interrupt) show
-gsave
-201 496 84 43 rectclip
-221 538 moveto (Handler) show
-grestore
-grestore
-0 nxsetgray
-1 setlinewidth
-2 setlinejoin
-[1 6] 1 setdash
-gsave
-newpath
-systemdict
-begin
-108.000023 475.700012 108.000031 495 setbbox
-108.000023 495 moveto
-108.000031 475.700012 lineto
-end
-stroke
-grestore
-[] 0 setdash
-0 setlinejoin
-gsave
-[0 -1 1 0 -359.999969 576] concat
-gsave
-newpath
-systemdict
-begin
-98.800034 463.5 108.000031 472.5 setbbox
-108.000031 468 moveto
--9.2 4.5 rlineto
-1.5 -4.5 rlineto
--1.5 -4.5 rlineto
-closepath
-end
-fill
-grestore
-grestore
-0 nxsetgray
-1 setlinewidth
-2 setlinejoin
-[1 6] 1 setdash
-gsave
-newpath
-systemdict
-begin
-243.000015 475.700012 243.000031 495 setbbox
-243.000015 495 moveto
-243.000031 475.700012 lineto
-end
-stroke
-grestore
-[] 0 setdash
-0 setlinejoin
-gsave
-[0 -1 1 0 -224.999969 711] concat
-gsave
-newpath
-systemdict
-begin
-233.800034 463.5 243.000031 472.5 setbbox
-243.000031 468 moveto
--9.2 4.5 rlineto
-1.5 -4.5 rlineto
--1.5 -4.5 rlineto
-closepath
-end
-fill
-grestore
-grestore
-0 nxsetgray
-1 setlinewidth
-2 setlinejoin
-[6] 1 setdash
-gsave
-newpath
-systemdict
-begin
-27 90 513 90 setbbox
-27 90 moveto
-513 90 lineto
-end
-stroke
-grestore
-[] 0 setdash
-0 setlinejoin
-0 nxsetgray
-1 setlinewidth
-2 setlinejoin
-gsave
-newpath
-systemdict
-begin
-304.700012 45 405.000031 117 setbbox
-405.000031 117 moveto
-405 45 lineto
-304.700012 45 lineto
-end
-stroke
-grestore
-0 setlinejoin
-gsave
-[-1 0 0 -1 594 90] concat
-gsave
-newpath
-systemdict
-begin
-287.799988 40.5 297 49.5 setbbox
-297 45 moveto
--9.2 4.5 rlineto
-1.5 -4.5 rlineto
--1.5 -4.5 rlineto
-closepath
-end
-fill
-grestore
-grestore
-0 nxsetgray
-1 setlinewidth
-2 setlinejoin
-gsave
-newpath
-systemdict
-begin
-297 178.699997 405.000031 207 setbbox
-297 207 moveto
-315 207 lineto
-405 207 lineto
-405.000031 178.699997 lineto
-end
-stroke
-grestore
-0 setlinejoin
-gsave
-[0 -1 1 0 234.000031 576] concat
-gsave
-newpath
-systemdict
-begin
-395.800018 166.5 405.000031 175.5 setbbox
-405.000031 171 moveto
--9.2 4.5 rlineto
-1.5 -4.5 rlineto
--1.5 -4.5 rlineto
-closepath
-end
-fill
-grestore
-grestore
-0.333338 nxsetgray
-gsave
-0.333338 nxsetgray
-newpath
-systemdict
-begin
-400 247 472 301 setbbox
-472 295.600006 moveto
-0 -43.200001 rlineto
-472 249.419205 455.872009 247 436 247 curveto
-416.127991 247 400 249.419205 400 252.399994 curveto
-0 43.200001 rlineto
-400 298.580811 416.127991 301 436 301 curveto
-455.872009 301 472 298.580811 472 295.600006 curveto
-closepath
-end
-clip
-newpath
-1 setlinewidth
-gsave
-newpath
-systemdict
-begin
-400.5 247.5 471.5 300.5 setbbox
-471.5 295.200012 moveto
-0 -42.400002 rlineto
-471.5 249.874405 455.596008 247.5 436 247.5 curveto
-416.403992 247.5 400.5 249.874405 400.5 252.800003 curveto
-0 42.400002 rlineto
-400.5 298.12558 416.403992 300.5 436 300.5 curveto
-455.596008 300.5 471.5 298.12558 471.5 295.199982 curveto
-closepath
-end
-stroke
-grestore
-gsave
-newpath
-systemdict
-begin
-400.5 247.5 471.5 300.5 setbbox
-471.5 252.800003 moveto
-471.5 255.725601 455.596008 258.100006 436 258.100006 curveto
-416.403992 258.100006 400.5 255.725601 400.5 252.800003 curveto
-end
-stroke
-grestore
-grestore
-gsave
-newpath
-systemdict
-begin
-401 248 471 300 setbbox
-471 294.799988 moveto
-0 -41.599998 rlineto
-471 250.329605 455.320007 248 436 248 curveto
-416.679993 248 401 250.329605 401 253.199997 curveto
-0 41.599998 rlineto
-401 297.67041 416.679993 300 436 300 curveto
-455.320007 300 471 297.67041 471 294.800018 curveto
-closepath
-end
-fill
-grestore
-1 nxsetgray
-gsave
-newpath
-systemdict
-begin
-397 244 467 296 setbbox
-467 290.799988 moveto
-0 -41.599998 rlineto
-467 246.329605 451.320007 244 432 244 curveto
-412.679993 244 397 246.329605 397 249.199997 curveto
-0 41.599998 rlineto
-397 293.67041 412.679993 296 432 296 curveto
-451.320007 296 467 293.67041 467 290.800018 curveto
-closepath
-end
-fill
-grestore
-gsave
-newpath
-systemdict
-begin
-396 243 468 297 setbbox
-468 291.600006 moveto
-0 -43.200001 rlineto
-468 245.419205 451.872009 243 432 243 curveto
-412.127991 243 396 245.419205 396 248.399994 curveto
-0 43.200001 rlineto
-396 294.580811 412.127991 297 432 297 curveto
-451.872009 297 468 294.580811 468 291.600006 curveto
-closepath
-end
-clip
-newpath
-0 nxsetgray
-1 setlinewidth
-gsave
-newpath
-systemdict
-begin
-396.5 243.5 467.5 296.5 setbbox
-467.5 291.200012 moveto
-0 -42.400002 rlineto
-467.5 245.874405 451.596008 243.5 432 243.5 curveto
-412.403992 243.5 396.5 245.874405 396.5 248.800003 curveto
-0 42.400002 rlineto
-396.5 294.12558 412.403992 296.5 432 296.5 curveto
-451.596008 296.5 467.5 294.12558 467.5 291.199982 curveto
-closepath
-end
-stroke
-grestore
-gsave
-newpath
-systemdict
-begin
-396.5 243.5 467.5 296.5 setbbox
-467.5 248.800003 moveto
-467.5 251.725601 451.596008 254.100006 432 254.100006 curveto
-412.403992 254.100006 396.5 251.725601 396.5 248.800003 curveto
-end
-stroke
-grestore
-grestore
-gsave
-8 execuserobject setfont
-0 nxsetgray
-8 execuserobject setfont
-0 nxsetgray
-411 266 moveto (Routing) show
-416 281 moveto (Table) show
-grestore
-0 nxsetgray
-1 setlinewidth
-2 setlinejoin
-gsave
-newpath
-systemdict
-begin
-304.304871 227.434952 388.695129 255.565048 setbbox
-304.304871 227.434952 moveto
-388.695129 255.565048 lineto
-end
-stroke
-grestore
-0 setlinejoin
-gsave
-[-0.948683 -0.316228 0.316228 -0.948683 507.607697 532.373413] concat
-gsave
-newpath
-systemdict
-begin
-287.799988 220.5 297 229.5 setbbox
-297 225 moveto
--9.2 4.5 rlineto
-1.5 -4.5 rlineto
--1.5 -4.5 rlineto
-closepath
-end
-fill
-grestore
-grestore
-gsave
-[0.948683 0.316228 -0.316228 0.948683 101.908165 -111.986488] concat
-gsave
-newpath
-systemdict
-begin
-386.799988 253.5 396 262.5 setbbox
-396 258 moveto
--9.2 4.5 rlineto
-1.5 -4.5 rlineto
--1.5 -4.5 rlineto
-closepath
-end
-fill
-grestore
-grestore
-0 nxsetgray
-1 setlinewidth
-2 setlinejoin
-gsave
-newpath
-systemdict
-begin
-242.999969 72 243.000031 172.300003 setbbox
-243.000031 72 moveto
-242.999969 172.300003 lineto
-end
-stroke
-grestore
-0 setlinejoin
-gsave
-[0 1 -1 0 422.999969 -62.999969] concat
-gsave
-newpath
-systemdict
-begin
-233.799973 175.5 242.999969 184.5 setbbox
-242.999969 180 moveto
--9.2 4.5 rlineto
-1.5 -4.5 rlineto
--1.5 -4.5 rlineto
-closepath
-end
-fill
-grestore
-grestore
-0 nxsetgray
-1 setlinewidth
-2 setlinejoin
-gsave
-newpath
-systemdict
-begin
-108 207 181.300003 414 setbbox
-108.000031 414 moveto
-108 207 lineto
-181.300003 207 lineto
-end
-stroke
-grestore
-0 setlinejoin
-gsave
-[1 0 0 1 0 0] concat
-gsave
-newpath
-systemdict
-begin
-179.800003 202.5 189 211.5 setbbox
-189 207 moveto
--9.2 4.5 rlineto
-1.5 -4.5 rlineto
--1.5 -4.5 rlineto
-closepath
-end
-fill
-grestore
-grestore
-grestore
-%%Trailer
-%%DocumentFonts: Helvetica
diff --git a/doc/networking/networkflow.jpg b/doc/networking/networkflow.jpg
deleted file mode 100644
index fc63ec69e0..0000000000
--- a/doc/networking/networkflow.jpg
+++ /dev/null
Binary files differ
diff --git a/doc/networking/networkflow.png b/doc/networking/networkflow.png
deleted file mode 100644
index fd8ce244fa..0000000000
--- a/doc/networking/networkflow.png
+++ /dev/null
Binary files differ
diff --git a/doc/networking/networkflow.txt b/doc/networking/networkflow.txt
deleted file mode 100644
index 86d8d720fb..0000000000
--- a/doc/networking/networkflow.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-Figure: Network Task Structure and Data Flow
- (Not available in ASCII version of this document.)
diff --git a/doc/networking/networking.texi b/doc/networking/networking.texi
deleted file mode 100644
index 84fd23506d..0000000000
--- a/doc/networking/networking.texi
+++ /dev/null
@@ -1,97 +0,0 @@
-\input texinfo @c -*-texinfo-*-
-@c %**start of header
-@setfilename networking.info
-@setcontentsaftertitlepage
-@syncodeindex vr fn
-@synindex ky cp
-@paragraphindent 0
-@c %**end of header
-
-@c
-@c COPYRIGHT (c) 1989-2013.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@c
-@c Master file for the network Supplement
-@c
-
-@include version.texi
-@include common/setup.texi
-@include common/rtems.texi
-
-@ifset use-ascii
-@dircategory RTEMS On-Line Manual
-@direntry
-* RTEMS Network Supplement: (networking).
-@end direntry
-@end ifset
-
-@c
-@c Title Page Stuff
-@c
-
-@c
-@c I don't really like having a short title page. --joel
-@c
-@c @shorttitlepage RTEMS Network Supplement
-
-@setchapternewpage odd
-@settitle RTEMS Network Supplement
-@titlepage
-@finalout
-
-@title RTEMS Network Supplement
-@subtitle Edition @value{EDITION}, for RTEMS @value{VERSION}
-@sp 1
-@subtitle @value{UPDATED}
-@author On-Line Applications Research Corporation
-@page
-@include common/cpright.texi
-@end titlepage
-
-@c This prevents a black box from being printed on "overflow" lines.
-@c The alternative is to rework a sentence to avoid this problem.
-
-@contents
-
-@ifnottex
-@node Top, Preface, (dir), (dir)
-@top RTEMS TCP/IP Networking Supplement
-
-@menu
-* Preface::
-* Network Task Structure and Data Flow::
-* Networking Driver::
-* Using Networking in an RTEMS Application::
-* Testing the Driver::
-* Network Servers::
-* DEC 21140 Driver::
-* Command and Variable Index::
-* Concept Index::
-@end menu
-@end ifnottex
-
-@include preface.texi
-@include networktasks.texi
-@include driver.texi
-@include networkapp.texi
-@include testing.texi
-@include servers.texi
-@include decdriver.texi
-
-@node Command and Variable Index, Concept Index, List of Ethernet cards using the DEC chip, Top
-@unnumbered Command and Variable Index
-
-There are currently no Command and Variable Index entries.
-
-@c @printindex fn
-
-@node Concept Index, , Command and Variable Index, Top
-@unnumbered Concept Index
-
-There are currently no Concept Index entries.
-@c @printindex cp
-
-@bye
-
diff --git a/doc/networking/networktasks.t b/doc/networking/networktasks.t
deleted file mode 100644
index 4379646f63..0000000000
--- a/doc/networking/networktasks.t
+++ /dev/null
@@ -1,44 +0,0 @@
-@c
-@c Written by Eric Norum
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Network Task Structure and Data Flow
-
-A schematic diagram of the tasks and message @b{mbuf} queues in a
-simple RTEMS networking application is shown in the following
-figure:
-
-@ifclear use-html
-@image{networkflow,5in,6in,"Network Task Structure and Data Flow"}
-@end ifclear
-
-@ifset use-html
-@html
-<IMG SRC="networkflow.jpg" ALIGN=CENTER
- ALT="Network Task Structure and Data Flow">
-@end html
-@end ifset
-
-
-The transmit task for each network interface is normally blocked waiting
-for a packet to arrive in the transmit queue. Once a packet arrives, the
-transmit task may block waiting for an event from the transmit interrupt
-handler. The transmit interrupt handler sends an RTEMS event to the transmit
-task to indicate that transmit hardware resources have become available.
-
-The receive task for each network interface is normally blocked waiting
-for an event from the receive interrupt handler. When this event is received
-the receive task reads the packet and forwards it to the network stack
-for subsequent processing by the network task.
-
-The network task processes incoming packets and takes care of
-timed operations such as handling TCP timeouts and
-aging and removing routing table entries.
-
-The `Network code' contains routines which may run in the context of
-the user application tasks, the interface receive task or the network task.
-A network semaphore ensures that
-the data structures manipulated by the network code remain consistent.
diff --git a/doc/networking/preface.texi b/doc/networking/preface.texi
deleted file mode 100644
index 87bf32df0b..0000000000
--- a/doc/networking/preface.texi
+++ /dev/null
@@ -1,53 +0,0 @@
-@c
-@c COPYRIGHT (c) 1989-2011.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@node Preface, Network Task Structure and Data Flow, Top, Top
-@unnumbered Preface
-
-This document describes the RTEMS specific parts of the FreeBSD TCP/IP
-stack. Much of this documentation was written by Eric Norum
-(@email{eric@@skatter.usask.ca})
-of the Saskatchewan Accelerator Laboratory
-who also ported the FreeBSD TCP/IP stack to RTEMS.
-
-The following is a list of resources which should be useful in trying
-to understand Ethernet:
-
-@itemize @bullet
-
-@item @cite{Charles Spurgeon's Ethernet Web Site}
-
-"This site provides extensive information about Ethernet
-(IEEE 802.3) local area network (LAN) technology. Including
-the original 10 Megabit per second (Mbps) system, the 100 Mbps
-Fast Ethernet system (802.3u), and the Gigabit Ethernet system (802.3z)."
-The URL is:
-@ifset use-html
-(@uref{http://www.ethermanage.com/ethernet/ethernet.html,http://www.ethermanage.com/ethernet/ethernet.html})
-@end ifset
-@ifclear use-html
-(http://www.ethermanage.com/ethernet/ethernet.html)
-@end ifclear
-
-@item @cite{TCP/IP Illustrated, Volume 1 : The Protocols} by
-by W. Richard Stevens (ISBN: 0201633469)
-
-This book provides detailed introduction to TCP/IP and includes diagnostic
-programs which are publicly available.
-
-@item @cite{TCP/IP Illustrated, Volume 2 : The Implementation} by W. Richard
-Stevens and Gary Wright (ISBN: 020163354X)
-
-This book focuses on implementation issues regarding TCP/IP. The
-treat for RTEMS users is that the implementation covered is the BSD
-stack with most of the source code described in detail.
-
-@item @cite{UNIX Network Programming, Volume 1 : 2nd Edition} by W. Richard
-Stevens (ISBN: 0-13-490012-X)
-
-This book describes how to write basic TCP/IP applications, again with primary
-focus on the BSD stack.
-
-@end itemize
diff --git a/doc/networking/recvbd.eps b/doc/networking/recvbd.eps
deleted file mode 100644
index 2719ed231a..0000000000
--- a/doc/networking/recvbd.eps
+++ /dev/null
@@ -1,181 +0,0 @@
-%!PS-Adobe-2.0 EPSF-2.0
-%%Title: recvbd.eps
-%%Creator: fig2dev Version 3.2 Patchlevel 1
-%%CreationDate: Mon Feb 8 14:02:16 1999
-%%For: raguet@genesis (Emmanuel Raguet)
-%%Orientation: Portrait
-%%BoundingBox: 0 0 252 173
-%%Pages: 0
-%%BeginSetup
-%%EndSetup
-%%Magnification: 1.0000
-%%EndComments
-/$F2psDict 200 dict def
-$F2psDict begin
-$F2psDict /mtrx matrix put
-/col-1 {0 setgray} bind def
-/col0 {0.000 0.000 0.000 srgb} bind def
-/col1 {0.000 0.000 1.000 srgb} bind def
-/col2 {0.000 1.000 0.000 srgb} bind def
-/col3 {0.000 1.000 1.000 srgb} bind def
-/col4 {1.000 0.000 0.000 srgb} bind def
-/col5 {1.000 0.000 1.000 srgb} bind def
-/col6 {1.000 1.000 0.000 srgb} bind def
-/col7 {1.000 1.000 1.000 srgb} bind def
-/col8 {0.000 0.000 0.560 srgb} bind def
-/col9 {0.000 0.000 0.690 srgb} bind def
-/col10 {0.000 0.000 0.820 srgb} bind def
-/col11 {0.530 0.810 1.000 srgb} bind def
-/col12 {0.000 0.560 0.000 srgb} bind def
-/col13 {0.000 0.690 0.000 srgb} bind def
-/col14 {0.000 0.820 0.000 srgb} bind def
-/col15 {0.000 0.560 0.560 srgb} bind def
-/col16 {0.000 0.690 0.690 srgb} bind def
-/col17 {0.000 0.820 0.820 srgb} bind def
-/col18 {0.560 0.000 0.000 srgb} bind def
-/col19 {0.690 0.000 0.000 srgb} bind def
-/col20 {0.820 0.000 0.000 srgb} bind def
-/col21 {0.560 0.000 0.560 srgb} bind def
-/col22 {0.690 0.000 0.690 srgb} bind def
-/col23 {0.820 0.000 0.820 srgb} bind def
-/col24 {0.500 0.190 0.000 srgb} bind def
-/col25 {0.630 0.250 0.000 srgb} bind def
-/col26 {0.750 0.380 0.000 srgb} bind def
-/col27 {1.000 0.500 0.500 srgb} bind def
-/col28 {1.000 0.630 0.630 srgb} bind def
-/col29 {1.000 0.750 0.750 srgb} bind def
-/col30 {1.000 0.880 0.880 srgb} bind def
-/col31 {1.000 0.840 0.000 srgb} bind def
-
-end
-save
--186.0 268.0 translate
-1 -1 scale
-
-/cp {closepath} bind def
-/ef {eofill} bind def
-/gr {grestore} bind def
-/gs {gsave} bind def
-/sa {save} bind def
-/rs {restore} bind def
-/l {lineto} bind def
-/m {moveto} bind def
-/rm {rmoveto} bind def
-/n {newpath} bind def
-/s {stroke} bind def
-/sh {show} bind def
-/slc {setlinecap} bind def
-/slj {setlinejoin} bind def
-/slw {setlinewidth} bind def
-/srgb {setrgbcolor} bind def
-/rot {rotate} bind def
-/sc {scale} bind def
-/sd {setdash} bind def
-/ff {findfont} bind def
-/sf {setfont} bind def
-/scf {scalefont} bind def
-/sw {stringwidth} bind def
-/tr {translate} bind def
-/tnt {dup dup currentrgbcolor
- 4 -2 roll dup 1 exch sub 3 -1 roll mul add
- 4 -2 roll dup 1 exch sub 3 -1 roll mul add
- 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb}
- bind def
-/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul
- 4 -2 roll mul srgb} bind def
-/reencdict 12 dict def /ReEncode { reencdict begin
-/newcodesandnames exch def /newfontname exch def /basefontname exch def
-/basefontdict basefontname findfont def /newfont basefontdict maxlength dict def
-basefontdict { exch dup /FID ne { dup /Encoding eq
-{ exch dup length array copy newfont 3 1 roll put }
-{ exch newfont 3 1 roll put } ifelse } { pop pop } ifelse } forall
-newfont /FontName newfontname put newcodesandnames aload pop
-128 1 255 { newfont /Encoding get exch /.notdef put } for
-newcodesandnames length 2 idiv { newfont /Encoding get 3 1 roll put } repeat
-newfontname newfont definefont pop end } def
-/isovec [
-8#200 /grave 8#201 /acute 8#202 /circumflex 8#203 /tilde
-8#204 /macron 8#205 /breve 8#206 /dotaccent 8#207 /dieresis
-8#210 /ring 8#211 /cedilla 8#212 /hungarumlaut 8#213 /ogonek 8#214 /caron
-8#220 /dotlessi 8#230 /oe 8#231 /OE
-8#240 /space 8#241 /exclamdown 8#242 /cent 8#243 /sterling
-8#244 /currency 8#245 /yen 8#246 /brokenbar 8#247 /section 8#250 /dieresis
-8#251 /copyright 8#252 /ordfeminine 8#253 /guillemotleft 8#254 /logicalnot
-8#255 /endash 8#256 /registered 8#257 /macron 8#260 /degree 8#261 /plusminus
-8#262 /twosuperior 8#263 /threesuperior 8#264 /acute 8#265 /mu 8#266 /paragraph
-8#267 /periodcentered 8#270 /cedilla 8#271 /onesuperior 8#272 /ordmasculine
-8#273 /guillemotright 8#274 /onequarter 8#275 /onehalf
-8#276 /threequarters 8#277 /questiondown 8#300 /Agrave 8#301 /Aacute
-8#302 /Acircumflex 8#303 /Atilde 8#304 /Adieresis 8#305 /Aring
-8#306 /AE 8#307 /Ccedilla 8#310 /Egrave 8#311 /Eacute
-8#312 /Ecircumflex 8#313 /Edieresis 8#314 /Igrave 8#315 /Iacute
-8#316 /Icircumflex 8#317 /Idieresis 8#320 /Eth 8#321 /Ntilde 8#322 /Ograve
-8#323 /Oacute 8#324 /Ocircumflex 8#325 /Otilde 8#326 /Odieresis 8#327 /multiply
-8#330 /Oslash 8#331 /Ugrave 8#332 /Uacute 8#333 /Ucircumflex
-8#334 /Udieresis 8#335 /Yacute 8#336 /Thorn 8#337 /germandbls 8#340 /agrave
-8#341 /aacute 8#342 /acircumflex 8#343 /atilde 8#344 /adieresis 8#345 /aring
-8#346 /ae 8#347 /ccedilla 8#350 /egrave 8#351 /eacute
-8#352 /ecircumflex 8#353 /edieresis 8#354 /igrave 8#355 /iacute
-8#356 /icircumflex 8#357 /idieresis 8#360 /eth 8#361 /ntilde 8#362 /ograve
-8#363 /oacute 8#364 /ocircumflex 8#365 /otilde 8#366 /odieresis 8#367 /divide
-8#370 /oslash 8#371 /ugrave 8#372 /uacute 8#373 /ucircumflex
-8#374 /udieresis 8#375 /yacute 8#376 /thorn 8#377 /ydieresis] def
-/Times-Roman /Times-Roman-iso isovec ReEncode
-/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def
-/$F2psEnd {$F2psEnteredState restore end} def
-%%EndProlog
-
-$F2psBegin
-10 setmiterlimit
-n -1000 5242 m -1000 -1000 l 7942 -1000 l 7942 5242 l cp clip
- 0.06299 0.06299 sc
-% Polyline
-7.500 slw
-n 2970 1530 m 6930 1530 l 6930 2205 l 2970 2205 l cp gs col0 s gr
-% Polyline
-n 2970 2205 m 6930 2205 l 6930 2880 l 2970 2880 l cp gs col0 s gr
-% Polyline
-n 2970 2880 m 6930 2880 l 6930 3555 l 2970 3555 l cp gs col0 s gr
-% Polyline
-n 2970 3555 m 6930 3555 l 6930 4230 l 2970 4230 l cp gs col0 s gr
-% Polyline
-n 3285 1530 m 3285 2205 l gs col0 s gr
-% Polyline
-n 4230 2205 m 4230 2880 l gs col0 s gr
-% Polyline
-n 5535 2205 m 5535 2880 l gs col0 s gr
-/Times-Roman-iso ff 270.00 scf sf
-3960 3375 m
-gs 1 -1 sc (Buffer address 1) col0 sh gr
-/Times-Roman-iso ff 270.00 scf sf
-3960 4005 m
-gs 1 -1 sc (Buffer address 2) col0 sh gr
-/Times-Roman-iso ff 210.00 scf sf
-3105 2610 m
-gs 1 -1 sc (Control bits) col0 sh gr
-/Times-Roman-iso ff 210.00 scf sf
-4860 2475 m
-gs 1 -1 sc (Byte-Count) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman-iso ff 210.00 scf sf
-4860 2730 m
-gs 1 -1 sc (Buffer 2) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman-iso ff 210.00 scf sf
-6210 2520 m
-gs 1 -1 sc (Byte-Count) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman-iso ff 210.00 scf sf
-6210 2775 m
-gs 1 -1 sc (Buffer 1) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman-iso ff 210.00 scf sf
-3150 1755 m
-gs 1 -1 sc (O) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman-iso ff 210.00 scf sf
-3150 2160 m
-gs 1 -1 sc (N) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman-iso ff 210.00 scf sf
-3150 1980 m
-gs 1 -1 sc (W) dup sw pop 2 div neg 0 rm col0 sh gr
-/Times-Roman-iso ff 270.00 scf sf
-4590 1935 m
-gs 1 -1 sc (Status) col0 sh gr
-$F2psEnd
-rs
diff --git a/doc/networking/recvbd.jpg b/doc/networking/recvbd.jpg
deleted file mode 100644
index b15b21b325..0000000000
--- a/doc/networking/recvbd.jpg
+++ /dev/null
Binary files differ
diff --git a/doc/networking/recvbd.txt b/doc/networking/recvbd.txt
deleted file mode 100644
index ca60e7e826..0000000000
--- a/doc/networking/recvbd.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-Figure: Buffer Descriptor
- (Not available in ASCII version of this document.)
diff --git a/doc/networking/servers.t b/doc/networking/servers.t
deleted file mode 100644
index 58e8019280..0000000000
--- a/doc/networking/servers.t
+++ /dev/null
@@ -1,115 +0,0 @@
-@c
-@c Text Written by Jake Janovetz
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-
-@chapter Network Servers
-
-@section RTEMS FTP Daemon
-
-The RTEMS FTPD is a complete file transfer protocol (FTP) daemon
-which can store, retrieve, and manipulate files on the local
-filesystem. In addition, the RTEMS FTPD provides ``hooks''
-which are actions performed on received data. Hooks are useful
-in situations where a destination file is not necessarily
-appropriate or in cases when a formal device driver has not yet
-been implemented.
-
-This server was implemented and documented by Jake Janovetz
-(janovetz@@tempest.ece.uiuc.edu).
-
-@subsection Configuration Parameters
-
-The configuration structure for FTPD is as follows:
-
-@example
-struct rtems_ftpd_configuration
-@{
- rtems_task_priority priority; /* FTPD task priority */
- unsigned long max_hook_filesize; /* Maximum buffersize */
- /* for hooks */
- int port; /* Well-known port */
- struct rtems_ftpd_hook *hooks; /* List of hooks */
-@};
-@end example
-
-The FTPD task priority is specified with @code{priority}. Because
-hooks are not saved as files, the received data is placed in an
-allocated buffer. @code{max_hook_filesize} specifies the maximum
-size of this buffer. Finally, @code{hooks} is a pointer to the
-configured hooks structure.
-
-@subsection Initializing FTPD (Starting the daemon)
-
-Starting FTPD is done with a call to @code{rtems_initialize_ftpd()}.
-The configuration structure must be provided in the application
-source code. Example hooks structure and configuration structure
-folllow.
-
-@example
-struct rtems_ftpd_hook ftp_hooks[] =
- @{
- @{"untar", Untar_FromMemory@},
- @{NULL, NULL@}
- @};
-
-struct rtems_ftpd_configuration rtems_ftpd_configuration =
- @{
- 40, /* FTPD task priority */
- 512*1024, /* Maximum hook 'file' size */
- 0, /* Use default port */
- ftp_hooks /* Local ftp hooks */
- @};
-@end example
-
-Specifying 0 for the well-known port causes FTPD to use the
-UNIX standard FTPD port (21).
-
-@subsection Using Hooks
-
-In the example above, one hook was installed. The hook causes
-FTPD to call the function @code{Untar_FromMemory} when the
-user sends data to the file @code{untar}. The prototype for
-the @code{untar} hook (and hooks, in general) is:
-
-@example
- int Untar_FromMemory(unsigned char *tar_buf, unsigned long size);
-@end example
-
-An example FTP transcript which exercises this hook is:
-
-@example
-220 RTEMS FTP server (Version 1.0-JWJ) ready.
-Name (dcomm0:janovetz): John Galt
-230 User logged in.
-Remote system type is RTEMS.
-ftp> bin
-200 Type set to I.
-ftp> dir
-200 PORT command successful.
-150 ASCII data connection for LIST.
-drwxrwx--x 0 0 268 dev
-drwxrwx--x 0 0 0 TFTP
-226 Transfer complete.
-ftp> put html.tar untar
-local: html.tar remote: untar
-200 PORT command successful.
-150 BINARY data connection.
-210 File transferred successfully.
-471040 bytes sent in 0.48 secs (9.6e+02 Kbytes/sec)
-ftp> dir
-200 PORT command successful.
-150 ASCII data connection for LIST.
-drwxrwx--x 0 0 268 dev
-drwxrwx--x 0 0 0 TFTP
-drwxrwx--x 0 0 3484 public_html
-226 Transfer complete.
-ftp> quit
-221 Goodbye.
-@end example
-
-
-
diff --git a/doc/networking/stamp-vti b/doc/networking/stamp-vti
deleted file mode 100644
index 5634951ec8..0000000000
--- a/doc/networking/stamp-vti
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 24 February 2013
-@set UPDATED-MONTH February 2013
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0
diff --git a/doc/networking/testing.t b/doc/networking/testing.t
deleted file mode 100644
index f455709a47..0000000000
--- a/doc/networking/testing.t
+++ /dev/null
@@ -1,365 +0,0 @@
-@c
-@c Written by Eric Norum
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-
-@chapter Testing the Driver
-
-@section Preliminary Setup
-
-The network used to test the driver should include at least:
-
-@itemize @bullet
-
-@item The hardware on which the driver is to run.
-It makes testing much easier if you can run a debugger to control
-the operation of the target machine.
-
-@item An Ethernet network analyzer or a workstation with an
-`Ethernet snoop' program such as @code{ethersnoop} or
-@code{tcpdump}.
-
-@item A workstation.
-
-@end itemize
-
-During early debug, you should consider putting the target, workstation,
-and snooper on a small network by themselves. This offers a few
-advantages:
-
-@itemize @bullet
-
-@item There is less traffic to look at on the snooper and for the target
-to process while bringing the driver up.
-
-@item Any serious errors will impact only your small network not a building
-or campus network. You want to avoid causing any unnecessary problems.
-
-@item Test traffic is easier to repeatably generate.
-
-@item Performance measurements are not impacted by other systems on
-the network.
-
-@end itemize
-
-@section Debug Output
-
-There are a number of sources of debug output that can be enabled
-to aid in tracing the behavior of the network stack. The following
-is a list of them:
-
-@itemize @bullet
-
-@item mbuf activity
-
-There are commented out calls to @code{printf} in the file
-@code{sys/mbuf.h} in the network stack code. Uncommenting
-these lines results in output when mbuf's are allocated
-and freed. This is very useful for finding memory leaks.
-
-@item TX and RX queuing
-
-There are commented out calls to @code{printf} in the file
-@code{net/if.h} in the network stack code. Uncommenting
-these lines results in output when packets are placed
-on or removed from one of the transmit or receive packet
-queues. These queues can be viewed as the boundary line
-between a device driver and the network stack. If the
-network stack is enqueuing packets to be transmitted that
-the device driver is not dequeuing, then that is indicative
-of a problem in the transmit side of the device driver.
-Conversely, if the device driver is enqueueing packets
-as it receives them (via a call to @code{ether_input}) and
-they are not being dequeued by the network stack,
-then there is a problem. This situation would likely indicate
-that the network server task is not running.
-
-@item TCP state transitions
-
-In the unlikely event that one would actually want to see
-TCP state transitions, the @code{TCPDEBUG} macro can be defined
-in the file @code{opt_tcpdebug.h}. This results in the routine
-@code{tcp_trace()} being called by the network stack and
-the state transitions logged into the @code{tcp_debug} data
-structure. If the variable @code{tcpconsdebug} in the file
-@code{netinet/tcp_debug.c} is set to 1, then the state transitions
-will also be printed to the console.
-
-@end itemize
-
-@section Monitor Commands
-
-There are a number of command available in the shell / monitor
-to aid in tracing the behavior of the network stack. The following
-is a list of them:
-
-@itemize @bullet
-
-@item @code{inet}
-
-This command shows the current routing information for the TCP/IP stack. Following is an
-example showing the output of this command.
-
-@example
-Destination Gateway/Mask/Hw Flags Refs Use Expire Interface
-10.0.0.0 255.0.0.0 U 0 0 17 smc1
-127.0.0.1 127.0.0.1 UH 0 0 0 lo0
-@end example
-
-In this example, there is only one network interface with an IP address of 10.8.1.1. This
-link is currently not up.
-
-Two routes that are shown are the default routes for the Ethernet interface (10.0.0.0) and the
-loopback interface (127.0.0.1).
-
-Since the stack comes from BSD, this command is very similar to the netstat command. For more
-details on the network routing please look the following
-URL: (@url{http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/network-routing.html})
-
-For a quick reference to the flags, see the table below:
-
-@table @samp
-@item U
-Up: The route is active.
-@item H
-Host: The route destination is a single host.
-@item G
-Gateway: Send anything for this destination on to this remote system, which
-will figure out from there where to send it.
-@item S
-Static: This route was configured manually, not automatically generated by the
-system.
-@item C
-Clone: Generates a new route based upon this route for machines we connect
-to. This type of route is normally used for local networks.
-@item W
-WasCloned: Indicated a route that was auto-configured based upon a local area
-network (Clone) route.
-@item L
-Link: Route involves references to Ethernet hardware.
-@end table
-
-@item @code{mbuf}
-
-This command shows the current MBUF statistics. An example of the command is shown below:
-
-@example
-************ MBUF STATISTICS ************
-mbufs:4096 clusters: 256 free: 241
-drops: 0 waits: 0 drains: 0
- free:4080 data:16 header:0 socket:0
- pcb:0 rtable:0 htable:0 atable:0
- soname:0 soopts:0 ftable:0 rights:0
- ifaddr:0 control:0 oobdata:0
-@end example
-
-@item @code{if}
-
-This command shows the current statistics for your Ethernet driver as long as the ioctl hook
-@code{SIO_RTEMS_SHOW_STATS} has been implemented. Below is an example:
-
-@example
-************ INTERFACE STATISTICS ************
-***** smc1 *****
-Ethernet Address: 00:12:76:43:34:25
-Address:10.8.1.1 Broadcast Address:10.255.255.255 Net mask:255.0.0.0
-Flags: Up Broadcast Running Simplex
-Send queue limit:50 length:0 Dropped:0
-SMC91C111 RTEMS driver A0.01 11/03/2002 Ian Caddy (ianc@@microsol.iinet.net.au)
- Rx Interrupts:0 Not First:0 Not Last:0
- Giant:0 Runt:0 Non-octet:0
- Bad CRC:0 Overrun:0 Collision:0
- Tx Interrupts:2 Deferred:0 Missed Hearbeat:0
- No Carrier:0 Retransmit Limit:0 Late Collision:0
- Underrun:0 Raw output wait:0 Coalesced:0
- Coalesce failed:0 Retries:0
-***** lo0 *****
-Address:127.0.0.1 Net mask:255.0.0.0
-Flags: Up Loopback Running Multicast
-Send queue limit:50 length:0 Dropped:0
-@end example
-
-@item @code{ip}
-
-This command show the IP statistics for the currently configured interfaces.
-
-@item @code{icmp}
-
-This command show the ICMP statistics for the currently configured interfaces.
-
-@item @code{tcp}
-
-This command show the TCP statistics for the currently configured interfaces.
-
-@item @code{udp}
-
-This command show the UDP statistics for the currently configured interfaces.
-
-@end itemize
-
-
-@section Driver basic operation
-
-The network demonstration program @code{netdemo} may be used for these tests.
-
-@itemize @bullet
-
-@item Edit @code{networkconfig.h} to reflect the values for your network.
-
-@item Start with @code{RTEMS_USE_BOOTP} not defined.
-
-@item Edit @code{networkconfig.h} to configure the driver
-with an
-explicit Ethernet and Internet address and with reception of
-broadcast packets disabled:
-
-Verify that the program continues to run once the driver has been attached.
-
-@item Issue a @samp{u} command to send UDP
-packets to the `discard' port.
-Verify that the packets appear on the network.
-
-@item Issue a @samp{s} command to print the network and driver statistics.
-
-@item On a workstation, add a static route to the target system.
-
-@item On that same workstation try to `ping' the target system.
-Verify that the ICMP echo request and reply packets appear on the net.
-
-@item Remove the static route to the target system.
-Modify @code{networkconfig.h} to attach the driver
-with reception of broadcast packets enabled.
-Try to `ping' the target system again.
-Verify that ARP request/reply and ICMP echo request/reply packets appear
-on the net.
-
-@item Issue a @samp{t} command to send TCP
-packets to the `discard' port.
-Verify that the packets appear on the network.
-
-@item Issue a @samp{s} command to print the network and driver statistics.
-
-@item Verify that you can telnet to ports 24742
-and 24743 on the target system from one or more
-workstations on your network.
-
-@end itemize
-
-@section BOOTP/DHCP operation
-
-Set up a BOOTP/DHCP server on the network.
-Set define @code{RTEMS USE_BOOT} in @code{networkconfig.h}.
-Run the @code{netdemo} test program.
-Verify that the target system configures itself from the BOOTP/DHCP server and
-that all the above tests succeed.
-
-@section Stress Tests
-
-Once the driver passes the tests described in the previous section it should
-be subjected to conditions which exercise it more
-thoroughly and which test its error handling routines.
-
-@subsection Giant packets
-
-@itemize @bullet
-@item Recompile the driver with @code{MAXIMUM_FRAME_SIZE} set to
-a smaller value, say 514.
-
-@item `Ping' the driver from another workstation and verify
-that frames larger than 514 bytes are correctly rejected.
-
-@item Recompile the driver with @code{MAXIMUM_FRAME_SIZE} restored to 1518.
-@end itemize
-
-@subsection Resource Exhaustion
-
-@itemize @bullet
-@item Edit @code{networkconfig.h}
-so that the driver is configured with just two receive and transmit descriptors.
-
-@item Compile and run the @code{netdemo} program.
-
-@item Verify that the program operates properly and that you can
-still telnet to both the ports.
-
-@item Display the driver statistics (Console `@code{s}' command or telnet
-`control-G' character) and verify that:
-
-@enumerate
-
-@item The number of transmit interrupts is non-zero.
-This indicates that all transmit descriptors have been in use at some time.
-
-@item The number of missed packets is non-zero.
-This indicates that all receive descriptors have been in use at some time.
-
-@end enumerate
-
-@end itemize
-
-@subsection Cable Faults
-
-@itemize @bullet
-@item Run the @code{netdemo} program.
-
-@item Issue a `@code{u}' console command to make the target machine transmit
-a bunch of UDP packets.
-
-@item While the packets are being transmitted, disconnect and reconnect the
-network cable.
-
-@item Display the network statistics and verify that the driver has
-detected the loss of carrier.
-
-@item Verify that you can still telnet to both ports on the target machine.
-
-@end itemize
-
-@subsection Throughput
-
-Run the @code{ttcp} network benchmark program.
-Transfer large amounts of data (100's of megabytes) to and from the target
-system.
-
-The procedure for testing throughput from a host to an RTEMS target
-is as follows:
-
-@enumerate
-@item Download and start the ttcp program on the Target.
-
-@item In response to the @code{ttcp} prompt, enter @code{-s -r}. The
-meaning of these flags is described in the @code{ttcp.1} manual page
-found in the @code{ttcp_orig} subdirectory.
-
-@item On the host run @code{ttcp -s -t <<insert the hostname or IP address of
-the Target here>>}
-
-@end enumerate
-
-
-The procedure for testing throughput from an RTEMS target
-to a Host is as follows:
-
-@enumerate
-@item On the host run @code{ttcp -s -r}.
-
-@item Download and start the ttcp program on the Target.
-
-@item In response to the @code{ttcp} prompt, enter @code{-s -t <<insert
-the hostname or IP address of the Target here>>}. You need to type the
-IP address of the host unless your Target is talking to your Domain Name
-Server.
-
-@end enumerate
-
-To change the number of buffers, the buffer size, etc. you just add the
-extra flags to the @code{-t} machine as specified in the @code{ttcp.1}
-manual page found in the @code{ttcp_orig} subdirectory.
-
-
-
-
-
diff --git a/doc/networking/version.texi b/doc/networking/version.texi
deleted file mode 100644
index c0e4bbb7b6..0000000000
--- a/doc/networking/version.texi
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 17 July 2015
-@set UPDATED-MONTH July 2015
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0
diff --git a/doc/new_chapters/Makefile.am b/doc/new_chapters/Makefile.am
deleted file mode 100644
index 25badd1d0e..0000000000
--- a/doc/new_chapters/Makefile.am
+++ /dev/null
@@ -1,35 +0,0 @@
-#
-# COPYRIGHT (c) 1988-2002.
-# On-Line Applications Research Corporation (OAR).
-# All rights reserved.
-
-PROJECT = new_chapters
-
-include $(top_srcdir)/project.am
-include $(top_srcdir)/main.am
-
-GENERATED_FILES = error.texi monitor.texi
-
-COMMON_FILES += $(top_srcdir)/common/cpright.texi
-
-FILES =
-
-info_TEXINFOS = new_chapters.texi
-new_chapters_TEXINFOS = $(FILES) $(COMMON_FILES) $(GENERATED_FILES)
-
-error.texi: error.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-monitor.texi: monitor.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-noinst_SCRIPTS = gen_section
-
-EXTRA_DIST = error.t monitor.t STATUS TODO \
- $(noinst_SCRIPTS)
-
-CLEANFILES += new_chapters.info new_chapters.info-?
diff --git a/doc/new_chapters/STATUS b/doc/new_chapters/STATUS
deleted file mode 100644
index 6147647468..0000000000
--- a/doc/new_chapters/STATUS
+++ /dev/null
@@ -1,5 +0,0 @@
-Each of the chapters is individually generated with no attempt to link
-the chapters together into a long hypertext chain.
-
-Some are chapters for POSIX 1003.1h managers. Some are RTEMS support
-libraries that we have not figured out where to put in the documentation.
diff --git a/doc/new_chapters/TODO b/doc/new_chapters/TODO
deleted file mode 100644
index 9f5a884add..0000000000
--- a/doc/new_chapters/TODO
+++ /dev/null
@@ -1,4 +0,0 @@
-
-General - check that all nodes have "none" if they don't have a note.
-
-
diff --git a/doc/new_chapters/error.t b/doc/new_chapters/error.t
deleted file mode 100644
index da1f30eba6..0000000000
--- a/doc/new_chapters/error.t
+++ /dev/null
@@ -1,161 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Error Reporting Support
-
-@section Introduction
-
-These error reporting facilities are an RTEMS support
-component that provide convenient facilities for handling
-error conditions in an RTEMS application.
-of each task using a period. The services provided by the error
-reporting support component are:
-
-@itemize @bullet
-@item @code{rtems_error} - Report an Error
-@item @code{rtems_panic} - Report an Error and Panic
-@item @code{rtems_status_text} - ASCII Version of RTEMS Status
-@end itemize
-
-@section Background
-
-@subsection Error Handling in an Embedded System
-
-Error handling in an embedded system is a difficult problem. If the error
-is severe, then the only recourse is to shut the system down in a safe
-manner. Other errors can be detected and compensated for. The
-error reporting routines in this support component -- @code{rtems_error}
-and @code{rtems_panic} assume that if the error is severe enough,
-then the system should be shutdown. If a simple shutdown with
-some basic diagnostic information is not sufficient, then
-these routines should not be used in that particular system. In this case,
-use the @code{rtems_status_text} routine to construct an application
-specific error reporting routine.
-
-@section Operations
-
-@subsection Reporting an Error
-
-The @code{rtems_error} and @code{rtems_panic} routines
-can be used to print some diagnostic information and
-shut the system down. The @code{rtems_error} routine
-is invoked with a user specified error level indicator.
-This error indicator is used to determine if the system
-should be shutdown after reporting this error.
-
-@section Routines
-
-This section details the error reporting support compenent's routine.
-A subsection is dedicated to each of this manager's routines
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-@page
-@subsection rtems_status_text - ASCII Version of RTEMS Status
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-const char *rtems_status_text(
- rtems_status_code status
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-An Ada interface is not currently available.
-@end example
-@end ifset
-
-@subheading STATUS CODES:
-
-Returns a pointer to a constant string that describes the given
-RTEMS status code.
-
-@subheading DESCRIPTION:
-
-This routine returns a pointer to a string that describes
-the RTEMS status code specified by @code{status}.
-
-@subheading NOTES:
-
-NONE
-
-@page
-@subsection rtems_error - Report an Error
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int rtems_error(
- int error_code,
- const char *printf_format,
- ...
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-An Ada interface is not currently available.
-@end example
-@end ifset
-
-@subheading STATUS CODES:
-
-Returns the number of characters written.
-
-@subheading DESCRIPTION:
-
-This routine prints the requested information as specified by the
-@code{printf_format} parameter and the zero or more optional arguments
-following that parameter. The @code{error_code} parameter is an error
-number with either @code{RTEMS_ERROR_PANIC} or @code{RTEMS_ERROR_ABORT}
-bitwise or'ed with it. If the @code{RTEMS_ERROR_PANIC} bit is set, then
-then the system is system is shutdown via a call to @code{_exit}.
-If the @code{RTEMS_ERROR_ABORT} bit is set, then
-then the system is system is shutdown via a call to @code{abort}.
-
-@subheading NOTES:
-
-NONE
-
-@page
-@subsection rtems_panic - Report an Error and Panic
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int rtems_panic(
- const char *printf_format,
- ...
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-An Ada interface is not currently available.
-@end example
-@end ifset
-
-@subheading STATUS CODES:
-
-Returns the number of characters written.
-
-@subheading DESCRIPTION:
-
-This routine is a wrapper for the @code{rtems_error} routine with
-an implied error level of @code{RTEMS_ERROR_PANIC}. See
-@code{rtems_error} for more information.
-
-@subheading NOTES:
-
-NONE
-
diff --git a/doc/new_chapters/gen_section b/doc/new_chapters/gen_section
deleted file mode 100644
index a4524b1191..0000000000
--- a/doc/new_chapters/gen_section
+++ /dev/null
@@ -1,237 +0,0 @@
-#
-# This shell script generates the starting template for a manager chapter.
-#
-
-
-# Set this based on which chapter you want to generate a template for.
-chapter=$1
-
-case ${chapter} in
- smp) # Classic API SMP
- CHAPTER_CAPS="Symmetric Multiprocessing"
- CHAPTER_LOWER="symmetric multiprocessing"
- # XXX
- ROUTINES="rtems_task_get_affinity \
- rtems_task_set_affinity"
- ;;
- pthreadsmp) # POSIX API SMP
- CHAPTER_CAPS="Thread Affinity"
- CHAPTER_LOWER="Thread Affinity"
- # XXX
- ROUTINES="pthread_attr_getaffinity_np pthread_attr_setaffinity_np \
- pthread_getaffinity_np pthread_setaffinity_np"
- ;;
- process)
- CHAPTER_CAPS="Process Creation and Execution"
- CHAPTER_LOWER="process creation and execution"
- ROUTINES="fork execl execv execle execve execlp execvp pthread_atfork \
- wait waitpid _exit"
- ;;
- procenv)
- CHAPTER_CAPS="Process Environment"
- CHAPTER_LOWER="process environment"
- ROUTINES="getpid getppid getuid geteuid getgid getegid setuid setgid \
- getgroups getlogin getlogin_r getpgrp setsid setpgid uname times \
- getenv ctermid ttyname ttyname_r isatty sysconf "
- ;;
- files)
- CHAPTER_CAPS="Files and Directories"
- CHAPTER_LOWER="files and directories"
- ROUTINES="opendir readdir readdir_r rewinddir closedir \
- chdir getcwd open creat umask link mkdir mkfifo unlink \
- rmdir rename stat fstat access chmod fchmod chown \
- utime ftrunctate pathconf fpathconf"
- ;;
- io)
- CHAPTER_CAPS="Input and Output Primitives"
- CHAPTER_LOWER="input and output primitives"
- ROUTINES="pipe dup dup2 close read write fcntl lseek fsynch fdatasynch \
- aio_read aio_write lio_listio aio_error aio_return aio_cancel \
- aio_suspend aio_fsync"
- ;;
- device)
- CHAPTER_CAPS="Device- and Class- Specific Functions"
- CHAPTER_LOWER="device- and class- specific functions"
- ROUTINES="cfgetispeed cfgetospeed cfsetispeed cfsetospeed tcgetattr \
- tcsetattr tcsendbreak tcdrain tcflush tcflow tcgetpgrp tcsetpgrp"
- ;;
- cspecific)
- CHAPTER_CAPS="Language-Specific Services for the C Programming Language"
- CHAPTER_LOWER="language-specific services for the C programming language"
- ROUTINES="setlocale fileno fdopen flcokfile ftrylockfile funlockfile \
- getc_unlocked getchar_unlocked putc_unlocked putchar_unlocked \
- setjmp longjmp sigsetjmp siglongjmp tzset strtok_r asctime_r \
- ctime_r gmtime_r localtime_r rand_r"
- ;;
- systemdb)
- CHAPTER_CAPS="System Databases"
- CHAPTER_LOWER="system databases"
- ROUTINES="getgrgid getgrgid_r getgrnam getgrnam_r getpwuid getpwuid_r \
- getpwnam getpwnam_r"
- ;;
- semaphores)
- CHAPTER_CAPS="Semaphores"
- CHAPTER_LOWER="semaphore"
- ROUTINES="sem_init sem_destroy sem_open sem_close sem_unlink sem_wait \
- sem_trywait sem_post sem_getvalue"
- ;;
- memorymgmt)
- CHAPTER_CAPS="Memory Management"
- CHAPTER_LOWER="memory management"
- ROUTINES="mlockall munlockall mlock munlock mmap munmap mprotect \
- msync shm_open shm_unlink"
- ;;
- message)
- CHAPTER_CAPS="Message Passing"
- CHAPTER_LOWER="message passing"
- ROUTINES="mq_open mq_close mq_unlink mq_send mq_receive mq_notify \
- mq_setattr mq_getattr"
- ;;
- cancel)
- CHAPTER_CAPS="Thread Cancellation"
- CHAPTER_LOWER="thread cancellation"
- ROUTINES="pthread_cancel pthread_setcancelstate pthread_setcanceltype \
- pthread_testcancel pthread_cleanup_push"
- ;;
- eventlog)
- CHAPTER_CAPS="Event Logging"
- CHAPTER_LOWER="event logging"
- ROUTINES="log_write log_open log_read log_notify log_close log_seek \
- log_severity_before log_facilityemptyset log_facilityfillset \
- log_facilityaddset log_facilitydelset log_facilityismember"
- ;;
- dumpcontrol)
- CHAPTER_CAPS="Process Dump Control"
- CHAPTER_LOWER="process dump control"
- ROUTINES="dump_setpath"
- ;;
- confspace)
- CHAPTER_CAPS="Configuration Space"
- CHAPTER_LOWER="configuration space"
- ROUTINES="cfg_mount cfg_unmount cfg_mknod cfg_get cfg_set cfg_link \
- cfg_unlink cfg_open cfg_read cfg_children cfg_mark cfg_close"
- ;;
- adminiface)
- CHAPTER_CAPS="Administration Interface"
- CHAPTER_LOWER="administration interface"
- ROUTINES="admin_shutdown"
- ;;
- # XXX this is not all of the C Library Stuff
- libc_ctype)
- CHAPTER_CAPS="C Library Character Handling"
- CHAPTER_LOWER="character handling"
- ROUTINES="isalnum isalpha iscntrl isdigit isgraph islower isprint \
- ispunct isspace isupper isxdigit tolower toupper"
- ;;
- libc_math)
- CHAPTER_CAPS="C Math Library"
- CHAPTER_LOWER="math library"
- ROUTINES="acos asis atan atan2 cos sin tan cosh sinh tanh exp frexp ldexp
- log log10 modf pow sqrt ceil fabs floor fmod"
- ;;
- libc_io)
- CHAPTER_CAPS="C Library IO"
- CHAPTER_LOWER="C Library IO"
- ROUTINES="clearerr fclose feof ferror fflush fgetc fgets fopen fputc \
- fputs fread freopen fseek ftell fwrite getc getchar gets perror \
- printf fprintf sprintf putc putchar puts remove rename rewind \
- scanf fscanf sscanf setbuf tempfile tmpnam ungetc"
- ;;
- libc_string)
- CHAPTER_CAPS="C Library String Handling"
- CHAPTER_LOWER="string handling"
- ROUTINES="strcpy strncpy strcat strncat strcmp strncmp strchr strcspn \
- strpbrk strrchr strspn strstr strtok stlen"
- ;;
- misc_error)
- CHAPTER_CAPS="Error Reporting Support"
- CHAPTER_LOWER="error reporting support"
- ROUTINES="rtems_error rtems_panic"
- ;;
- misc_monitor)
- CHAPTER_CAPS="Monitor Task"
- CHAPTER_LOWER="monitor task"
- ROUTINES="rtems_monitor_init rtems_monitor_wakeup"
- ;;
- *)
- echo "Unknown chapter name"
- exit 1
- ;;
-esac
-
-if [ "x${CHAPTER_CAPS}" = "x" -o "x${CHAPTER_LOWER}" = "x" \
- -o "x${ROUTINES}" = "x" ] ; then
- echo "initialization problem"
- exit 1
-fi
-
-echo "@c"
-echo "@c COPYRIGHT (c) 1988-2014."
-echo "@c On-Line Applications Research Corporation (OAR)."
-echo "@c All rights reserved. "
-echo "@c"
-echo ""
-echo "@chapter ${CHAPTER_CAPS}" Manager
-echo ""
-echo "@section Introduction"
-echo ""
-echo "The "
-echo "${CHAPTER_LOWER} manager is ..."
-echo ""
-echo "The directives provided by the ${CHAPTER_LOWER} manager are:"
-echo ""
-echo "@itemize @bullet"
-
-for routine in ${ROUTINES}
-do
- echo "@item @code{${routine}} - TBD"
-done
-echo "@end itemize"
-
-echo ""
-echo "@section Background"
-echo ""
-echo "@section Operations"
-echo ""
-echo "@section Directives"
-echo ""
-echo "This section details the ${CHAPTER_LOWER} manager's directives."
-echo "A subsection is dedicated to each of this manager's directives"
-echo "and describes the calling sequence, related constants, usage,"
-echo "and status codes."
-echo ""
-
-for routine in ${ROUTINES}
-do
- echo "@c"
- echo "@c ${routine}"
- echo "@c"
- echo "@page"
- echo "@subsection ${routine} - "
- echo ""
- echo "@subheading CALLING SEQUENCE:"
- echo ""
- echo "@ifset is-C"
- echo "@example"
- echo "int ${routine}("
- echo ");"
- echo "@end example"
- echo "@end ifset"
- echo ""
- echo "@ifset is-Ada"
- echo "@end ifset"
- echo ""
- echo "@subheading STATUS CODES:"
- echo ""
- echo "@table @b"
- echo "@item E"
- echo "The"
- echo ""
- echo "@end table"
- echo ""
- echo "@subheading DESCRIPTION:"
- echo ""
- echo "@subheading NOTES:"
- echo ""
-done
-
diff --git a/doc/new_chapters/monitor.t b/doc/new_chapters/monitor.t
deleted file mode 100644
index 566ca316a4..0000000000
--- a/doc/new_chapters/monitor.t
+++ /dev/null
@@ -1,221 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Monitor Task
-
-@section Introduction
-
-The monitor task is a simple interactive shell that allows the user to
-make inquries about he state of various system objects. The routines
-provided by the monitor task manager are:
-
-@itemize @bullet
-@item @code{rtems_monitor_init} - Initialize the Monitor Task
-@item @code{rtems_monitor_wakeup} - Wakeup the Monitor Task
-@end itemize
-
-@section Background
-
-There is no background information.
-
-@section Operations
-
-@subsection Initializing the Monitor
-
-The monitor is initialized by calling @code{rtems_monitor_init}. When
-initialized, the monitor is created as an independent task. An example
-of initializing the monitor is shown below:
-
-@example
-@group
-#include <rtems/monitor.h>
- ...
-rtems_monitor_init(0);
-@end group
-@end example
-
-The "0" parameter to the @code{rtems_monitor_init} routine
-causes the monitor to immediately enter command mode.
-This parameter is a bitfield. If the monitor is to suspend
-itself on startup, then the @code{RTEMS_MONITOR_SUSPEND} bit
-should be set.
-
-@section Routines
-
-This section details the monitor task manager's routines.
-A subsection is dedicated to each of this manager's routines
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-@page
-@subsection rtems_monitor_init - Initialize the Monitor Task
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-void rtems_monitor_init(
- unsigned32 monitor_flags
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-An Ada interface is not currently available.
-@end example
-@end ifset
-
-@subheading STATUS CODES: NONE
-
-@subheading DESCRIPTION:
-
-This routine initializes the RTEMS monitor task. The
-@code{monitor_flags} parameter indicates how the server
-task is to start. This parameter is a bitfield and
-has the following constants associated with it:
-
-@itemize @bullet
-@item @b{RTEMS_MONITOR_SUSPEND} - suspend monitor on startup
-@item @b{RTEMS_MONITOR_GLOBAL} - monitor should be global
-@end itemize
-
-If the @code{RTEMS_MONITOR_SUSPEND} bit is set, then the
-monitor task will suspend itself after it is initialized.
-A subsequent call to @code{rtems_monitor_wakeup} will be required
-to activate it.
-
-@subheading NOTES:
-
-The monitor task is created with priority 1. If there are
-application tasks at priority 1, then there may be times
-when the monitor task is not executing.
-
-@page
-@subsection rtems_monitor_wakeup - Wakeup the Monitor Task
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-void rtems_monitor_wakeup( void );
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-An Ada interface is not currently available.
-@end example
-@end ifset
-
-@subheading STATUS CODES: NONE
-
-@subheading DESCRIPTION:
-
-This routine is used to activate the monitor task if it is suspended.
-
-@subheading NOTES:
-
-NONE
-
-@page
-@section Monitor Interactive Commands
-
-The following commands are supported by the monitor task:
-
-@itemize @bullet
-@item @code{help} - Obtain Help
-@item @code{pause} - Pause Monitor for a Specified Number of Ticks
-@item @code{exit} - Invoke a Fatal RTEMS Error
-@item @code{symbol} - Show Entries from Symbol Table
-@item @code{continue} - Put Monitor to Sleep Waiting for Explicit Wakeup
-@item @code{config} - Show System Configuration
-@item @code{itask} - List Init Tasks
-@item @code{mpci} - List MPCI Config
-@item @code{task} - Show Task Information
-@item @code{queue} - Show Message Queue Information
-@item @code{extension} - User Extensions
-@item @code{driver} - Show Information About Named Drivers
-@item @code{dname} - Show Information About Named Drivers
-@item @code{object} - Generic Object Information
-@item @code{node} - Specify Default Node for Commands That Take IDs
-@end itemize
-
-
-@subsection help - Obtain Help
-
-The @code{help} command prints out the list of commands. If invoked
-with a command name as the first argument, detailed help information
-on that command is printed.
-
-@subsection pause - Pause Monitor for a Specified Number of Ticks
-
-The @code{pause} command cause the monitor task to suspend itself
-for the specified number of ticks. If this command is invoked with
-no arguments, then the task is suspended for 1 clock tick.
-
-@subsection exit - Invoke a Fatal RTEMS Error
-
-The @code{exit} command invokes @code{rtems_error_occurred} directive
-with the specified error code. If this command is invoked with
-no arguments, then the @code{rtems_error_occurred} directive is
-invoked with an arbitrary error code.
-
-@subsection symbol - Show Entries from Symbol Table
-
-The @code{symbol} command lists the specified entries in the symbol table.
-If this command is invoked with no arguments, then all the
-symbols in the symbol table are printed.
-
-@subsection continue - Put Monitor to Sleep Waiting for Explicit Wakeup
-
-The @code{continue} command suspends the monitor task with no timeout.
-
-@subsection config - Show System Configuration
-
-The @code{config} command prints the system configuration.
-
-@subsection itask - List Init Tasks
-
-The @code{itask} command lists the tasks in the initialization tasks table.
-
-@subsection mpci - List MPCI Config
-
-The @code{mpci} command shows the MPCI configuration information
-
-@subsection task - Show Task Information
-
-The @code{task} command prints out information about one or more tasks in
-the system. If invoked with no arguments, then
-information on all the tasks in the system is printed.
-
-@subsection queue - Show Message Queue Information
-
-The @code{queue} command prints out information about one or more
-message queues in the system. If invoked with no arguments, then
-information on all the message queues in the system is printed.
-
-@subsection extension - User Extensions
-
-The @code{extension} command prints out information about the user
-extensions.
-
-@subsection driver - Show Information About Named Drivers
-
-The @code{driver} command prints information about the device driver table.
-
-@subsection dname - Show Information About Named Drivers
-
-The @code{dname} command prints information about the named device drivers.
-
-@subsection object - Generic Object Information
-
-The @code{object} command prints information about RTEMS objects.
-
-@subsection node - Specify Default Node for Commands That Take IDs
-
-The @code{node} command sets the default node for commands that look
-at object ID ranges.
-
diff --git a/doc/new_chapters/new_chapters.texi b/doc/new_chapters/new_chapters.texi
deleted file mode 100644
index f27724dbc3..0000000000
--- a/doc/new_chapters/new_chapters.texi
+++ /dev/null
@@ -1,107 +0,0 @@
-\input texinfo @c -*-texinfo-*-
-@c %**start of header
-@setfilename new_chapters.info
-@setcontentsaftertitlepage
-@syncodeindex vr fn
-@synindex ky cp
-@paragraphindent 0
-@c %**end of header
-
-@c
-@c COPYRIGHT (c) 1989-2013.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@c
-@c Master file for the C User's Guide
-@c
-
-@c Joel's Questions
-@c
-@c 1. Why does paragraphindent only impact makeinfo?
-@c 2. Why does paragraphindent show up in HTML?
-@c
-
-@include version.texi
-@include common/setup.texi
-@include common/rtems.texi
-
-@ifset use-ascii
-@dircategory RTEMS On-Line Manual
-@direntry
-* RTEMS New Chapters: (new_chapters). Miscellaneous New Chapters
-@end direntry
-@end ifset
-
-@c variable substitution info:
-@c
-@c Note: At the moment we do not document the Ada interface but by building
-@c in the infrastructure Florist support should be simple to add.
-@set is-C
-@clear is-Ada
-@set LANGUAGE C
-@set STRUCTURE structure
-@set ROUTINE function
-@set OR |
-@set RPREFIX RTEMS_
-@set DIRPREFIX rtems_
-@c the language is @value{LANGUAGE}
-@c NOTE: don't use underscore in the name
-@c
-
-@c
-@c Title Page Stuff
-@c
-
-@c
-@c I don't really like having a short title page. --joel
-@c
-@c @shorttitlepage New Chapters
-
-@setchapternewpage odd
-@settitle New Chapters
-@titlepage
-@finalout
-
-@title New Chapters
-@subtitle Edition @value{EDITION}, for RTEMS @value{VERSION}
-@sp 1
-@subtitle @value{UPDATED}
-@author On-Line Applications Research Corporation
-@page
-@include common/cpright.texi
-@end titlepage
-
-@c This prevents a black box from being printed on "overflow" lines.
-@c The alternative is to rework a sentence to avoid this problem.
-
-@contents
-
-@node Top, , (dir), (dir)
-@top RTEMS POSIX API User's Guide
-
-@menu
-* Error Reporting Support::
-* Monitor Task::
-* Command and Variable Index::
-* Concept Index::
-@end menu
-
-@include error.texi
-@include monitor.texi
-
-@node Command and Variable Index, Concept Index, , Top
-@unnumbered Command and Variable Index
-
-There are currently no Command and Variable Index entries.
-
-@c @printindex fn
-
-@node Concept Index, , Command and Variable Index, Top
-@unnumbered Concept Index
-
-There are currently no Concept Index entries.
-@c @printindex cp
-
-@bye
-
diff --git a/doc/new_chapters/stamp-vti b/doc/new_chapters/stamp-vti
deleted file mode 100644
index a77d339def..0000000000
--- a/doc/new_chapters/stamp-vti
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 27 June 2007
-@set UPDATED-MONTH June 2007
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0
diff --git a/doc/new_chapters/version.texi b/doc/new_chapters/version.texi
deleted file mode 100644
index c0e4bbb7b6..0000000000
--- a/doc/new_chapters/version.texi
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 17 July 2015
-@set UPDATED-MONTH July 2015
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0
diff --git a/doc/porting/Makefile.am b/doc/porting/Makefile.am
deleted file mode 100644
index 93d387def5..0000000000
--- a/doc/porting/Makefile.am
+++ /dev/null
@@ -1,78 +0,0 @@
-#
-# COPYRIGHT (c) 1988-2002.
-# On-Line Applications Research Corporation (OAR).
-# All rights reserved.
-
-PROJECT = porting
-
-include $(top_srcdir)/project.am
-include $(top_srcdir)/main.am
-
-FILES = preface.texi developtools.texi sourcecode.texi cpumodels.texi \
- cpuinit.texi interrupts.texi taskcontext.texi idlethread.texi \
- prioritybitmap.texi codetuning.texi miscellaneous.texi
-
-GENERATED_FILES = developtools.texi sourcecode.texi cpumodels.texi \
- cpuinit.texi interrupts.texi taskcontext.texi idlethread.texi \
- prioritybitmap.texi codetuning.texi miscellaneous.texi
-
-COMMON_FILES += $(top_srcdir)/common/cpright.texi
-
-info_TEXINFOS = porting.texi
-porting_TEXINFOS = $(FILES) $(COMMON_FILES) $(GENERATED_FILES)
-
-developtools.texi: developtools.t
- $(BMENU2) -p "Preface" \
- -u "Top" \
- -n "Source Code Organization" < $< > $@
-
-sourcecode.texi: sourcecode.t
- $(BMENU2) -p "Development Tools" \
- -u "Top" \
- -n "CPU Model Variations" < $< > $@
-
-cpumodels.texi: cpumodels.t
- $(BMENU2) -p "Source Code Organization Introduction" \
- -u "Top" \
- -n "CPU Initialization" < $< > $@
-
-cpuinit.texi: cpuinit.t
- $(BMENU2) -p "CPU Model Variations Coding Issues" \
- -u "Top" \
- -n "Interrupts" < $< > $@
-
-interrupts.texi: interrupts.t
- $(BMENU2) -p "CPU Initialization Initializing the CPU" \
- -u "Top" \
- -n "Task Context Management" < $< > $@
-
-taskcontext.texi: taskcontext.t
- $(BMENU2) -p "Interrupts Pointer to _Thread_Dispatch Routine" \
- -u "Top" \
- -n "IDLE Thread" < $< > $@
-
-idlethread.texi: idlethread.t
- $(BMENU2) -p "Task Context Management Restoring a Floating Point Context" \
- -u "Top" \
- -n "Priority Bitmap Manipulation" < $< > $@
-
-prioritybitmap.texi: prioritybitmap.t
- $(BMENU2) -p "IDLE Thread Idle Thread Body" \
- -u "Top" \
- -n "Code Tuning Parameters" < $< > $@
-
-codetuning.texi: codetuning.t
- $(BMENU2) -p "Priority Bitmap Manipulation Bit Scan Support" \
- -u "Top" \
- -n "Miscellaneous" < $< > $@
-
-miscellaneous.texi: miscellaneous.t
- $(BMENU2) -p "Code Tuning Parameters Partition Element Alignment" \
- -u "Top" \
- -n "Command and Variable Index" < $< > $@
-
-EXTRA_DIST = codetuning.t cpuinit.t cpumodels.t developtools.t idlethread.t \
- interrupts.t miscellaneous.t prioritybitmap.t sourcecode.t \
- taskcontext.t
-
-CLEANFILES += porting.info porting.info-?
diff --git a/doc/porting/codetuning.t b/doc/porting/codetuning.t
deleted file mode 100644
index 44a00bb01f..0000000000
--- a/doc/porting/codetuning.t
+++ /dev/null
@@ -1,152 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Code Tuning Parameters
-
-@section Inline Thread_Enable_dispatch
-
-Should the calls to _Thread_Enable_dispatch be inlined?
-
-If TRUE, then they are inlined.
-
-If FALSE, then a subroutine call is made.
-
-
-Basically this is an example of the classic trade-off of size versus
-speed. Inlining the call (TRUE) typically increases the size of RTEMS
-while speeding up the enabling of dispatching.
-
-[NOTE: In general, the _Thread_Dispatch_disable_level will only be 0 or 1
-unless you are in an interrupt handler and that interrupt handler invokes
-the executive.] When not inlined something calls _Thread_Enable_dispatch
-which in turns calls _Thread_Dispatch. If the enable dispatch is inlined,
-then one subroutine call is avoided entirely.]
-
-@example
-#define CPU_INLINE_ENABLE_DISPATCH FALSE
-@end example
-
-@section Inline Thread_queue_Enqueue_priority
-
-Should the body of the search loops in _Thread_queue_Enqueue_priority be
-unrolled one time? In unrolled each iteration of the loop examines two
-"nodes" on the chain being searched. Otherwise, only one node is examined
-per iteration.
-
-If TRUE, then the loops are unrolled.
-
-If FALSE, then the loops are not unrolled.
-
-The primary factor in making this decision is the cost of disabling and
-enabling interrupts (_ISR_Flash) versus the cost of rest of the body of
-the loop. On some CPUs, the flash is more expensive than one iteration of
-the loop body. In this case, it might be desirable to unroll the loop.
-It is important to note that on some CPUs, this code is the longest
-interrupt disable period in RTEMS. So it is necessary to strike a balance
-when setting this parameter.
-
-@example
-#define CPU_UNROLL_ENQUEUE_PRIORITY TRUE
-@end example
-
-
-@section Structure Alignment Optimization
-
-The following macro may be defined to the attribute setting used to force
-alignment of critical RTEMS structures. On some processors it may make
-sense to have these aligned on tighter boundaries than the minimum
-requirements of the compiler in order to have as much of the critical data
-area as possible in a cache line. This ensures that the first access of
-an element in that structure fetches most, if not all, of the data
-structure and places it in the data cache. Modern CPUs often have cache
-lines of at least 16 bytes and thus a single access implicitly fetches
-some surrounding data and places that unreferenced data in the cache.
-Taking advantage of this allows RTEMS to essentially prefetch critical
-data elements.
-
-The placement of this macro in the declaration of the variables is based
-on the syntactically requirements of the GNU C "__attribute__" extension.
-For another toolset, the placement of this macro could be incorrect. For
-example with GNU C, use the following definition of
-CPU_STRUCTURE_ALIGNMENT to force a structures to a 32 byte boundary.
-
-#define CPU_STRUCTURE_ALIGNMENT __attribute__ ((aligned (32)))
-
-To benefit from using this, the data must be heavily used so it will stay
-in the cache and used frequently enough in the executive to justify
-turning this on. NOTE: Because of this, only the Priority Bit Map table
-currently uses this feature.
-
-The following illustrates how the CPU_STRUCTURE_ALIGNMENT is defined on
-ports which require no special alignment for optimized access to data
-structures:
-
-@example
-#define CPU_STRUCTURE_ALIGNMENT
-@end example
-
-@section Data Alignment Requirements
-
-@subsection Data Element Alignment
-
-The CPU_ALIGNMENT macro should be set to the CPU's worst alignment
-requirement for data types on a byte boundary. This is typically the
-alignment requirement for a C double. This alignment does not take into
-account the requirements for the stack.
-
-The following sets the CPU_ALIGNMENT macro to 8 which indicates that there
-is a basic C data type for this port which much be aligned to an 8 byte
-boundary.
-
-@example
-#define CPU_ALIGNMENT 8
-@end example
-
-@subsection Heap Element Alignment
-
-The CPU_HEAP_ALIGNMENT macro is set to indicate the byte alignment
-requirement for data allocated by the RTEMS Code Heap Handler. This
-alignment requirement may be stricter than that for the data types
-alignment specified by CPU_ALIGNMENT. It is common for the heap to follow
-the same alignment requirement as CPU_ALIGNMENT. If the CPU_ALIGNMENT is
-strict enough for the heap, then this should be set to CPU_ALIGNMENT. This
-macro is necessary to ensure that allocated memory is properly aligned for
-use by high level language routines.
-
-The following example illustrates how the CPU_HEAP_ALIGNMENT macro is set
-when the required alignment for elements from the heap is the same as the
-basic CPU alignment requirements.
-
-@example
-#define CPU_HEAP_ALIGNMENT CPU_ALIGNMENT
-@end example
-
-NOTE: This does not have to be a power of 2. It does have to be greater
-or equal to than CPU_ALIGNMENT.
-
-@subsection Partition Element Alignment
-
-The CPU_PARTITION_ALIGNMENT macro is set to indicate the byte alignment
-requirement for memory buffers allocated by the RTEMS Partition Manager
-that is part of the Classic API. This alignment requirement may be
-stricter than that for the data types alignment specified by
-CPU_ALIGNMENT. It is common for the partition to follow the same
-alignment requirement as CPU_ALIGNMENT. If the CPU_ALIGNMENT is strict
-enough for the partition, then this should be set to CPU_ALIGNMENT. This
-macro is necessary to ensure that allocated memory is properly aligned for
-use by high level language routines.
-
-The following example illustrates how the CPU_PARTITION_ALIGNMENT macro is
-set when the required alignment for elements from the RTEMS Partition
-Manager is the same as the basic CPU alignment requirements.
-
-
-@example
-#define CPU_PARTITION_ALIGNMENT CPU_ALIGNMENT
-@end example
-
-NOTE: This does not have to be a power of 2. It does have to be greater
-or equal to than CPU_ALIGNMENT.
-
diff --git a/doc/porting/cpuinit.t b/doc/porting/cpuinit.t
deleted file mode 100644
index 9e8e36c86c..0000000000
--- a/doc/porting/cpuinit.t
+++ /dev/null
@@ -1,49 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter CPU Initialization
-
-This section describes the general CPU and system initialization sequence
-as it pertains to the CPU dependent code.
-
-@section Introduction
-
-XXX general startup sequence description rewritten to make it more
-applicable to CPU depdent code in executive
-
-@section Initializing the CPU
-
-The _CPU_Initialize routine performs processor dependent initialization.
-
-@example
-void _CPU_Initialize(
- void (*thread_dispatch) /* may be ignored */
-)
-@end example
-
-The thread_dispatch argument is the address of the entry point for the
-routine called at the end of an ISR once it has been decided a context
-switch is necessary. On some compilation systems it is difficult to call
-a high-level language routine from assembly. Providing the address of the
-_Thread_ISR_Dispatch routine allows the porter an easy way to obtain this
-critical address and thus provides an easy way to work around this
-limitation on these systems.
-
-If you encounter this problem save the entry point in a CPU dependent
-variable as shown below:
-
-@example
-_CPU_Thread_dispatch_pointer = thread_dispatch;
-@end example
-
-
-During the initialization of the context for tasks with floating point,
-the CPU dependent code is responsible for initializing the floating point
-context. If there is not an easy way to initialize the FP context during
-Context_Initialize, then it is usually easier to save an "uninitialized"
-FP context here and copy it to the task's during Context_Initialize. If
-this technique is used to initialize the FP contexts, then it is important
-to ensure that the state of the floating point unit is in a coherent,
-initialized state.
diff --git a/doc/porting/cpumodels.t b/doc/porting/cpumodels.t
deleted file mode 100644
index fb2306cab3..0000000000
--- a/doc/porting/cpumodels.t
+++ /dev/null
@@ -1,134 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter CPU Model Variations
-
-XXX enhance using portability presentation from CS595 class. See
-general/portability.ppt.
-
-Since the text in the next section was written, RTEMS view of
-portability has grown to distinguish totally portable, CPU
-family dependent, CPU model dependent, peripheral chip dependent
-and board dependent. This text was part of a larger paper that
-did not even cover portability completely as it existed when this
-was written and certainly is out of date now. :)
-
-
-@section Overview of RTEMS Portability
-
-RTEMS was designed to be a highly portable, reusable software component.
-This reflects the fundamental nature of embedded systems in which hardware
-components, ranging from boards to peripherals to even the processor
-itself, are selected specifically to meet the requirements of a particular
-project.
-
-@subsection Processor Families
-
-Since there are a wide variety of embedded systems, there are a wide
-variety of processors targeting embedded systems. RTEMS alleviates some of
-the burden on the embedded systems programmer by providing a consistent,
-high-performance environment regardless of the target processor. RTEMS
-has been ported to a variety of microprocessor families including:
-
-@itemize @bullet
-
-@item Motorola ColdFire
-@item Motorola MC68xxx
-@item Motorola MC683xx
-@item Intel ix86 (i386, i486, Pentium and above)
-@item ARM
-@item MIPS
-@item PowerPC 4xx, 5xx, 6xx, 7xx, 8xx, and 84xx
-@item SPARC
-@item Hitachi H8/300
-@item Hitachi SH
-@item OpenCores OR32
-@item Texas Instruments C3x/C4x
-
-@end itemize
-
-
-In addition, there is a port of RTEMS to UNIX that uses standard UNIX
-services to simulate the embedded environment.
-
-Each RTEMS port supplies a well-defined set of services that are the
-foundation for the highly portable RTEMS and POSIX API implementations.
-When porting to a new processor family, one must provide the processor
-dependent implementation of these services. This set of processor
-dependent core services includes software to perform interrupt
-dispatching, context switches, and manipulate task register sets.
-
-The RTEMS approach to handling varying processor models reflects the
-approach taken by the designers of the processors themselves. In each
-processor family, there is a core architecture that must be implemented on
-all processor models within the family to provide any level of
-compatibility. Many of the modern RISC architectures refer to this as the
-Architectural Definition. The Architectural Definition is intended to be
-independent of any particular implementation. Additionally, there is a
-feature set which is allowed to vary in a defined way amongst the
-processor models. These feature sets may be defined as Optional in the
-Architectural Definition, be left as implementation defined
-characteristics, or be processor model specific extensions. Support for
-floating point, virtual memory, and low power mode are common Optional
-features included in an Architectural Definition.
-
-The processor family dependent software in RTEMS includes a definition of
-which features are present in each supported processor model. This often
-makes adding support for a new processor model within a supported family
-as simple as determining which features are present in the new processor
-implementation. If the new processor model varies in a way previously
-unaccounted for, then this must be addressed. This could be the result of
-a new Optional feature set being added to the Architectural Definition.
-Alternatively, this particular processor model could have a new and
-different implementation of a feature left as undefined in the
-Architectural Definition. This would require software to be written to
-utilize that feature.
-
-There is a relatively small set of features that may vary in a processor
-family. As the number of processor models in the family grow, the
-addition of each new model only requires adding an entry for the new model
-to the single feature table. It does not require searching for every
-conditional based on processor model and adding the new model in the
-appropriate place. This significantly eases the burden of adding a new
-processor model as it centralizes and logically simplifies the process.
-
-@subsection Boards
-
-Being portable both between models within a processor family and across
-processor families is not enough to address the needs of embedded systems
-developers. Custom board development is the norm for embedded systems.
-Each of these boards is optimized for a particular project. The processor
-and peripheral set have been chosen to meet a particular set of system
-requirements. The tools in the embedded systems developers’ toolbox must
-support their project’s unique board. RTEMS addresses this issue via the
-Board Support Package.
-
-RTEMS segregates board specific code to make it possible for the embedded
-systems developer to easily replace and customize this software. A
-minimal Board Support Package includes device drivers for a clock tick,
-console I/O, and a benchmark timer (optional) as well as startup and
-miscellaneous support code. The Board Support Package for a project may
-be extended to include the device drivers for any peripherals on the
-custom board.
-
-@subsection Applications
-
-One important design goal of RTEMS was to provide a bridge between the
-application software and the target hardware. Most hardware dependencies
-for real-time applications can be localized to the low level device
-drivers which provide an abstracted view of the hardware. The RTEMS I/O
-interface manager provides an efficient tool for incorporating these
-hardware dependencies into the system while simultaneously providing a
-general mechanism to the application code that accesses them. A well
-designed real-time system can benefit from this architecture by building a
-rich library of standard application components which can be used
-repeatedly in other real-time projects. The following figure illustrates
-how RTEMS serves as a buffer between the project dependent application
-code and the target hardware.
-
-@section Coding Issues
-
-XXX deal with this as it applies to score/cpu. Section name may
-be bad.
diff --git a/doc/porting/developtools.t b/doc/porting/developtools.t
deleted file mode 100644
index a2278ae128..0000000000
--- a/doc/porting/developtools.t
+++ /dev/null
@@ -1,23 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Development Tools
-
-When porting RTEMS to a new CPU architecture, one will have to have a
-development environment including compiler, assembler, linker, and
-debugger. The GNU development tool suite used by RTEMS supports most
-modern CPU families. Often all that is required is to add RTEMS
-configurations for the target CPU family. RTEMS targets for the GNU tools
-usually start life as little more than aliases for existing embedded
-configurations. At this point in time, ELF is supported on most of the
-CPU families with a tool target of the form CPU-elf. If this target is
-not supported by all of the GNU tools, then it will be necessary to
-determine the configuration that makes the best starting point regardless
-of the target object format.
-
-Porting and retargetting the GNU tools is beyond the scope of this manual.
-The best advice that can be offered is to look at the existing RTEMS
-targets in the tool source and use that as a guideline.
-
diff --git a/doc/porting/idlethread.t b/doc/porting/idlethread.t
deleted file mode 100644
index 8ec36ca710..0000000000
--- a/doc/porting/idlethread.t
+++ /dev/null
@@ -1,112 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter IDLE Thread
-
-@section Does Idle Thread Have a Floating Point Context?
-
-The setting of the macro CPU_IDLE_TASK_IS_FP is based on the answer to the
-question: Should the IDLE task have a floating point context? If the
-answer to this question is TRUE, then the IDLE task has a floating point
-context associated. This is equivalent to creating a task in the Classic
-API (using rtems_task_create) as a RTEMS_FLOATING_POINT task. If
-CPU_IDLE_TASK_IS_FP is set to TRUE, then a floating point context switch
-occurs when the IDLE task is switched in and out. This adds to the
-execution overhead of the system but is necessary on some ports.
-
-If FALSE, then the IDLE task does not have a floating point context.
-
-NOTE: Setting CPU_IDLE_TASK_IS_FP to TRUE negatively impacts the time
-required to preempt the IDLE task from an interrupt because the floating
-point context must be saved as part of the preemption.
-
-The following illustrates how to set this macro:
-
-@example
-#define CPU_IDLE_TASK_IS_FP FALSE
-@end example
-
-@section CPU Dependent Idle Thread Body
-
-@subsection CPU_PROVIDES_IDLE_THREAD_BODY Macro Setting
-
-The CPU_PROVIDES_IDLE_THREAD_BODY macro setting is based upon the answer
-to the question: Does this port provide a CPU dependent IDLE task
-implementation? If the answer to this question is yes, then the
-CPU_PROVIDES_IDLE_THREAD_BODY macro should be set to TRUE, and the routine
-_CPU_Thread_Idle_body must be provided. This routine overrides the
-default IDLE thread body of _Thread_Idle_body. If the
-CPU_PROVIDES_IDLE_THREAD_BODY macro is set to FALSE, then the generic
-_Thread_Idle_body is the default IDLE thread body for this port.
-Regardless of whether or not a CPU dependent IDLE thread implementation is
-provided, the BSP can still override it.
-
-This is intended to allow for supporting processors which have a low power
-or idle mode. When the IDLE thread is executed, then the CPU can be
-powered down when the processor is idle.
-
-The order of precedence for selecting the IDLE thread body is:
-
-@enumerate
-@item BSP provided
-
-@item CPU dependent (if provided)
-
-@item generic (if no BSP and no CPU dependent)
-
-@end enumerate
-
-The following illustrates setting the CPU_PROVIDES_IDLE_THREAD_BODY macro:
-
-@example
-#define CPU_PROVIDES_IDLE_THREAD_BODY TRUE
-@end example
-
-Implementation details of a CPU model specific IDLE thread body are in the
-next section.
-
-@subsection Idle Thread Body
-
-The _CPU_Thread_Idle_body routine only needs to be provided if the porter
-wishes to include a CPU dependent IDLE thread body. If the port includes
-a CPU dependent implementation of the IDLE thread body, then the
-CPU_PROVIDES_IDLE_THREAD_BODY macro should be defined to TRUE. This
-routine is prototyped as follows:
-
-@example
-void *_CPU_Thread_Idle_body( uintptr_t );
-@end example
-
-As mentioned above, RTEMS does not require that a CPU dependent IDLE
-thread body be provided as part of the port. If
-CPU_PROVIDES_IDLE_THREAD_BODY is defined to FALSE, then the CPU
-independent algorithm is used. This algorithm consists of a "branch to
-self" which is implemented in a routine as follows.
-
-@example
-void *_Thread_Idle_body( uintptr_t ignored )
-@{
- while( 1 ) ;
-@}
-@end example
-
-If the CPU dependent IDLE thread body is implementation centers upon using
-a "halt", "idle", or "shutdown" instruction, then don't forget to put it
-in an infinite loop as the CPU will have to reexecute this instruction
-each time the IDLE thread is dispatched.
-
-@example
-void *_CPU_Thread_Idle_body( uintptr_t ignored )
-@{
-
- for( ; ; )
- /* insert your "halt" instruction here */ ;
-@}
-@end example
-
-Be warned. Some processors with onboard DMA have been known to stop the
-DMA if the CPU were put in IDLE mode. This might also be a problem with
-other on-chip peripherals. So use this hook with caution.
-
diff --git a/doc/porting/interrupts.t b/doc/porting/interrupts.t
deleted file mode 100644
index 09e24900f1..0000000000
--- a/doc/porting/interrupts.t
+++ /dev/null
@@ -1,413 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Interrupts
-
-@section Introduction
-
-@section Interrupt Levels
-
-RTEMS is designed assuming that a CPU family has a level associated with
-interrupts. Interrupts below the current interrupt level are masked and
-do not interrupt the CPU until the interrupt level is lowered. This
-design provides for 256 distinct interrupt levels even though most CPU
-implementations support far fewer levels. Interrupt level 0 is assumed to
-map to the hardware settings for all interrupts enabled.
-
-Over the years that RTEMS has been available, there has been much
-discussion on how to handle CPU families which support very few interrupt
-levels such as the i386, PowerPC, and HP-PA RISC. XXX
-
-@subsection Interrupt Level Mask
-
-The CPU_MODES_INTERRUPT_MASK macro defines the number of bits actually used in the interrupt field of the task mode. How those bits map to the CPU interrupt levels is defined by the routine _CPU_ISR_Set_level().
-
-The following illustrates how the CPU_MODES_INTERRUPT_MASK is set on a CPU
-family like the Intel i386 where the CPU itself only recognizes two
-interrupt levels - enabled and disabled.
-
-@example
-#define CPU_MODES_INTERRUPT_MASK 0x00000001
-@end example
-
-
-@subsection Obtaining the Current Interrupt Level
-
-The _CPU_ISR_Get_level function returns the current interrupt level.
-
-@example
-uint32_t _CPU_ISR_Get_level( void )
-@end example
-
-@subsection Set the Interrupt Level
-
-The _CPU_ISR_Set_level routine maps the interrupt level in the Classic API
-task mode onto the hardware that the CPU actually provides. Currently,
-interrupt levels that do not map onto the CPU in a generic fashion are
-undefined. Someday, it would be nice if these were "mapped" by the
-application via a callout. For example, the Motorola m68k has 8 levels 0
-- 7, and levels 8 - 255 are currently undefined. Levels 8 - 255 would be
-available for bsp/application specific meaning. This could be used to
-manage a programmable interrupt controller via the rtems_task_mode
-directive.
-
-The following is a dummy implementation of the _CPU_ISR_Set_level routine:
-
-@example
-#define _CPU_ISR_Set_level( new_level ) \
- @{ \
- @}
-@end example
-
-The following is the implementation from the Motorola M68K:
-
-@example
-XXX insert m68k implementation here
-@end example
-
-
-@subsection Disable Interrupts
-
-The _CPU_ISR_Disable routine disable all external interrupts. It returns
-the previous interrupt level in the single parameter _isr_cookie. This
-routine is used to disable interrupts during a critical section in the
-RTEMS executive. Great care is taken inside the executive to ensure that
-interrupts are disabled for a minimum length of time. It is important to
-note that the way the previous level is returned forces the implementation
-to be a macro that translates to either inline assembly language or a
-function call whose return value is placed into _isr_cookie.
-
-It is important for the porter to realize that the value of _isr_cookie
-has no defined meaning except that it is the most convenient format for
-the _CPU_ISR_Disable, _CPU_ISR_Enable, and _CPU_ISR_Disable routines to
-manipulate. It is typically the contents of the processor status
-register. It is NOT the same format as manipulated by the
-_CPU_ISR_Get_level and _CPU_ISR_Set_level routines. The following is a
-dummy implementation that simply sets the previous level to 0.
-
-@example
-#define _CPU_ISR_Disable( _isr_cookie ) \
- @{ \
- (_isr_cookie) = 0; /* do something to prevent warnings */ \
- @}
-@end example
-
-The following is the implementation from the Motorola M68K port:
-
-@example
-XXX insert m68k port here
-@end example
-
-@subsection Enable Interrupts
-
-The _CPU_ISR_Enable routines enables interrupts to the previous level
-(returned by _CPU_ISR_Disable). This routine is invoked at the end of an
-RTEMS critical section to reenable interrupts. The parameter _level is
-not modified but indicates that level that interrupts should be enabled
-to. The following illustrates a dummy implementation of the
-_CPU_ISR_Enable routine:
-
-@example
-#define _CPU_ISR_Enable( _isr_cookie ) \
- @{ \
- @}
-@end example
-
-The following is the implementation from the Motorola M68K port:
-
-@example
-XXX insert m68k version here
-@end example
-
-
-@subsection Flash Interrupts
-
-The _CPU_ISR_Flash routine temporarily restores the interrupt to _level
-before immediately disabling them again. This is used to divide long
-RTEMS critical sections into two or more parts. This routine is always
-preceded by a call to _CPU_ISR_Disable and followed by a call to
-_CPU_ISR_Enable. The parameter _level is not modified.
-
-The following is a dummy implementation of the _CPU_ISR_Flash routine:
-
-@example
-#define _CPU_ISR_Flash( _isr_cookie ) \
- @{ \
- @}
-@end example
-
-The following is the implementation from the Motorola M68K port:
-
-@example
-XXX insert m68k version here
-@end example
-
-
-@section Interrupt Stack Management
-
-@subsection Hardware or Software Managed Interrupt Stack
-
-The setting of the CPU_HAS_SOFTWARE_INTERRUPT_STACK indicates whether the
-interrupt stack is managed by RTEMS in software or the CPU has direct
-support for an interrupt stack. If RTEMS is to manage a dedicated
-interrupt stack in software, then this macro should be set to TRUE and the
-memory for the software managed interrupt stack is allocated in
-@code{_ISR_Handler_initialization}. If this macro is set to FALSE, then
-RTEMS assumes that the hardware managed interrupt stack is supported by
-this CPU. If the CPU has a hardware managed interrupt stack, then the
-porter has the option of letting the BSP allcoate and initialize the
-interrupt stack or letting RTEMS do this. If RTEMS is to allocate the
-memory for the interrupt stack, then the macro
-CPU_ALLOCATE_INTERRUPT_STACK should be set to TRUE. If this macro is set
-to FALSE, then it is the responsibility of the BSP to allocate the memory
-for this stack and initialize it.
-
-If the CPU does not support a dedicated interrupt stack, then the porter
-has two options: (1) execute interrupts on the stack of the interrupted
-task, and (2) have RTEMS manage a dedicated interrupt stack.
-
-NOTE: If CPU_HAS_SOFTWARE_INTERRUPT_STACK is TRUE, then the macro
-CPU_ALLOCATE_INTERRUPT_STACK should also be set to TRUE.
-
-Only one of CPU_HAS_SOFTWARE_INTERRUPT_STACK and
-CPU_HAS_HARDWARE_INTERRUPT_STACK should be set to TRUE. It is possible
-that both are FALSE for a particular CPU. Although it is unclear what
-that would imply about the interrupt processing procedure on that CPU.
-
-@subsection Allocation of Interrupt Stack Memory
-
-Whether or not the interrupt stack is hardware or software managed, RTEMS
-may allocate memory for the interrupt stack from the Executive Workspace.
-If RTEMS is going to allocate the memory for a dedicated interrupt stack
-in the Interrupt Manager, then the macro CPU_ALLOCATE_INTERRUPT_STACK
-should be set to TRUE.
-
-NOTE: This should be TRUE is CPU_HAS_SOFTWARE_INTERRUPT_STACK is TRUE.
-
-@example
-#define CPU_ALLOCATE_INTERRUPT_STACK TRUE
-@end example
-
-If the CPU_HAS_SOFTWARE_INTERRUPT_STACK macro is set to TRUE, then RTEMS automatically allocates the stack memory in the initialization of the Interrupt Manager and the switch to that stack is performed in @code{_ISR_Handler} on the outermost interrupt. The _CPU_Interrupt_stack_low and _CPU_Interrupt_stack_high variables contain the addresses of the the lowest and highest addresses of the memory allocated for the interrupt stack. Although technically only one of these addresses is required to switch to the interrupt stack, by always providing both addresses, the port has more options avaialble to it without requiring modifications to the portable parts of the executive. Whether the stack grows up or down, this give the CPU dependent code the option of picking the version it wants to use.
-
-@example
-SCORE_EXTERN void *_CPU_Interrupt_stack_low;
-SCORE_EXTERN void *_CPU_Interrupt_stack_high;
-@end example
-
-NOTE: These two variables are required if the macro
-CPU_HAS_SOFTWARE_INTERRUPT_STACK is defined as TRUE.
-
-@subsection Install the Interrupt Stack
-
-The _CPU_Install_interrupt_stack routine XXX
-
-This routine installs the hardware interrupt stack pointer.
-
-NOTE: It need only be provided if CPU_HAS_HARDWARE_INTERRUPT_STAC is TRUE.
-
-@example
-void _CPU_Install_interrupt_stack( void )
-@end example
-
-
-@section ISR Installation
-
-@subsection Install a Raw Interrupt Handler
-
-The _CPU_ISR_install_raw_handler XXX
-
-@example
-void _CPU_ISR_install_raw_handler(
- unsigned32 vector,
- proc_ptr new_handler,
- proc_ptr *old_handler
-)
-@end example
-
-This is where we install the interrupt handler into the "raw" interrupt
-table used by the CPU to dispatch interrupt handlers.
-
-@subsection Interrupt Context
-
-@subsection Maximum Number of Vectors
-
-There are two related macros used to defines the number of entries in the
-_ISR_Vector_table managed by RTEMS. The macro
-CPU_INTERRUPT_NUMBER_OF_VECTORS is the actual number of vectors supported
-by this CPU model. The second macro is the
-CPU_INTERRUPT_MAXIMUM_VECTOR_NUMBER. Since the table is zero-based, this
-indicates the highest vector number which can be looked up in the table
-and mapped into a user provided handler.
-
-@example
-#define CPU_INTERRUPT_NUMBER_OF_VECTORS 32
-#define CPU_INTERRUPT_MAXIMUM_VECTOR_NUMBER \
- (CPU_INTERRUPT_NUMBER_OF_VECTORS - 1)
-@end example
-
-
-@subsection Install RTEMS Interrupt Handler
-
-The _CPU_ISR_install_vector routine installs the RTEMS handler for the
-specified vector.
-
-XXX Input parameters:
-vector - interrupt vector number
-old_handler - former ISR for this vector number
-new_handler - replacement ISR for this vector number
-
-@example
-void _CPU_ISR_install_vector(
- unsigned32 vector,
- proc_ptr new_handler,
- proc_ptr *old_handler
-)
-@end example
-
-@example
-*old_handler = _ISR_Vector_table[ vector ];
-@end example
-
-If the interrupt vector table is a table of pointer to isr entry points,
-then we need to install the appropriate RTEMS interrupt handler for this
-vector number.
-
-@example
-_CPU_ISR_install_raw_handler( vector, new_handler, old_handler );
-@end example
-
-We put the actual user ISR address in _ISR_vector_table. This will be
-used by the @code{_ISR_Handler} so the user gets control.
-
-@example
-_ISR_Vector_table[ vector ] = new_handler;
-@end example
-
-@section Interrupt Processing
-
-@subsection Interrupt Frame Data Structure
-
-When an interrupt occurs, it is the responsibility of the interrupt
-dispatching software to save the context of the processor such that an ISR
-written in a high-level language (typically C) can be invoked without
-damaging the state of the task that was interrupted. In general, this
-results in the saving of registers which are NOT preserved across
-subroutine calls as well as any special interrupt state. A port should
-define the @code{CPU_Interrupt_frame} structure so that application code can
-examine the saved state.
-
-@example
-typedef struct @{
- unsigned32 not_preserved_register_1;
- unsigned32 special_interrupt_register;
-@} CPU_Interrupt_frame;
-@end example
-
-
-@subsection Interrupt Dispatching
-
-The @code{_ISR_Handler} routine provides the RTEMS interrupt management.
-
-@example
-void _ISR_Handler()
-@end example
-
-This discussion ignores a lot of the ugly details in a real implementation
-such as saving enough registers/state to be able to do something real.
-Keep in mind that the goal is to invoke a user's ISR handler which is
-written in C. That ISR handler uses a known set of registers thus
-allowing the ISR to preserve only those that would normally be corrupted
-by a subroutine call.
-
-Also note that the exact order is to a large extent flexible. Hardware
-will dictate a sequence for a certain subset of @code{_ISR_Handler} while
-requirements for setting the RTEMS state variables that indicate the
-interrupt nest level (@code{_ISR_Nest_level}) and dispatching disable
-level (@code{_Thread_Dispatch_disable_level}) will also
-restrict the allowable order.
-
-Upon entry to @code{_ISR_Handler}, @code{_Thread_Dispatch_disable_level} is
-zero if the interrupt occurred while outside an RTEMS service call.
-Conversely, it will be non-zero if interrupting an RTEMS service
-call. Thus, @code{_Thread_Dispatch_disable_level} will always be
-greater than or equal to @code{_ISR_Nest_level} and not strictly
-equal.
-
-Upon entry to the "common" @code{_ISR_Handler}, the vector number must be
-available. On some CPUs the hardware puts either the vector number or the
-offset into the vector table for this ISR in a known place. If the
-hardware does not provide this information, then the assembly portion of
-RTEMS for this port will contain a set of distinct interrupt entry points
-which somehow place the vector number in a known place (which is safe if
-another interrupt nests this one) and branches to @code{_ISR_Handler}.
-
-@example
-save some or all context on stack
-may need to save some special interrupt information for exit
-
-#if ( CPU_HAS_SOFTWARE_INTERRUPT_STACK == TRUE )
- if ( _ISR_Nest_level == 0 )
- switch to software interrupt stack
-#endif
-_ISR_Nest_level++;
-_Thread_Dispatch_disable_level++;
-(*_ISR_Vector_table[ vector ])( vector );
---_ISR_Nest_level;
-if ( _ISR_Nest_level )
- goto the label "exit interrupt (simple case)"
-#if ( CPU_HAS_SOFTWARE_INTERRUPT_STACK == TRUE )
- restore stack
-#endif
-
-if ( _Thread_Dispatch_disable_level )
- goto the label "exit interrupt (simple case)"
-
-if ( _Thread_Dispatch_necessary )
- call _Thread_Dispatch() or prepare to return to _ISR_Dispatch
- prepare to get out of interrupt
- return from interrupt (maybe to _ISR_Dispatch)
-
-LABEL "exit interrupt (simple case):
- prepare to get out of interrupt
- return from interrupt
-@end example
-
-Some ports have the special routine @code{_ISR_Dispatch} because
-the CPU has a special "interrupt mode" and RTEMS must switch back
-to the task stack and/or non-interrupt mode before invoking
-@code{_Thread_Dispatch}. For example, consider the MC68020 where
-upon return from the outermost interrupt, the CPU must switch
-from the interrupt stack to the master stack before invoking
-@code{_Thread_Dispatch}. @code{_ISR_Dispatch} is the special port
-specific wrapper for @code{_Thread_Dispatch} used in this case.
-
-@subsection ISR Invoked with Frame Pointer
-
-Does the RTEMS invoke the user's ISR with the vector number and a pointer
-to the saved interrupt frame (1) or just the vector number (0)?
-
-@example
-#define CPU_ISR_PASSES_FRAME_POINTER 0
-@end example
-
-NOTE: It is desirable to include a pointer to the interrupt stack frame as
-an argument to the interrupt service routine. Eventually, it would be
-nice if all ports included this parameter.
-
-@subsection Pointer to _Thread_Dispatch Routine
-
-With some compilation systems, it is difficult if not impossible to call a
-high-level language routine from assembly language. This is especially
-true of commercial Ada compilers and name mangling C++ ones. This
-variable can be optionally defined by the CPU porter and contains the
-address of the routine _Thread_Dispatch. This can make it easier to
-invoke that routine at the end of the interrupt sequence (if a dispatch is
-necessary).
-
-@example
-void (*_CPU_Thread_dispatch_pointer)();
-@end example
-
diff --git a/doc/porting/miscellaneous.t b/doc/porting/miscellaneous.t
deleted file mode 100644
index cba85f7963..0000000000
--- a/doc/porting/miscellaneous.t
+++ /dev/null
@@ -1,165 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Miscellaneous
-
-@section Fatal Error Default Handler
-
-The @code{_CPU_Fatal_halt} routine is the default fatal error handler. This
-routine copies _error into a known place -- typically a stack location or
-a register, optionally disables interrupts, and halts/stops the CPU. It
-is prototyped as follows and is often implemented as a macro:
-
-@example
-void _CPU_Fatal_halt(
- unsigned32 _error
-);
-@end example
-
-@section CPU Context Validation
-
-The test case @code{sptests/spcontext01} ensures that the context switching and
-interrupt processing works. This test uses two support functions provided by
-the CPU port. These two functions are only used for this test and have no
-other purpose.
-
-@example
-void _CPU_Context_volatile_clobber( uintptr_t pattern );
-
-void _CPU_Context_validate( uintptr_t pattern );
-@end example
-
-The @code{_CPU_Context_volatile_clobber()} function clobbers all volatile
-registers with values derived from the pattern parameter. This makes sure that
-the interrupt prologue code restores all volatile registers of the interrupted
-context.
-
-The @code{_CPU_Context_validate()} function initializes and validates the CPU
-context with values derived from the pattern parameter. This function will not
-return if the CPU context remains consistent. In case this function returns
-the CPU port is broken. The test uses two threads which concurrently validate
-the CPU context with a different patterns for each thread. This ensures that
-the context switching code works.
-
-@section Processor Endianness
-
-Endianness refers to the order in which numeric values are stored in
-memory by the microprocessor. Big endian architectures store the most
-significant byte of a multi-byte numeric value in the byte with the lowest
-address. This results in the hexadecimal value 0x12345678 being stored as
-0x12345678 with 0x12 in the byte at offset zero, 0x34 in the byte at
-offset one, etc.. The Motorola M68K and numerous RISC processor families
-is big endian. Conversely, little endian architectures store the least
-significant byte of a multi-byte numeric value in the byte with the lowest
-address. This results in the hexadecimal value 0x12345678 being stored as
-0x78563412 with 0x78 in the byte at offset zero, 0x56 in the byte at
-offset one, etc.. The Intel ix86 family is little endian.
-Interestingly, some CPU models within the PowerPC and MIPS architectures
-can be switched between big and little endian modes. Most embedded
-systems use these families strictly in big endian mode.
-
-RTEMS must be informed of the byte ordering for this microprocessor family
-and, optionally, endian conversion routines may be provided as part of the
-port. Conversion between endian formats is often necessary in
-multiprocessor environments and sometimes needed when interfacing with
-peripheral controllers.
-
-@subsection Specifying Processor Endianness
-
-The @code{CPU_BIG_ENDIAN} and @code{CPU_LITTLE_ENDIAN} are
-set to specify the endian
-format used by this microprocessor. These macros should not be set to the
-same value. The following example illustrates how these macros should be
-set on a processor family that is big endian.
-
-@example
-#define CPU_BIG_ENDIAN TRUE
-#define CPU_LITTLE_ENDIAN FALSE
-@end example
-
-The @code{CPU_MPCI_RECEIVE_SERVER_EXTRA_STACK} macro is set to the amount of
-stack space above the minimum thread stack space required by the MPCI
-Receive Server Thread. This macro is needed because in a multiprocessor
-system the MPCI Receive Server Thread must be able to process all
-directives.
-
-@example
-#define CPU_MPCI_RECEIVE_SERVER_EXTRA_STACK 0
-@end example
-
-@subsection Endian Swap Unsigned Integers
-
-The port should provide routines to swap sixteen (@code{CPU_swap_u16}) and
-thirty-bit (@code{CPU_swap_u32}) unsigned integers. These are primarily used in
-two areas of RTEMS - multiprocessing support and the network endian swap
-routines. The @code{CPU_swap_u32} routine must be implemented as a static
-routine rather than a macro because its address is taken and used
-indirectly. On the other hand, the @code{CPU_swap_u16} routine may be
-implemented as a macro.
-
-Some CPUs have special instructions that swap a 32-bit quantity in a
-single instruction (e.g. i486). It is probably best to avoid an "endian
-swapping control bit" in the CPU. One good reason is that interrupts
-would probably have to be disabled to insure that an interrupt does not
-try to access the same "chunk" with the wrong endian. Another good reason
-is that on some CPUs, the endian bit endianness for ALL fetches -- both
-code and data -- so the code will be fetched incorrectly.
-
-The following is an implementation of the @code{CPU_swap_u32} routine that will
-work on any CPU. It operates by breaking the unsigned thirty-two bit
-integer into four byte-wide quantities and reassemblying them.
-
-@example
-static inline unsigned int CPU_swap_u32(
- unsigned int value
-)
-@{
- unsigned32 byte1, byte2, byte3, byte4, swapped;
-
- byte4 = (value >> 24) & 0xff;
- byte3 = (value >> 16) & 0xff;
- byte2 = (value >> 8) & 0xff;
- byte1 = value & 0xff;
-
- swapped = (byte1 << 24) | (byte2 << 16) | (byte3 << 8) | byte4;
- return( swapped );
-@}
-@end example
-
-Although the above implementation is portable, it is not particularly
-efficient. So if there is a better way to implement this on a particular
-CPU family or model, please do so. The efficiency of this routine has
-significant impact on the efficiency of the multiprocessing support code
-in the shared memory driver and in network applications using the ntohl()
-family of routines.
-
-Most microprocessor families have rotate instructions which can be used to
-greatly improve the @code{CPU_swap_u32} routine. The most common
-way to do this is to:
-
-@example
-swap least significant two bytes with 16-bit rotate
-swap upper and lower 16-bits
-swap most significant two bytes with 16-bit rotate
-@end example
-
-Some CPUs have special instructions that swap a 32-bit quantity in a
-single instruction (e.g. i486). It is probably best to avoid an "endian
-swapping control bit" in the CPU. One good reason is that interrupts
-would probably have to be disabled to insure that an interrupt does not
-try to access the same "chunk" with the wrong endian. Another good reason
-is that on some CPUs, the endian bit endianness for ALL fetches -- both
-code and data -- so the code will be fetched incorrectly.
-
-Similarly, here is a portable implementation of the @code{CPU_swap_u16}
-routine. Just as with the @code{CPU_swap_u32} routine, the porter
-should provide a better implementation if possible.
-
-@example
-#define CPU_swap_u16( value ) \
- (((value&0xff) << 8) | ((value >> 8)&0xff))
-@end example
-
-
diff --git a/doc/porting/porting.texi b/doc/porting/porting.texi
deleted file mode 100644
index 0dabc3b4e2..0000000000
--- a/doc/porting/porting.texi
+++ /dev/null
@@ -1,130 +0,0 @@
-\input texinfo @c -*-texinfo-*-
-@c %**start of header
-@setfilename porting.info
-@setcontentsaftertitlepage
-@syncodeindex vr fn
-@synindex ky cp
-@paragraphindent 0
-@c %**end of header
-
-@c
-@c COPYRIGHT (c) 1989-2013.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@c
-@c Master file for the Porting Guide
-@c
-
-@c Joel's Questions
-@c
-@c 1. Why does paragraphindent only impact makeinfo?
-@c 2. Why does paragraphindent show up in HTML?
-@c
-
-@include version.texi
-@include common/setup.texi
-@include common/rtems.texi
-
-@ifset use-ascii
-@dircategory RTEMS On-Line Manual
-@direntry
-* RTEMS Porting Guide: (porting). The Porting Guide
-@end direntry
-@end ifset
-
-@c variable substitution info:
-@c
-@set is-C
-@clear is-Ada
-@set LANGUAGE C
-@set STRUCTURE structure
-@set ROUTINE function
-@set OR |
-@set RPREFIX RTEMS_
-@set DIRPREFIX rtems_
-@c the language is @value{LANGUAGE}
-@c NOTE: don't use underscore in the name
-@c
-
-@c
-@c Title Page Stuff
-@c
-
-
-
-
-
-
-@c
-@c I don't really like having a short title page. --joel
-@c
-@c @shorttitlepage RTEMS Porting Guide
-
-@setchapternewpage odd
-@settitle RTEMS Porting Guide
-@titlepage
-@finalout
-
-@title RTEMS Porting Guide
-@subtitle Edition @value{EDITION}, for RTEMS @value{VERSION}
-@sp 1
-@subtitle @value{UPDATED}
-@author On-Line Applications Research Corporation
-@page
-@include common/cpright.texi
-@end titlepage
-
-@c This prevents a black box from being printed on "overflow" lines.
-@c The alternative is to rework a sentence to avoid this problem.
-
-@contents
-
-@ifnottex
-@node Top, Preface, (dir), (dir)
-@top RTEMS Porting Guide
-
-@menu
-* Preface::
-* Development Tools::
-* Source Code Organization::
-* CPU Model Variations::
-* CPU Initialization::
-* Interrupts::
-* Task Context Management::
-* IDLE Thread::
-* Priority Bitmap Manipulation::
-* Code Tuning Parameters::
-* Miscellaneous::
-* Command and Variable Index::
-* Concept Index::
-@end menu
-@end ifnottex
-
-@include preface.texi
-@include developtools.texi
-@include sourcecode.texi
-@include cpumodels.texi
-@include cpuinit.texi
-@include interrupts.texi
-@include taskcontext.texi
-@include idlethread.texi
-@include prioritybitmap.texi
-@include codetuning.texi
-@include miscellaneous.texi
-
-@node Command and Variable Index, Concept Index, Miscellaneous Endian Swap Unsigned Integers, Top
-@unnumbered Command and Variable Index
-
-There are currently no Command and Variable Index entries.
-
-@c @printindex fn
-
-@node Concept Index, , Command and Variable Index, Top
-@unnumbered Concept Index
-
-There are currently no Concept Index entries.
-@c @printindex cp
-
-@bye
-
diff --git a/doc/porting/preface.texi b/doc/porting/preface.texi
deleted file mode 100644
index dfdcfbc1f8..0000000000
--- a/doc/porting/preface.texi
+++ /dev/null
@@ -1,37 +0,0 @@
-@c
-@c COPYRIGHT (c) 1989-2011.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@node Preface, Development Tools, Top, Top
-@unnumbered Preface
-
-The purpose of this manual is to provide a roadmap to those people porting
-RTEMS to a new CPU family. This process includes a variety of activities
-including the following:
-
-@itemize @bullet
-
-@item targeting the GNU development tools
-
-@item porting the RTEMS executive code
-
-@item developing a Board Support Package
-
-@item writing an RTEMS CPU Supplement manual for the completed port.
-
-@end itemize
-
-This document focuses on the process of actually porting the RTEMS
-executive code proper. Each of the data structures, routines, and macro
-definitions required of a port of RTEMS is described in this document.
-
-Porting any operating system, including RTEMS, requires knowledge of the
-operating system, target CPU architecture, and debug environment. It is
-very desirable to have a CPU simulator or hardware emulator when debugging
-the port. This manual assumes that the user is familiar with building and
-using RTEMS, the C programming language, and the target CPU architecture.
-It is desirable to be familiar with the assembly language for the target
-CPU family but since only a limited amount of assembly is required to port
-RTEMS.
-
diff --git a/doc/porting/prioritybitmap.t b/doc/porting/prioritybitmap.t
deleted file mode 100644
index aad2718a9d..0000000000
--- a/doc/porting/prioritybitmap.t
+++ /dev/null
@@ -1,196 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Priority Bitmap Manipulation
-
-@section Introduction
-
-The RTEMS chain of ready tasks is implemented as an array of FIFOs with
-each priority having its own FIFO. This makes it very efficient to
-determine the first and last ready task at each priority. In addition,
-blocking a task only requires appending the task to the end of the FIFO
-for its priority rather than a lengthy search down a single chain of all
-ready tasks. This works extremely well except for one problem. When the
-currently executing task blocks, there may be no easy way to determine
-what is the next most important ready task. If the blocking task was the
-only ready task at its priority, then RTEMS must search all of the FIFOs
-in the ready chain to determine the highest priority with a ready task.
-
-RTEMS uses a bitmap array to efficiently solve this problem. The state of
-each bit in the priority map bit array indicates whether or not there is a
-ready task at that priority. The bit array can be efficiently searched to
-determine the highest priority ready task. This family of data type and
-routines is used to maintain and search the bit map array.
-
-When manipulating the bitmap array, RTEMS internally divides the
-8 bits of the task priority into "major" and "minor" components.
-The most significant 4 bits are the major component, while the least
-significant are the minor component. The major component of a priority
-value is used to determine which 16-bit wide entry in the
-@code{_Priority_Bit_map} array is associated with this priority.
-Each element in the @code{_Priority_Bit_map} array has a bit
-in the @code{_Priority_Major_bit_map} associated with it.
-That bit is cleared when all of the bits in a particular
-@code{_Priority_Bit_map} array entry are zero.
-
-The minor component of a priority is used to determine
-specifically which bit in @code{_Priority_Bit_map[major]}
-indicates whether or not there is a ready to execute task
-at the priority.
-
-
-@section _Priority_bit_map_Control Type
-
-The @code{_Priority_Bit_map_Control} type is the fundamental data type of the
-priority bit map array used to determine which priorities have ready
-tasks. This type may be either 16 or 32 bits wide although only the 16
-least significant bits will be used. The data type is based upon what is
-the most efficient type for this CPU to manipulate. For example, some
-CPUs have bit scan instructions that only operate on a particular size of
-data. In this case, this type will probably be defined to work with this
-instruction.
-
-@section Find First Bit Routine
-
-The _CPU_Bitfield_Find_first_bit routine sets _output to the bit number of
-the first bit set in @code{_value}. @code{_value} is of CPU dependent type
-@code{Priority_bit_map_Control}. A stub version of this routine is as follows:
-
-@example
-#define _CPU_Bitfield_Find_first_bit( _value, _output ) \
- @{ \
- (_output) = 0; /* do something to prevent warnings */ \
- @}
-@end example
-
-
-
-There are a number of variables in using a "find first bit" type
-instruction.
-
-@enumerate
-
-@item What happens when run on a value of zero?
-
-@item Bits may be numbered from MSB to LSB or vice-versa.
-
-@item The numbering may be zero or one based.
-
-@item The "find first bit" instruction may search from MSB or LSB.
-
-@end enumerate
-
-RTEMS guarantees that (1) will never happen so it is not a concern.
-Cases (2),(3), (4) are handled by the macros _CPU_Priority_mask() and
-_CPU_Priority_bits_index(). These three form a set of routines which must
-logically operate together. Bits in the @code{_value} are set and cleared based
-on masks built by CPU_Priority_mask(). The basic major and minor values
-calculated by _Priority_Major() and _Priority_Minor() are "massaged" by
-_CPU_Priority_bits_index() to properly range between the values returned
-by the "find first bit" instruction. This makes it possible for
-_Priority_Get_highest() to calculate the major and directly index into the
-minor table. This mapping is necessary to ensure that 0 (a high priority
-major/minor) is the first bit found.
-
-This entire "find first bit" and mapping process depends heavily on the
-manner in which a priority is broken into a major and minor components
-with the major being the 4 MSB of a priority and minor the 4 LSB. Thus (0
-<< 4) + 0 corresponds to priority 0 -- the highest priority. And (15 <<
-4) + 14 corresponds to priority 254 -- the next to the lowest priority.
-
-If your CPU does not have a "find first bit" instruction, then there are
-ways to make do without it. Here are a handful of ways to implement this
-in software:
-
-@itemize @bullet
-
-@item a series of 16 bit test instructions
-
-@item a "binary search using if's"
-
-@item the following algorithm based upon a 16 entry lookup table. In this pseudo-code, bit_set_table[16] has values which indicate the first bit set:
-
-@example
-_number = 0 if _value > 0x00ff
- _value >>=8
- _number = 8;
- if _value > 0x0000f
- _value >=8
- _number += 4
-
-_number += bit_set_table[ _value ]
-@end example
-
-@end itemize
-
-The following illustrates how the CPU_USE_GENERIC_BITFIELD_CODE macro may
-be so the port can use the generic implementation of this bitfield code.
-This can be used temporarily during the porting process to avoid writing
-these routines until the end. This results in a functional although lower
-performance port. This is perfectly acceptable during development and
-testing phases.
-
-@example
-#define CPU_USE_GENERIC_BITFIELD_CODE TRUE
-#define CPU_USE_GENERIC_BITFIELD_DATA TRUE
-@end example
-
-Eventually, CPU specific implementations of these routines are usually
-written since they dramatically impact the performance of blocking
-operations. However they may take advantage of instructions which are not
-available on all models in the CPU family. In this case, one might find
-something like this stub example did:
-
-@example
-#if (CPU_USE_GENERIC_BITFIELD_CODE == FALSE)
-#define _CPU_Bitfield_Find_first_bit( _value, _output ) \
- @{ \
- (_output) = 0; /* do something to prevent warnings */ \
- @}
-#endif
-@end example
-
-@section Build Bit Field Mask
-
-The _CPU_Priority_Mask routine builds the mask that corresponds to the bit
-fields searched by _CPU_Bitfield_Find_first_bit(). See the discussion of
-that routine for more details.
-
-The following is a typical implementation when the
-_CPU_Bitfield_Find_first_bit searches for the most significant bit set:
-
-@example
-#if (CPU_USE_GENERIC_BITFIELD_CODE == FALSE)
-#define _CPU_Priority_Mask( _bit_number ) \
- ( 1 << (_bit_number) )
-#endif
-@end example
-
-@section Bit Scan Support
-
-The @code{_CPU_Priority_bits_index} routine translates the bit numbers
-returned by @code{_CPU_Bitfield_Find_first_bit()} into something
-suitable for use as a major or minor component of a priority.
-The find first bit routine may number the bits in a
-way that is difficult to map into the major and minor components
-of the priority. For example, when finding the first bit set in
-the value 0x8000, a CPU may indicate that bit 15 or 16 is set
-based on whether the least significant bit is "zero" or "one".
-Similarly, a CPU may only scan 32-bit values and consider the
-most significant bit to be bit zero or one. In this case, this
-would be bit 16 or 17.
-
-This routine allows that unwieldy form to be converted
-into a normalized form that is easier to process and use
-as an index.
-
-@example
-#if (CPU_USE_GENERIC_BITFIELD_CODE == FALSE)
-#define _CPU_Priority_bits_index( _priority ) \
- (_priority)
-#endif
-@end example
-
-
diff --git a/doc/porting/sourcecode.t b/doc/porting/sourcecode.t
deleted file mode 100644
index 79a6422ea7..0000000000
--- a/doc/porting/sourcecode.t
+++ /dev/null
@@ -1,20 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Source Code Organization
-
-This section describes the organization of the source code within RTEMS
-that is CPU family and CPU model dependent.
-
-@section Introduction
-
-The CPU family dependent files associated with a port of the RTEMS
-executive code proper to a particular processor family are found in
-cpukit/score/cpu. Support code for this port as well as processor
-dependent code which may be reused across multiple Board Support Packages
-is found in c/src/lib/libcpu.
-
-XXX list the files and directories here
-
diff --git a/doc/porting/stamp-vti b/doc/porting/stamp-vti
deleted file mode 100644
index 5634951ec8..0000000000
--- a/doc/porting/stamp-vti
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 24 February 2013
-@set UPDATED-MONTH February 2013
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0
diff --git a/doc/porting/taskcontext.t b/doc/porting/taskcontext.t
deleted file mode 100644
index 6d92e5f5f9..0000000000
--- a/doc/porting/taskcontext.t
+++ /dev/null
@@ -1,531 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Task Context Management
-
-@section Introduction
-
-XXX
-
-@section Task Stacks
-
-XXX
-
-@subsection Direction of Stack Growth
-
-The CPU_STACK_GROWS_UP macro is set based upon the answer to the following
-question: Does the stack grow up (toward higher addresses) or down (toward
-lower addresses)? If the stack grows upward in memory, then this macro
-should be set to TRUE. Otherwise, it should be set to FALSE to indicate
-that the stack grows downward toward smaller addresses.
-
-The following illustrates how the CPU_STACK_GROWS_UP macro is set:
-
-@example
-#define CPU_STACK_GROWS_UP TRUE
-@end example
-
-@subsection Minimum Task Stack Size
-
-The CPU_STACK_MINIMUM_SIZE macro should be set to the minimum size of each
-task stack. This size is specified as the number of bytes. This minimum
-stack size should be large enough to run all RTEMS tests. The minimum
-stack size is chosen such that a "reasonable" small application should not
-have any problems. Choosing a minimum stack size that is too small will
-result in the RTEMS tests "blowing" their stack and not executing
-properly.
-
-There are many reasons a task could require a stack size larger than the
-minimum. For example, a task could have a very deep call path or declare
-large data structures on the stack. Tasks which utilize C++ exceptions
-tend to require larger stacks as do Ada tasks.
-
-The following illustrates setting the minimum stack size to 4 kilobytes
-per task.
-
-@example
-#define CPU_STACK_MINIMUM_SIZE (1024*4)
-@end example
-
-@subsection Stack Alignment Requirements
-
-The CPU_STACK_ALIGNMENT macro is set to indicate the byte alignment
-requirement for the stack. This alignment requirement may be stricter
-than that for the data types alignment specified by CPU_ALIGNMENT. If the
-CPU_ALIGNMENT is strict enough for the stack, then this should be set to
-0.
-
-The following illustrates how the CPU_STACK_ALIGNMENT macro should be set
-when there are no special requirements:
-
-@example
-#define CPU_STACK_ALIGNMENT 0
-@end example
-
-NOTE: This must be a power of 2 either 0 or greater than CPU_ALIGNMENT. [XXX is this true?]
-
-@section Task Context
-
-Associated with each task is a context that distinguishes it from other
-tasks in the system and logically gives it its own scratch pad area for
-computations. In addition, when an interrupt occurs some processor
-context information must be saved and restored. This is managed in RTEMS
-as three items:
-
-@itemize @bullet
-
-@item Basic task level context (e.g. the Context_Control structure)
-
-@item Floating point task context (e.g. Context_Control_fp structure)
-
-@item Interrupt level context (e.g. the Context_Control_interrupt
-structure)
-
-@end itemize
-
-The integer and floating point context structures and the routines that
-manipulate them are discussed in detail in this section, while the
-interrupt level context structure is discussed in the XXX.
-
-Additionally, if the GNU debugger gdb is to be made aware of RTEMS tasks
-for this CPU, then care should be used in designing the context area.
-
-@example
-typedef struct @{
- unsigned32 special_interrupt_register;
-@} CPU_Interrupt_frame;
-@end example
-
-
-@subsection Basic Context Data Structure
-
-The Context_Control data structure contains the basic integer context of a
-task. In addition, this context area contains stack and frame pointers,
-processor status register(s), and any other registers that are normally
-altered by compiler generated code. In addition, this context must
-contain the processor interrupt level since the processor interrupt level
-is maintained on a per-task basis. This is necessary to support the
-interrupt level portion of the task mode as provided by the Classic RTEMS
-API.
-
-On some processors, it is cost-effective to save only the callee preserved
-registers during a task context switch. This means that the ISR code
-needs to save those registers which do not persist across function calls.
-It is not mandatory to make this distinctions between the caller/callee
-saves registers for the purpose of minimizing context saved during task
-switch and on interrupts. If the cost of saving extra registers is
-minimal, simplicity is the choice. Save the same context on interrupt
-entry as for tasks in this case.
-
-The Context_Control data structure should be defined such that the order
-of elements results in the simplest, most efficient implementation of XXX.
-A typical implementation starts with a definition such as the following:
-
-@example
-typedef struct @{
- unsigned32 some_integer_register;
- unsigned32 another_integer_register;
- unsigned32 some_system_register;
-@} Context_Control;
-@end example
-
-@subsection Initializing a Context
-
-The _CPU_Context_Initialize routine initializes the context to a state
-suitable for starting a task after a context restore operation.
-Generally, this involves:
-
-@itemize @bullet
-
-@item setting a starting address,
-
-@item preparing the stack,
-
-@item preparing the stack and frame pointers,
-
-@item setting the proper interrupt level in the context, and
-
-@item initializing the floating point context
-
-@end itemize
-
-This routine generally does not set any unnecessary register in the
-context. The state of the "general data" registers is undefined at task
-start time. The _CPU_Context_initialize routine is prototyped as follows:
-
-@example
-void _CPU_Context_Initialize(
- Context_Control *_the_context,
- void *_stack_base,
- unsigned32 _size,
- unsigned32 _isr,
- void *_entry_point,
- unsigned32 _is_fp
-);
-@end example
-
-The @code{is_fp} parameter is TRUE if the thread is to be a floating point
-thread. This is typically only used on CPUs where the FPU may be easily
-disabled by software such as on the SPARC where the PSR contains an enable
-FPU bit. The use of an FPU enable bit allows RTEMS to ensure that a
-non-floating point task is unable to access the FPU. This guarantees that
-a deferred floating point context switch is safe.
-
-The @code{_stack_base} parameter is the base address of the memory area
-allocated for use as the task stack. It is critical to understand that
-@code{_stack_base} may not be the starting stack pointer for this task.
-On CPU families where the stack grows from high addresses to lower ones,
-(i.e. @code{CPU_STACK_GROWS_UP} is FALSE) the starting stack point
-will be near the end of the stack memory area or close to
-@code{_stack_base} + @code{_size}. Even on CPU families where the stack
-grows from low to higher addresses, there may be some required
-outermost stack frame that must be put at the address @code{_stack_base}.
-
-The @code{_size} parameter is the requested size in bytes of the stack for
-this task. It is assumed that the memory area @code{_stack_base}
-is of this size.
-
-XXX explain other parameters and check prototype
-
-@subsection Performing a Context Switch
-
-The _CPU_Context_switch performs a normal non-FP context switch from the
-context of the current executing thread to the context of the heir thread.
-
-@example
-void _CPU_Context_switch(
- Context_Control *run,
- Context_Control *heir
-);
-@end example
-
-This routine begins by saving the current state of the
-CPU (i.e. the context) in the context area at @code{run}.
-Then the routine should load the CPU context pointed to
-by @code{heir}. Loading the new context will cause a
-branch to its task code, so the task that invoked
-@code{_CPU_Context_switch} will not run for a while.
-When, eventually, a context switch is made to load
-context from @code{*run} again, this task will resume
-and @code{_CPU_Context_switch} will return to its caller.
-
-Care should be exercise when writing this routine. All
-registers assumed to be preserved across subroutine calls
-must be preserved. These registers may be saved in
-the task's context area or on its stack. However, the
-stack pointer and address to resume executing the task
-at must be included in the context (normally the subroutine
-return address to the caller of @code{_Thread_Dispatch}.
-The decision of where to store the task's context is based
-on numerous factors including the capabilities of
-the CPU architecture itself and simplicity as well
-as external considerations such as debuggers wishing
-to examine a task's context. In this case, it is
-often simpler to save all data in the context area.
-
-Also there may be special considerations
-when loading the stack pointers or interrupt level of the
-incoming task. Independent of CPU specific considerations,
-if some context is saved on the task stack, then the porter
-must ensure that the stack pointer is adjusted @b{BEFORE}
-to make room for this context information before the
-information is written. Otherwise, an interrupt could
-occur writing over the context data. The following is
-an example of an @b{INCORRECT} sequence:
-
-@example
-save part of context beyond current top of stack
-interrupt pushes context -- overwriting written context
-interrupt returns
-adjust stack pointer
-@end example
-
-@subsection Restoring a Context
-
-The _CPU_Context_restore routine is generally used only to restart the
-currently executing thread (i.e. self) in an efficient manner. In many
-ports, it can simply be a label in _CPU_Context_switch. It may be
-unnecessary to reload some registers.
-
-@example
-void _CPU_Context_restore(
- Context_Control *new_context
-);
-@end example
-
-@subsection Restarting the Currently Executing Task
-
-The _CPU_Context_Restart_self is responsible for somehow restarting the
-currently executing task. If you are lucky when porting RTEMS, then all
-that is necessary is restoring the context. Otherwise, there will need to
-be a routine that does something special in this case. Performing a
-_CPU_Context_Restore on the currently executing task after reinitializing
-that context should work on most ports. It will not work if restarting
-self conflicts with the stack frame assumptions of restoring a context.
-
-The following is an implementation of _CPU_Context_Restart_self that can
-be used when no special handling is required for this case.
-
-@example
-#define _CPU_Context_Restart_self( _the_context ) \
- _CPU_Context_restore( (_the_context) )
-@end example
-
-XXX find a port which does not do it this way and include it here
-
-@section Floating Point Context
-
-@subsection CPU_HAS_FPU Macro Definition
-
-The CPU_HAS_FPU macro is set based on the answer to the question: Does the
-CPU have hardware floating point? If the CPU has an FPU, then this should
-be set to TRUE. Otherwise, it should be set to FALSE. The primary
-implication of setting this macro to TRUE is that it indicates that tasks
-may have floating point contexts. In the Classic API, this means that the
-RTEMS_FLOATING_POINT task attribute specified as part of rtems_task_create
-is supported on this CPU. If CPU_HAS_FPU is set to FALSE, then no tasks
-or threads may be floating point and the RTEMS_FLOATING_POINT task
-attribute is ignored. On an API such as POSIX where all threads
-implicitly have a floating point context, then the setting of this macro
-determines whether every POSIX thread has a floating point context.
-
-The following example illustrates how the CPU_HARDWARE_FP (XXX macro name
-is varying) macro is set based on the CPU family dependent macro.
-
-@example
-#if ( THIS_CPU_FAMILY_HAS_FPU == 1 ) /* where THIS_CPU_FAMILY */
- /* might be M68K */
-#define CPU_HARDWARE_FP TRUE
-#else
-#define CPU_HARDWARE_FP FALSE
-#endif
-@end example
-
-The macro name THIS_CPU_FAMILY_HAS_FPU should be made CPU specific. It
-indicates whether or not this CPU model has FP support. For example, the
-definition of the i386ex and i386sx CPU models would set I386_HAS_FPU to
-FALSE to indicate that these CPU models are i386's without an i387 and
-wish to leave floating point support out of RTEMS when built for the
-i386_nofp processor model. On a CPU with a built-in FPU like the i486,
-this would be defined as TRUE.
-
-On some processor families, the setting of the THIS_CPU_FAMILY_HAS_FPU
-macro may be derived from compiler predefinitions. This can be used when
-the compiler distinguishes the individual CPU models for this CPU family
-as distinctly as RTEMS requires. Often RTEMS needs to need more about the
-CPU model than the compiler because of differences at the system level
-such as caching, interrupt structure.
-
-@subsection CPU_ALL_TASKS_ARE_FP Macro Setting
-
-The CPU_ALL_TASKS_ARE_FP macro is set to TRUE or FALSE based upon the
-answer to the following question: Are all tasks RTEMS_FLOATING_POINT tasks
-implicitly? If this macro is set TRUE, then all tasks and threads are
-assumed to have a floating point context. In the Classic API, this is
-equivalent to setting the RTEMS_FLOATING_POINT task attribute on all
-rtems_task_create calls. If the CPU_ALL_TASKS_ARE_FP macro is set to
-FALSE, then the RTEMS_FLOATING_POINT task attribute in the Classic API is
-honored.
-
-The rationale for this macro is that if a function that an application
-developer would not think utilize the FP unit DOES, then one can not
-easily predict which tasks will use the FP hardware. In this case, this
-option should be TRUE. So far, the only CPU families for which this macro
-has been to TRUE are the HP PA-RISC and PowerPC. For the HP PA-RISC, the
-HP C compiler and gcc both implicitly use the floating point registers to
-perform integer multiplies. For the PowerPC, this feature macro is set to
-TRUE because the printf routine saves a floating point register whether or
-not a floating point number is actually printed. If the newlib
-implementation of printf were restructured to avoid this, then the PowerPC
-port would not have to have this option set to TRUE.
-
-The following example illustrates how the CPU_ALL_TASKS_ARE_FP is set on
-the PowerPC. On this CPU family, this macro is set to TRUE if the CPU
-model has hardware floating point.
-
-@example
-#if (CPU_HARDWARE_FP == TRUE)
-#define CPU_ALL_TASKS_ARE_FP TRUE
-#else
-#define CPU_ALL_TASKS_ARE_FP FALSE
-#endif
-@end example
-
-NOTE: If CPU_HARDWARE_FP is FALSE, then this should be FALSE as well.
-
-@subsection CPU_USE_DEFERRED_FP_SWITCH Macro Setting
-
-The CPU_USE_DEFERRED_FP_SWITCH macro is set based upon the answer to the
-following question: Should the saving of the floating point registers be
-deferred until a context switch is made to another different floating
-point task? If the floating point context will not be stored until
-necessary, then this macro should be set to TRUE. When set to TRUE, the
-floating point context of a task will remain in the floating point
-registers and not disturbed until another floating point task is switched
-to.
-
-If the CPU_USE_DEFERRED_FP_SWITCH is set to FALSE, then the floating point
-context is saved each time a floating point task is switched out and
-restored when the next floating point task is restored. The state of the
-floating point registers between those two operations is not specified.
-
-There are a couple of known cases where the port should not defer saving
-the floating point context. The first case is when the compiler generates
-instructions that use the FPU when floating point is not actually used.
-This occurs on the HP PA-RISC for example when an integer multiply is
-performed. On the PowerPC, the printf routine includes a save of a
-floating point register to support printing floating point numbers even if
-the path that actually prints the floating point number is not invoked.
-In both of these cases, deferred floating point context switches can not
-be used. If the floating point context has to be saved as part of
-interrupt dispatching, then it may also be necessary to disable deferred
-context switches.
-
-Setting this flag to TRUE results in using a different algorithm for
-deciding when to save and restore the floating point context. The
-deferred FP switch algorithm minimizes the number of times the FP context
-is saved and restored. The FP context is not saved until a context switch
-is made to another, different FP task. Thus in a system with only one FP
-task, the FP context will never be saved or restored.
-
-The following illustrates setting the CPU_USE_DEFERRED_FP_SWITCH macro on
-a processor family such as the M68K or i386 which can use deferred
-floating point context switches.
-
-@example
-#define CPU_USE_DEFERRED_FP_SWITCH TRUE
-@end example
-
-Note that currently, when in SMP configuration, deferred floating point
-context switching is unavailable.
-
-@subsection Floating Point Context Data Structure
-
-The Context_Control_fp contains the per task information for the floating
-point unit. The organization of this structure may be a list of floating
-point registers along with any floating point control and status registers
-or it simply consist of an array of a fixed number of bytes. Defining the
-floating point context area as an array of bytes is done when the floating
-point context is dumped by a "FP save context" type instruction and the
-format is either not completely defined by the CPU documentation or the
-format is not critical for the implementation of the floating point
-context switch routines. In this case, there is no need to figure out the
-exact format -- only the size. Of course, although this is enough
-information for RTEMS, it is probably not enough for a debugger such as
-gdb. But that is another problem.
-
-@example
-typedef struct @{
- double some_float_register;
-@} Context_Control_fp;
-@end example
-
-
-On some CPUs with hardware floating point support, the Context_Control_fp
-structure will not be used.
-
-@subsection Size of Floating Point Context Macro
-
-The CPU_CONTEXT_FP_SIZE macro is set to the size of the floating point
-context area. On some CPUs this will not be a "sizeof" because the format
-of the floating point area is not defined -- only the size is. This is
-usually on CPUs with a "floating point save context" instruction. In
-general, though it is easier to define the structure as a "sizeof"
-operation and define the Context_Control_fp structure to be an area of
-bytes of the required size in this case.
-
-@example
-#define CPU_CONTEXT_FP_SIZE sizeof( Context_Control_fp )
-@end example
-
-@subsection Start of Floating Point Context Area Macro
-
-The _CPU_Context_Fp_start macro is used in the XXX routine and allows the initial pointer into a floating point context area (used to save the floating point context) to be at an arbitrary place in the floating point context area. This is necessary because some FP units are designed to have their context saved as a stack which grows into lower addresses. Other FP units can be saved by simply moving registers into offsets from the base of the context area. Finally some FP units provide a "dump context" instruction which could fill in from high to low or low to high based on the whim of the CPU designers. Regardless, the address at which that floating point context area pointer should start within the actual floating point context area varies between ports and this macro provides a clean way of addressing this.
-
-This is a common implementation of the _CPU_Context_Fp_start routine which
-is suitable for many processors. In particular, RISC processors tend to
-use this implementation since the floating point context is saved as a
-sequence of store operations.
-
-@example
-#define _CPU_Context_Fp_start( _base, _offset ) \
- ( (void *) _Addresses_Add_offset( (_base), (_offset) ) )
-@end example
-
-In contrast, the m68k treats the floating point context area as a stack
-which grows downward in memory. Thus the following implementation of
-_CPU_Context_Fp_start is used in that port:
-
-
-@example
-XXX insert m68k version here
-@end example
-
-@subsection Initializing a Floating Point Context
-
-The _CPU_Context_Initialize_fp routine initializes the floating point
-context area passed to it to. There are a few standard ways in which to
-initialize the floating point context. The simplest, and least
-deterministic behaviorally, is to do nothing. This leaves the FPU in a
-random state and is generally not a suitable way to implement this
-routine. The second common implementation is to place a "null FP status
-word" into some status/control register in the FPU. This mechanism is
-simple and works on many FPUs. Another common way is to initialize the
-FPU to a known state during _CPU_Initialize and save the context (using
-_CPU_Context_save_fp_context) into the special floating point context
-_CPU_Null_fp_context. Then all that is required to initialize a floating
-point context is to copy _CPU_Null_fp_context to the destination floating
-point context passed to it. The following example implementation shows
-how to accomplish this:
-
-@example
-#define _CPU_Context_Initialize_fp( _destination ) \
- @{ \
- *((Context_Control_fp *) *((void **) _destination)) = \
- _CPU_Null_fp_context; \
- @}
-@end example
-
-The _CPU_Null_fp_context is optional. A port need only include this variable when it uses the above mechanism to initialize a floating point context. This is typically done on CPUs where it is difficult to generate an "uninitialized" FP context. If the port requires this variable, then it is declared as follows:
-
-@example
-Context_Control_fp _CPU_Null_fp_context;
-@end example
-
-
-@subsection Saving a Floating Point Context
-
-The _CPU_Context_save_fp_context routine is responsible for saving the FP
-context at *fp_context_ptr. If the point to load the FP context from is
-changed then the pointer is modified by this routine.
-
-Sometimes a macro implementation of this is in cpu.h which dereferences
-the ** and a similarly named routine in this file is passed something like
-a (Context_Control_fp *). The general rule on making this decision is to
-avoid writing assembly language.
-
-@example
-void _CPU_Context_save_fp(
- void **fp_context_ptr
-)
-@end example
-
-@subsection Restoring a Floating Point Context
-
-The _CPU_Context_restore_fp_context is responsible for restoring the FP
-context at *fp_context_ptr. If the point to load the FP context from is
-changed then the pointer is modified by this routine.
-
-Sometimes a macro implementation of this is in cpu.h which dereferences
-the ** and a similarly named routine in this file is passed something like
-a (Context_Control_fp *). The general rule on making this decision is to
-avoid writing assembly language.
-
-@example
-void _CPU_Context_restore_fp(
- void **fp_context_ptr
-);
-@end example
-
diff --git a/doc/porting/version.texi b/doc/porting/version.texi
deleted file mode 100644
index c0e4bbb7b6..0000000000
--- a/doc/porting/version.texi
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 17 July 2015
-@set UPDATED-MONTH July 2015
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0
diff --git a/doc/posix1003.1/Makefile.am b/doc/posix1003.1/Makefile.am
deleted file mode 100644
index 903349048e..0000000000
--- a/doc/posix1003.1/Makefile.am
+++ /dev/null
@@ -1,125 +0,0 @@
-#
-# COPYRIGHT (c) 1988-2002.
-# On-Line Applications Research Corporation (OAR).
-# All rights reserved.
-
-PROJECT = posix1003_1
-
-include $(top_srcdir)/project.am
-include $(top_srcdir)/main.am
-
-GENERATED_FILES = ch01.texi ch02.texi ch03.texi ch04.texi ch05.texi \
- ch06.texi ch07.texi ch08.texi ch09.texi ch10.texi ch11.texi ch12.texi \
- ch13.texi ch14.texi ch15.texi ch16.texi ch17.texi ch18.texi ch19.texi
-
-COMMON_FILES += $(top_srcdir)/common/cpright.texi
-
-FILES = preface.texi
-
-info_TEXINFOS = posix1003_1.texi
-posix1003_1_TEXINFOS = $(FILES) $(COMMON_FILES) $(GENERATED_FILES)
-
-ch01.texi: ch01.t
- $(BMENU2) -c -p "Preface" \
- -u "Top" \
- -n "Terminology and General Requirements" < $< > $@
-
-ch02.texi: ch02.t
- $(BMENU2) -c -p "Conformance" \
- -u "Top" \
- -n "Process Primitives" < $< > $@
-
-ch03.texi: ch03.t
- $(BMENU2) -c -p "Execution-Time Symbolic Constants for Portability Specifications" \
- -u "Top" \
- -n "Process Environment" < $< > $@
-
-ch04.texi: ch04.t
- $(BMENU2) -c -p "Delay Process Execution" \
- -u "Top" \
- -n "Files and Directories" < $< > $@
-
-ch05.texi: ch05.t
- $(BMENU2) -c -p "Get Configurable System Variables" \
- -u "Top" \
- -n "Input and Output Primitives" < $< > $@
-
-ch06.texi: ch06.t
- $(BMENU2) -c -p "Get Configurable Pathname Variables" \
- -u "Top" \
- -n "Device- and Class-Specific Functions" < $< > $@
-
-ch07.texi: ch07.t
- $(BMENU2) -c -p " Asynchronous File Synchronization" \
- -u "Top" \
- -n "Language-Specific Services for the C Programming Language" < $< > $@
-
-ch08.texi: ch08.t
- $(BMENU2) -c -p "Set Foreground Process Group ID" \
- -u "Top" \
- -n "System Databases" < $< > $@
-
-ch09.texi: ch09.t
- $(BMENU2) -c -p "Pseudo-Random Sequence Generation Functions" \
- -u "Top" \
- -n "Data Interchange Format" < $< > $@
-
-ch10.texi: ch10.t
- $(BMENU2) -c -p "User Database Access" \
- -u "Top" \
- -n "Synchronization" < $< > $@
-
-ch11.texi: ch11.t
- $(BMENU2) -c -p "Multiple Volumes" \
- -u "Top" \
- -n "Memory Management" < $< > $@
-
-ch12.texi: ch12.t
- $(BMENU2) -c -p "Waiting on a Condition" \
- -u "Top" \
- -n "Execution Scheduling" < $< > $@
-
-ch13.texi: ch13.t
- $(BMENU2) -c -p "Remove a Shared Memory Object" \
- -u "Top" \
- -n "Clocks and Timers" < $< > $@
-
-ch14.texi: ch14.t
- $(BMENU2) -c -p "Change the Priority Ceiling of a Mutex" \
- -u "Top" \
- -n "Message Passing" < $< > $@
-
-ch15.texi: ch15.t
- $(BMENU2) -c -p "High Resolution Sleep" \
- -u "Top" \
- -n "Thread Management" < $< > $@
-
-ch16.texi: ch16.t
- $(BMENU2) -c -p "Get Message Queue Attributes" \
- -u "Top" \
- -n "Thread-Specific Data" < $< > $@
-
-ch17.texi: ch17.t
- $(BMENU2) -c -p "Dynamic Package Initialization" \
- -u "Top" \
- -n "Thread Cancellation" < $< > $@
-
-ch18.texi: ch18.t
- $(BMENU2) -c -p "Thread-Specific Data Key Deletion" \
- -u "Top" \
- -n "Compliance Summary" < $< > $@
-
-ch19.texi: ch01.t ch02.t ch03.t ch04.t ch05.t ch06.t ch07.t ch08.t \
- ch09.t ch10.t ch11.t ch12.t ch13.t ch14.t ch15.t ch16.t ch17.t ch18.t
- $(srcdir)/summarize $^ | \
- $(BMENU2) -c -p "List of Cancellation Points" \
- -u "Top" \
- -n "Command and Variable Index" > $@
-
-noinst_SCRIPTS = summarize
-
-EXTRA_DIST = ch01.t ch02.t ch03.t ch04.t ch05.t ch06.t ch07.t ch08.t ch09.t \
- ch10.t ch11.t ch12.t ch13.t ch14.t ch15.t ch16.t ch17.t ch18.t \
- compliance_list summarize
-
-CLEANFILES += posix1003_1.info posix1003_1.info-?
diff --git a/doc/posix1003.1/ch01.t b/doc/posix1003.1/ch01.t
deleted file mode 100644
index 92dfe30382..0000000000
--- a/doc/posix1003.1/ch01.t
+++ /dev/null
@@ -1,37 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter General
-
-@section Scope
-
-@section Normative References
-
-@section Conformance
-
-@example
-NGROUPS_MAX, Feature Flag,
-_POSIX_ASYNCHRONOUS_IO, Feature Flag,
-_POSIX_CHOWN_RESTRICTED, Feature Flag,
-_POSIX_FSYNC, Feature Flag,
-_POSIX_JOB_CONTROL, Feature Flag,
-_POSIX_MAPPED_FILES, Feature Flag,
-_POSIX_MEMLOCK, Feature Flag,
-_POSIX_MEMLOCK_RANGE, Feature Flag,
-_POSIX_MEMORY_PROTECTION, Feature Flag,
-_POSIX_MESSAGE_PASSING, Feature Flag,
-_POSIX_PRIORITIZED_IO, Feature Flag,
-_POSIX_PRIORITY_SCHEDULING, Feature Flag,
-_POSIX_REALTIME_SIGNALS, Feature Flag,
-_POSIX_SEMAPHORES, Feature Flag,
-_POSIX_SHARED_MEMORY_OBJECTS, Feature Flag,
-_POSIX_SYNCHRONIZED_IO, Feature Flag,
-_POSIX_TIMERS, Feature Flag,
-_POSIX_THREAD_PRIO_INHERIT, Feature Flag,
-_POSIX_THREAD_PRIORITY_SCHEDULING, Feature Flag,
-_POSIX_THREADS, Feature Flag,
-_POSIX_THREAD_SAFE_FUNCTIONS, Feature Flag,
-@end example
-
diff --git a/doc/posix1003.1/ch02.t b/doc/posix1003.1/ch02.t
deleted file mode 100644
index 91035024a7..0000000000
--- a/doc/posix1003.1/ch02.t
+++ /dev/null
@@ -1,276 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Terminology and General Requirements
-
-@section Conventions
-
-@section Definitions
-
-@section General Concepts
-
-@section Error Numbers
-
-@example
-E2BIG, Constant, Implemented
-EACCES, Constant, Implemented
-EAGAIN, Constant, Implemented
-EBADF, Constant, Implemented
-EBADMSG, Constant, Implemented
-EBUSY, Constant, Implemented
-ECANCELED, Constant, Unimplemented
-ECHILD, Constant, Implemented
-EDEADLK, Constant, Implemented
-EDOM, Constant, Implemented
-EEXIST, Constant, Implemented
-EFAULT, Constant, Implemented
-EFBIG, Constant, Implemented
-EINPROGRESS, Constant, Implemented
-EINTR, Constant, Implemented
-EINVAL, Constant, Implemented
-EIO, Constant, Implemented
-EISDIR, Constant, Implemented
-EMFILE, Constant, Implemented
-EMLINK, Constant, Implemented
-EMSGSIZE, Constant, Implemented
-ENAMETOOLONG, Constant, Implemented
-ENFILE, Constant, Implemented
-ENODEV, Constant, Implemented
-ENOENT, Constant, Implemented
-ENOEXEC, Constant, Implemented
-ENOLCK, Constant, Implemented
-ENOMEM, Constant, Implemented
-ENOSPC, Constant, Implemented
-ENOSYS, Constant, Implemented
-ENOTDIR, Constant, Implemented
-ENOTEMPTY, Constant, Implemented
-ENOTSUP, Constant, Implemented
-ENOTTY, Constant, Implemented
-ENXIO, Constant, Implemented
-EPERM, Constant, Implemented
-EPIPE, Constant, Implemented
-ERANGE, Constant, Implemented
-EROFS, Constant, Implemented
-ESPIPE, Constant, Implemented
-ESRCH, Constant, Implemented
-ETIMEDOUT, Constant, Implemented
-EXDEV, Constant, Implemented
-@end example
-
-@section Primitive System Types
-
-@example
-dev_t, Type, Implemented
-gid_t, Type, Implemented
-ino_t, Type, Implemented
-mode_t, Type, Implemented
-nlink_t, Type, Implemented
-off_t, Type, Implemented
-pid_t, Type, Implemented
-pthread_t, Type, Implemented
-pthread_attr_t, Type, Implemented
-pthread_mutex_t, Type, Implemented
-pthread_mutex_attr_t, Type, Implemented
-pthread_cond_t, Type, Implemented
-pthread_cond_attr_t, Type, Implemented
-pthread_key_t, Type, Implemented
-pthread_once_t, Type, Implemented
-size_t, Type, Implemented
-ssize_t, Type, Implemented
-time_t, Type, Implemented
-uid_t, Type, Implemented
-@end example
-
-NOTE: time_t is not listed in this section but is used by many functions.
-
-@section Environment Description
-
-@section C Language Definitions
-
-@subsection Symbols From the C Standard
-
-@example
-NULL, Constant, Implemented
-@end example
-
-@subsection POSIX.1 Symbols
-
-@example
-_POSIX_C_SOURCE, Feature Flag,
-@end example
-
-@section Numerical Limits
-
-@section C Language Limits
-
-@example
-CHAR_BIT, Constant, Implemented
-CHAR_MAX, Constant, Implemented
-CHAR_MIN, Constant, Implemented
-INT_MAX, Constant, Implemented
-INT_MIN, Constant, Implemented
-LONG_MAX, Constant, Implemented
-LONG_MIN, Constant, Implemented
-MB_LEN_MAX, Constant, Implemented
-SCHAR_MAX, Constant, Implemented
-SCHAR_MIN, Constant, Implemented
-SHRT_MAX, Constant, Implemented
-SHRT_MIN, Constant, Implemented
-UCHAR_MAX, Constant, Implemented
-UINT_MAX, Constant, Implemented
-ULONG_MAX, Constant, Implemented
-USHRT_MAX, Constant, Implemented
-@end example
-
-NOTE: These are implemented in GCC's limits.h file.
-
-@subsection Minimum Values
-
-@example
-_POSIX_AIO_LISTIO_MAX, Constant, Implemented
-_POSIX_AIO_MAX, Constant, Implemented
-_POSIX_ARG_MAX, Constant, Implemented
-_POSIX_CHILD_MAX, Constant, Implemented
-_POSIX_DELAYTIMER_MAX, Constant, Implemented
-_POSIX_LINK_MAX, Constant, Implemented
-_POSIX_LOGIN_NAME_MAX, Constant, Implemented
-_POSIX_MAX_CANON, Constant, Implemented
-_POSIX_MAX_INPUT, Constant, Implemented
-_POSIX_MQ_OPEN_MAX, Constant, Implemented
-_POSIX_MQ_PRIO_MAX, Constant, Implemented
-_POSIX_NAME_MAX, Constant, Implemented
-_POSIX_NGROUPS_MAX, Constant, Implemented
-_POSIX_OPEN_MAX, Constant, Implemented
-_POSIX_PATH_MAX, Constant, Implemented
-_POSIX_PIPE_BUF, Constant, Implemented
-_POSIX_RTSIG_MAX, Constant, Implemented
-_POSIX_SEM_NSEMS_MAX, Constant, Implemented
-_POSIX_SEM_VALUE_MAX, Constant, Implemented
-_POSIX_SIGQUEUE_MAX, Constant, Implemented
-_POSIX_SSIZE_MAX, Constant, Implemented
-_POSIX_STREAM_MAX, Constant, Implemented
-_POSIX_THREAD_DESTRUCTOR_ITERATIONS, Constant, Implemented
-_POSIX_THREAD_KEYS_MAX, Constant, Implemented
-_POSIX_THREAD_THREADS_MAX, Constant, Implemented
-_POSIX_TTY_NAME_MAX, Constant, Implemented
-_POSIX_TIME_MAX, Constant, Unimplemented
-_POSIX_TZNAME_MAX, Constant, Implemented
-@end example
-
-@subsection Run-Time Increasable Values
-
-@example
-_POSIX_NGROUPS_MAX, Constant, Implemented
-@end example
-
-@subsection Run-Time Invariant Values (Possible Indeterminate)
-
-@example
-AIO_LISTIO_MAX, Constant, Implemented
-AIO_MAX, Constant, Implemented
-AIO_PRIO_DELTA_MAX, Constant, Implemented
-ARG_MAX, Constant, Implemented
-CHILD_MAX, Constant, Implemented
-DELAYTIMER_MAX, Constant, Implemented
-LOGIN_NAME_MAX, Constant, Implemented
-MQ_OPEN_MAX, Constant, Implemented
-OPEN_MAX, Constant, Implemented
-PAGESIZE, Constant, Implemented
-PTHREAD_DESTRUCTOR_ITERATIONS, Constant, Implemented
-PTHREAD_KEYS_MAX, Constant, Implemented
-PTHREAD_STACK_MIN, Constant, Implemented
-PTHJREAD_THREADS_MAX, Constant, Implemented
-RTSIG_MAX, Constant, Implemented
-SEM_NSEMS_MAX, Constant, Implemented
-SEM_VALUE_MAX, Constant, Implemented
-SIGQUEUE_MAX, Constant, Implemented
-STREAM_MAX, Constant, Implemented
-TIMER_MAX, Constant, Implemented
-TTY_NAME_MAX, Constant, Implemented
-TZNAME_MAX, Constant, Implemented
-@end example
-
-@subsection Pathname Variable Values
-
-@example
-LINK_MAX, Constant, Implemented
-MAX_CANON, Constant, Implemented
-MAX_INPUT, Constant, Implemented
-NAME_MAX, Constant, Implemented
-PATH_MAX, Constant, Implemented
-PIPE_BUF, Constant, Implemented
-@end example
-
-@subsection Invariant Values
-
-@example
-SSIZE_MAX, Constant, Implemented
-@end example
-
-@subsection Maximum Values
-
-@example
-_POSIX_CLOCKRES_MIN, Constant, Implemented
-@end example
-
-@section Symbolic Constants
-
-@subsection Symbolic Constants for the access Function
-
-@example
-R_OK, Constant, Implemented
-W_OK, Constant, Implemented
-X_OK, Constant, Implemented
-F_OK, Constant, Implemented
-@end example
-
-@subsection Symbolic Constants for the lseek Function
-
-@example
-SEEK_SET, Constant, Implemented
-SEEK_CUR, Constant, Implemented
-SEEK_END, Constant, Implemented
-@end example
-
-@subsection Compile-Time Symbolic Constants for Portability Specifications
-
-@example
-_POSIX_ASYNCHRONOUS_IO, Feature Flag,
-_POSIX_FSYNC, Feature Flag,
-_POSIX_JOB_CONTROL, Feature Flag,
-_POSIX_MAPPED_FILES, Feature Flag,
-_POSIX_MEMLOCK, Feature Flag,
-_POSIX_MEMLOCK_RANGE, Feature Flag,
-_POSIX_MEMORY_PROTECTION, Feature Flag,
-_POSIX_MESSAGE_PASSING, Feature Flag,
-_POSIX_PRIORITIZED_IO, Feature Flag,
-_POSIX_PRIORITY_SCHEDULING, Feature Flag,
-_POSIX_REALTIME_SIGNALS, Feature Flag,
-_POSIX_SAVED_IDS, Feature Flag,
-_POSIX_SEMAPHORES, Feature Flag,
-_POSIX_SHARED_MEMORY_OBJECTS, Feature Flag,
-_POSIX_SYNCHRONIZED_IO, Feature Flag,
-_POSIX_THREADS, Feature Flag,
-_POSIX_THREAD_ATTR_STACKADDR, Feature Flag,
-_POSIX_THREAD_ATTR_STACKSIZE, Feature Flag,
-_POSIX_THREAD_PRIORITY_SCHEDULING, Feature Flag,
-_POSIX_THREAD_PRIO_INHERIT, Feature Flag,
-_POSIX_THREAD_PRIO_CEILING, Feature Flag,
-_POSIX_THREAD_PROCESS_SHARED, Feature Flag,
-_POSIX_THREAD_SAFE_FUNCTIONS, Feature Flag,
-_POSIX_TIMERS, Feature Flag,
-_POSIX_VERSION, Feature Flag,
-@end example
-
-@subsection Execution-Time Symbolic Constants for Portability Specifications
-
-@example
-_POSIX_ASYNC_IO, Feature Flag,
-_POSIX_CHOWN_RESTRICTED, Feature Flag,
-_POSIX_NO_TRUNC, Feature Flag,
-_POSIX_PRIO_IO, Feature Flag,
-_POSIX_SYNC_IO, Feature Flag,
-_POSIX_VDISABLE, Feature Flag,
-@end example
diff --git a/doc/posix1003.1/ch03.t b/doc/posix1003.1/ch03.t
deleted file mode 100644
index a2cc062f4c..0000000000
--- a/doc/posix1003.1/ch03.t
+++ /dev/null
@@ -1,200 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Process Primitives
-
-@section Process Creation and Execution
-
-@subsection Process Creation
-
-@example
-fork(), Function, Unimplementable, Requires Processes
-@end example
-
-
-@subsection Execute a File
-
-@example
-execl(), Function, Unimplementable, Requires Processes
-execv(), Function, Unimplementable, Requires Processes
-execle(), Function, Unimplementable, Requires Processes
-execve(), Function, Unimplementable, Requires Processes
-execlp(), Function, Unimplementable, Requires Processes
-execvp(), Function, Unimplementable, Requires Processes
-@end example
-
-@subsection Register Fork Handlers
-
-@example
-pthread_atfork(), Function, Unimplementable, Requires Processes
-@end example
-
-@section Process Termination
-
-@subsection Wait for Process Termination
-
-@example
-wait(), Function, Unimplementable, Requires Processes
-waitpid(), Function, Unimplementable, Requires Processes
-WNOHANG, Constant, Unimplementable, Requires Processes
-WUNTRACED, Constant, Unimplementable, Requires Processes
-WIFEXITED(), Function, Unimplementable, Requires Processes
-WEXITSTATUS(), Function, Unimplementable, Requires Processes
-WIFSIGNALED(), Function, Unimplementable, Requires Processes
-WTERMSIG(), Function, Unimplementable, Requires Processes
-WIFSTOPPED(), Function, Unimplementable, Requires Processes
-WSTOPSIG(), Function, Unimplementable, Requires Processes
-@end example
-
-@subsection Terminate a Process
-
-@example
-_exit(), Function, Implemented
-@end example
-
-@section Signals
-
-@subsection Signal Concepts
-
-@subsubsection Signal Names
-
-@example
-sigset_t, Type, Implemented
-SIG_DFL, Constant, Implemented
-SIG_IGN, Constant, Implemented
-SIG_ERR, Constant, Implemented
-SIGABRT, Constant, Implemented
-SIGALRM, Constant, Implemented
-SIGFPE, Constant, Implemented
-SIGHUP, Constant, Implemented
-SIGILL, Constant, Implemented
-SIGINT, Constant, Implemented
-SIGKILL, Constant, Implemented
-SIGPIPE, Constant, Implemented
-SIGQUIT, Constant, Implemented
-SIGSEGV, Constant, Implemented
-SIGTERM, Constant, Implemented
-SIGUSR1, Constant, Implemented
-SIGUSR2, Constant, Implemented
-SIGCHLD, Constant, Unimplemented
-SIGCONT, Constant, Unimplemented
-SIGSTOP, Constant, Unimplemented
-SIGTSTP, Constant, Unimplemented
-SIGTTIN, Constant, Unimplemented
-SIGTTOU, Constant, Unimplemented
-SIGBUS, Constant, Implemented
-SIGRTMIN, Constant, Implemented
-SIGRTMAX, Constant, Implemented
-@end example
-
-NOTE: SIG_ERR is technically an extension to the C Library which is
-not documented anywhere else according to the index.
-@subsubsection Signal Generation and Delivery
-
-@example
-struct sigevent, Type, Implemented
-union sigval, Type, Implemented
-SIGEV_NONE, Constant, Implemented
-SIGEV_SIGNAL, Constant, Implemented
-SIGEV_THREAD, Constant, Implemented
-@end example
-
-@subsubsection Signal Actions
-
-@example
-siginfo_t, Type, Implemented
-SI_USER, Constant, Implemented
-SI_QUEUE, Constant, Implemented
-SI_TIMER, Constant, Implemented
-SI_ASYNCIO, Constant, Implemented
-SI_MESGQ, Constant, Implemented
-@end example
-
-@subsection Send a Signal to a Process
-
-@example
-kill(), Function, Implemented
-@end example
-
-@subsection Manipulate Signal Sets
-
-@example
-sigemptyset(), Function, Implemented
-sigfillset(), Function, Implemented
-sigaddset(), Function, Implemented
-sigdelset(), Function, Implemented
-sigismember(), Function, Implemented
-@end example
-
-@subsection Examine and Change Signal Action
-
-@example
-sigaction(), Function, Implemented
-sigaction, Type, Implemented
-SA_NOCLDSTOP, Constant, Implemented
-SA_SIGINFO, Constant, Implemented
-@end example
-
-@subsection Examine and Change Blocked Signals
-
-@example
-pthread_sigmask(), Function, Implemented
-sigprocmask(), Function, Implemented
-SIG_BLOCK, Constant, Implemented
-SIG_UNBLOCK, Constant, Implemented
-SIG_SETMASK, Constant, Implemented
-@end example
-
-@subsection Examine Pending Signals
-
-@example
-sigpending(), Function, Implemented
-@end example
-
-@subsection Wait for a Signal
-
-@example
-sigsuspend(), Function, Implemented
-@end example
-
-@subsection Synchronously Accept a Signal
-
-@example
-sigwait(), Function, Implemented
-sigwaitinfo(), Function, Implemented
-sigtimedwait(), Function, Implemented
-@end example
-
-@subsection Queue a Signal to a Process
-
-@example
-sigqueue(), Function, Implemented
-@end example
-
-@subsection Send a Signal to a Thread
-
-@example
-pthread_kill(), Function, Implemented
-@end example
-
-@section Timer Operations
-
-@subsection Schedule Alarm
-
-@example
-alarm(), Function, Implemented
-@end example
-
-@subsection Suspend Process Execution
-
-@example
-pause(), Function, Implemented
-@end example
-
-@subsection Delay Process Execution
-
-@example
-sleep(), Function, Implemented
-@end example
diff --git a/doc/posix1003.1/ch04.t b/doc/posix1003.1/ch04.t
deleted file mode 100644
index c35624693f..0000000000
--- a/doc/posix1003.1/ch04.t
+++ /dev/null
@@ -1,178 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Process Environment
-
-@section Process Identification
-
-@subsection Get Process and Parent Process IDs
-
-@example
-getpid(), Function, Implemented, SUSP Functionality
-getppid(), Function, Implemented, SUSP Functionality
-@end example
-
-@section User Identification
-
-@subsection Get Real User Effective User Real Group and Effective Group IDs
-
-@example
-getuid(), Function, Implemented, SUSP Functionality
-geteuid(), Function, Implemented, SUSP Functionality
-getgid(), Function, Implemented, SUSP Functionality
-getegid(), Function, Implemented, SUSP Functionality
-@end example
-
-@subsection Set User and Group IDs
-
-@example
-setuid(), Function, Implemented, SUSP Functionality
-setgid(), Function, Implemented, SUSP Functionality
-@end example
-
-@subsection Get Supplementary Group IDs
-
-@example
-getgroups(), Function, Implemented, SUSP Functionality
-@end example
-
-@subsection Get User Name
-
-@example
-getlogin(), Function, Implemented, SUSP Functionality
-getlogin_r(), Function, Implemented, SUSP Functionality
-@end example
-
-@section Process Groups
-
-@subsection Get Process Group ID
-
-@example
-getpgrp(), Function, Implemented, SUSP Functionality
-@end example
-
-@subsection Create Session and Set Process Group ID
-
-@example
-setsid(), Function, Implemented, SUSP Functionality
-@end example
-
-@subsection Set Process Group ID for Job Control
-
-@example
-setpgid(), Function, Dummy Implementation
-@end example
-
-@section System Identification
-
-@subsection Get System Name
-
-@example
-struct utsname, Type, Implemented
-uname(), Function, Implemented
-@end example
-
-@section Time
-
-@subsection Get System Time
-
-@example
-time(), Function, Implemented
-@end example
-
-@subsection Get Process Times
-
-@example
-struct tms, Type, Implemented
-times(), Function, Implemented
-@end example
-
-NOTE: @code{times} always returns 0 for tms_stime, tms_cutime, and
-tms_cstime fields of the @code{struct tms} returned.
-
-@section Environment Variables
-
-@subsection Environment Access
-
-@example
-getenv(), Function, Implemented
-@end example
-
-@section Terminal Identification
-
-@subsection Generate Terminal Pathname
-
-@example
-ctermid(), Function, Implemented
-@end example
-
-@subsection Determine Terminal Device Name
-
-@example
-ttyname(), Function, Implemented, untested
-ttyname_r(), Function, Implemented, untested
-isatty(), Function, Implemented
-@end example
-
-@section Configurable System Variables
-
-@subsection Get Configurable System Variables
-
-@example
-sysconf(), Function, Dummy Implementation
-_SC_AIO_LISTIO_MAX, Constant, Implemented
-_SC_AIO_MAX, Constant, Implemented
-_SC_AIO_PRIO_DELTA_MAX, Constant, Implemented
-_SC_ARG_MAX, Constant, Implemented
-_SC_CHILD_MAX, Constant, Implemented
-_SC_CLK_TCK, Constant, Implemented
-CLK_TCK, Constant, Implemented
-_SC_DELAYTIMER_MAX, Constant, Implemented
-_SC_GETGR_R_SIZE_MAX, Constant, Implemented
-_SC_GETPW_R_SIZE_MAX, Constant, Implemented
-_SC_LOGIN_NAME_MAX, Constant, Implemented
-_SC_MQ_OPEN_MAX, Constant, Implemented
-_SC_MQ_PRIO_MAX, Constant, Implemented
-_SC_NGROUPS_MAX, Constant, Implemented
-_SC_OPEN_MAX, Constant, Implemented
-_SC_PAGESIZE, Constant, Implemented
-_SC_RTSIG_MAX, Constant, Implemented
-_SC_SEM_NSEMS_MAX, Constant, Implemented
-_SC_SEM_VALUE_MAX, Constant, Implemented
-_SC_SIGQUEUE_MAX, Constant, Implemented
-_SC_STREAM_MAX, Constant, Implemented
-_SC_THREAD_DESTRUCTOR_ITERATIONS, Constant, Implemented
-_SC_THREAD_KEYS_MAX, Constant, Implemented
-_SC_THREAD_STACK_MIN, Constant, Implemented
-_SC_THREAD_THREADS_MAX, Constant, Implemented
-_SC_TIMER_MAX, Constant, Implemented
-_SC_TTY_NAME_MAX, Constant, Implemented
-_SC_TZNAME_MAX, Constant, Implemented
-_SC_ASYNCHRONOUS_IO, Constant, Implemented
-_SC_FSYNC, Constant, Implemented
-_SC_JOB_CONROL, Constant, Implemented
-_SC_MAPPED_FILES, Constant, Implemented
-_SC_MEMLOCK, Constant, Implemented
-_SC_MEMLOCK_RANGE, Constant, Implemented
-_SC_MEMORY_PROTECTION, Constant, Implemented
-_SC_MESSAGE_PASSING, Constant, Implemented
-_SC_PRIORITIZED_IO, Constant, Implemented
-_SC_PRIORITY_SCHEDULING, Constant, Unimplemented
-_SC_REALTIME_SIGNALS, Constant, Implemented
-_SC_SAVED_IDS, Constant, Implemented
-_SC_SEMAPHORES, Constant, Implemented
-_SC_SHARED_MEMORY_OBJECTS, Constant, Implemented
-_SC_SYNCHRONIZED_IO, Constant, Implemented
-_SC_TIMERS, Constant, Implemented
-_SC_THREADS, Constant, Implemented
-_SC_THREAD_ATTR_STACKADDR, Constant, Implemented
-_SC_THREAD_ATTR_STACKSIZE, Constant, Implemented
-_SC_THREAD_PRIORITY_SCHEDULING, Constant, Implemented
-_SC_THREAD_PRIO_INHERIT, Constant, Implemented
-_SC_THREAD_PRIO_PROTECT, Constant, Unimplemented
-_SC_THREAD_PROCESS_SHARED, Constant, Implemented
-_SC_THREAD_SAFE_FUNCTIONS, Constant, Implemented
-_SC_VERSION, Constant, Implemented
-@end example
diff --git a/doc/posix1003.1/ch05.t b/doc/posix1003.1/ch05.t
deleted file mode 100644
index 9aa28bafe7..0000000000
--- a/doc/posix1003.1/ch05.t
+++ /dev/null
@@ -1,219 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Files and Directories
-
-@section Directories
-
-@subsection Format of Directory Entries
-
-@subsection Directory Operations
-
-@example
-struct dirent, Type, Implemented
-opendir(), Function, Implemented
-readdir(), Function, Implemented
-readdir_r(), Function, Implemented
-rewinddir(), Function, Implemented
-closedir(), Function, Implemented
-@end example
-
-@section Working Directory
-
-@subsection Change Current Working Directory
-
-@example
-chdir(), Function, Implemented
-@end example
-
-@subsection Get Working Directory Pathname
-
-@example
-getcwd(), Function, Implemented
-@end example
-
-@section General File Creation
-
-@subsection Open a File
-
-@example
-open(), Function, Implemented
-O_RDONLY, Constant, Implemented
-O_WRONLY, Constant, Implemented
-O_RDWR, Constant, Implemented
-O_APPEND, Constant, Implemented
-O_CREAT, Constant, Implemented
-O_DSYNC, Constant, Unimplemented
-O_EXCL, Constant, Implemented
-O_NOCTTY, Constant, Implemented
-O_NONBLOCK, Constant, Implemented
-O_RSYNC, Constant, Unimplemented
-O_SYNC, Constant, Implemented
-O_TRUNC, Constant, Implemented
-@end example
-
-NOTE: In the newlib fcntl.h, O_SYNC is defined only if _POSIX_SOURCE is
-not defined. This seems wrong.
-
-@subsection Create a New File or Rewrite an Existing One
-
-@example
-creat(), Function, Implemented
-@end example
-
-@subsection Set File Creation Mask
-
-@example
-umask(), Function, Implemented
-@end example
-
-@subsection Link to a File
-
-@example
-link(), Function, Implemented
-@end example
-
-@section Special File Creation
-
-@subsection Make a Directory
-
-@example
-mkdir(), Function, Implemented
-@end example
-
-@subsection Make a FIFO Special File
-
-@example
-mkfifo(), Function, Untested Implementation
-@end example
-
-NOTE: mkfifo() is implemented but no filesystem supports FIFOs.
-
-@section File Removal
-
-@subsection Remove Directory Entries
-
-@example
-unlink(), Function, Implemented
-@end example
-
-@subsection Remove a Directory
-
-@example
-rmdir(), Function, Implemented
-@end example
-
-@subsection Rename a File
-
-@example
-rename(), Function, Partial Implementation
-@end example
-
-@section File Characteristics
-
-@subsection File Characteristics Header and Data Structure
-
-@example
-struct stat, Type, Implemented
-@end example
-
-@subsubsection <sys/stat.h> File Types
-
-@example
-S_ISBLK(), Function, Implemented
-S_ISCHR(), Function, Implemented
-S_ISDIR(), Function, Implemented
-S_ISFIFO(), Function, Implemented
-S_ISREG(), Function, Implemented
-S_TYPEISMQ(), Function, Unimplemented
-S_TYPEISSEM(), Function, Unimplemented
-S_TYPEISSHM(), Function, Unimplemented
-@end example
-
-@subsubsection <sys/stat.h> File Modes
-
-@example
-S_IRWXU, Constant, Implemented
-S_IRUSR, Constant, Implemented
-S_IWUSR, Constant, Implemented
-S_IXUSR, Constant, Implemented
-S_IRWXG, Constant, Implemented
-S_IRGRP, Constant, Implemented
-S_IWGRP, Constant, Implemented
-S_IXGRP, Constant, Implemented
-S_IRWXO, Constant, Implemented
-S_IROTH, Constant, Implemented
-S_IWOTH, Constant, Implemented
-S_IXOTH, Constant, Implemented
-S_ISUID, Constant, Implemented
-S_ISGID, Constant, Implemented
-@end example
-
-@subsubsection <sys/stat.h> Time Entries
-
-@subsection Get File Status
-
-@example
-stat(), Function, Implemented
-fstat(), Function, Implemented
-@end example
-
-@subsection Check File Accessibility
-
-@example
-access(), Function, Implemented
-@end example
-
-@subsection Change File Modes
-
-@example
-chmod(), Function, Implemented
-fchmod(), Function, Implemented
-@end example
-
-@subsection Change Owner and Group of a File
-
-@example
-chown(), Function, Implemented
-@end example
-
-@subsection Set File Access and Modification Times
-
-@example
-struct utimbuf, Type, Implemented
-utime(), Function, Implemented
-@end example
-
-@subsection Truncate a File to a Specified Length
-
-@example
-ftruncate(), Function, Implemented
-@end example
-
-@section Configurable Pathname Variable
-
-@subsection Get Configurable Pathname Variables
-
-@example
-pathconf(), Function, Implemented
-fpathconf(), Function, Implemented
-_PC_LINK_MAX, Constant, Implemented
-_PC_MAX_CANON, Constant, Implemented
-_PC_MAX_INPUT, Constant, Implemented
-_PC_MAX_INPUT, Constant, Implemented
-_PC_NAME_MAX, Constant, Implemented
-_PC_PATH_MAX, Constant, Implemented
-_PC_PIPE_BUF, Constant, Implemented
-_PC_ASYNC_IO, Constant, Implemented
-_PC_CHOWN_RESTRICTED, Constant, Implemented
-_PC_NO_TRUNC, Constant, Implemented
-_PC_PRIO_IO, Constant, Implemented
-_PC_SYNC_IO, Constant, Implemented
-_PC_VDISABLE, Constant, Implemented
-@end example
-
-NOTE: The newlib unistd.h and sys/unistd.h are installed and the
-include search patch is used to get the right one. There are
-conflicts between the newlib unistd.h and RTEMS' version.
diff --git a/doc/posix1003.1/ch06.t b/doc/posix1003.1/ch06.t
deleted file mode 100644
index 7c253a1ac6..0000000000
--- a/doc/posix1003.1/ch06.t
+++ /dev/null
@@ -1,172 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Input and Output Primitives
-
-@section Pipes
-
-@subsection Create an Inter-Process Channel
-
-@example
-pipe(), Function, Dummy Implementation
-@end example
-
-NOTE: pipe() returns ENOSYS.
-
-@section File Descriptor Manipulation
-
-@subsection Duplicate an Open File Descriptor
-
-@example
-dup(), Function, Implemented
-dup2(), Function, Implemented
-@end example
-
-@section File Descriptor Deassignment
-
-@subsection Close a File
-
-@example
-close(), Function, Implemented
-@end example
-
-@section Input and Output
-
-@subsection Read from a File
-
-@example
-read(), Function, Implemented
-@end example
-
-@subsection Write to a File
-
-@example
-write(), Function, Implemented
-@end example
-
-@section Control Operations on Files
-
-@subsection Data Definitions for File Control Operations
-
-@subsection File Control
-
-@example
-struct flock, Type, Implemented
-fcntl(), Function, Implemented
-F_DUPFD, Constant, Implemented
-F_GETFD, Constant, Implemented
-F_GETLK, Constant, Implemented
-F_SETFD, Constant, Implemented
-F_GETFL, Constant, Implemented
-F_SETFL, Constant, Implemented
-F_SETLK, Constant, Implemented
-F_SETLKW, Constant, Implemented
-FD_CLOEXEC, Constant, Implemented
-F_RDLCK, Constant, Implemented
-F_UNLCK, Constant, Implemented
-F_WRLCK, Constant, Implemented
-O_ACCMODE, Constant, Implemented
-@end example
-
-NOTE: A number of constants are used by both @code{open} and @code{fcntl}.
-@code{O_CREAT}, @code{O_EXCL}, @code{O_NOCTTY}, @code{O_TRUNC},
-@code{O_APPEND}, @code{O_DSYNC}, @code{O_NONBLOCK}, @code{O_RSYNC},
-@code{O_SYNC}, @code{O_RDONLY}, @code{O_RDWR}, and @code{O_WRONLY}
-are also included in another section. @xref{Open a File}.
-
-@subsection Reposition Read/Write File Offset
-
-@example
-lseek(), Function, Implemented
-SEEK_SET, Constant, Implemented
-SEEK_CUR, Constant, Implemented
-SEEK_END, Constant, Implemented
-@end example
-
-@section File Synchronization
-
-@subsection Synchronize the State of a File
-
-@example
-fsync(), Function, Implemented
-@end example
-
-@subsection Synchronize the Data of a File
-
-@example
-fdatasync(), Function, Implemented
-@end example
-
-@section Asynchronous Input and Output
-
-@subsection Data Definitions for Asynchronous Input and Output
-
-@subsubsection Asynchronous I/O Control Block
-
-@example
-struct aiocb, Type, Untested Implementation
-@end example
-
-@subsubsection Asynchronous I/O Manifest Constants
-
-@example
-AIO_CANCELED, Constant, Implemented
-AIO_NOTCANCELED, Constant, Implemented
-AIO_ALLDONE, Constant, Implemented
-LIO_WAIT, Constant, Implemented
-LIO_NOWAIT, Constant, Implemented
-LIO_READ, Constant, Implemented
-LIO_WRITE, Constant, Implemented
-LIO_NOP, Constant, Implemented
-@end example
-
-@subsection Asynchronous Read
-
-@example
-aio_read(), Function, Dummy Implementation
-@end example
-
-@subsection Asynchronous Write
-
-@example
-aio_write(), Function, Dummy Implementation
-@end example
-
-@subsection List Directed I/O
-
-@example
-lio_listio(), Function, Dummy Implementation
-@end example
-
-@subsection Retrieve Error Status of Asynchronous I/O Operation
-
-@example
-aio_error(), Function, Dummy Implementation
-@end example
-
-@subsection Retrieve Return Status of Asynchronous I/O Operation
-
-@example
-aio_return(), Function, Dummy Implementation
-@end example
-
-@subsection Cancel Asynchronous I/O Request
-
-@example
-aio_cancel(), Function, Dummy Implementation
-@end example
-
-@subsection Wait for Asynchronous I/O Request
-
-@example
-aio_suspend(), Function, Dummy Implementation
-@end example
-
-@subsection Asynchronous File Synchronization
-
-@example
-aio_fsync(), Function, Dummy Implementation
-@end example
-
diff --git a/doc/posix1003.1/ch07.t b/doc/posix1003.1/ch07.t
deleted file mode 100644
index c41162a6f6..0000000000
--- a/doc/posix1003.1/ch07.t
+++ /dev/null
@@ -1,204 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Device- and Class-Specific Functions
-
-@section General Terminal Interface
-
-@subsection Interface Characteristics
-
-@subsubsection Opening a Terminal Device File
-
-@subsubsection Process Groups (TTY)
-
-@subsubsection The Controlling Terminal
-
-@subsubsection Terminal Access Control
-
-@subsubsection Input Processing and Reading Data
-
-@subsubsection Canonical Mode Input Processing
-
-@subsubsection Noncanonical Mode Input Processing
-
-@itemize
-
-@item Case A - MIN > 0 and TIME > 0
-
-@item Case B - MIN > 0 and TIME = 0
-
-@item Case C - MIN = 0 and TIME > 0
-
-@item Case D - MIN = 0 and TIME = 0
-
-@end itemize
-
-@subsubsection Writing Data and Output Processing
-
-@subsubsection Special Characters
-
-@example
-INTR, Constant, Implemented
-QUIT, Constant, Implemented
-ERASE, Constant, Implemented
-KILL, Constant, Implemented
-EOF, Constant, Implemented
-NL, Constant, Implemented
-EOL, Constant, Implemented
-SUSP, Constant, Implemented
-STOP, Constant, Implemented
-START, Constant, Implemented
-CR, Constant, Implemented
-@end example
-
-@subsubsection Modem Disconnect
-
-@subsubsection Closing a Terminal Device File
-
-@subsection Parameters That Can Be Set
-
-@subsubsection termios Structure
-
-@example
-tcflag_t, Type, Implemented
-cc_t, Type, Implemented
-struct termios, Type, Implemented
-@end example
-
-@subsubsection Input Modes
-
-@example
-BRKINT, Constant, Implemented
-ICRNL, Constant, Implemented
-IGNBREAK, Constant, Unimplemented
-IGNCR, Constant, Implemented
-IGNPAR, Constant, Implemented
-INLCR, Constant, Implemented
-INPCK, Constant, Implemented
-ISTRIP, Constant, Implemented
-IXOFF, Constant, Implemented
-IXON, Constant, Implemented
-PARMRK, Constant, Implemented
-@end example
-
-@subsubsection Output Modes
-
-@example
-OPOST, Constant, Implemented
-@end example
-
-@subsubsection Control Modes
-
-@example
-CLOCAL, Constant, Implemented
-CREAD, Constant, Implemented
-CSIZE, Constant, Implemented
-CS5, Constant, Implemented
-CS6, Constant, Implemented
-CS7, Constant, Implemented
-CS8, Constant, Implemented
-CSTOPB, Constant, Implemented
-HUPCL, Constant, Implemented
-PARENB, Constant, Implemented
-PARODD, Constant, Implemented
-@end example
-
-@subsubsection Local Modes
-
-@example
-ECHO, Constant, Implemented
-ECHOE, Constant, Implemented
-ECHOK, Constant, Implemented
-ECHONL, Constant, Implemented
-ICANON, Constant, Implemented
-IEXTEN, Constant, Implemented
-ISIG, Constant, Implemented
-NOFLSH, Constant, Implemented
-TOSTOP, Constant, Implemented
-@end example
-
-@subsubsection Special Control Characters
-
-@example
-VEOF, Constant, Implemented
-VEOL, Constant, Implemented
-VERASE, Constant, Implemented
-VINTR, Constant, Implemented
-VKILL, Constant, Implemented
-VQUIT, Constant, Implemented
-VSUSP, Constant, Implemented
-VSTART, Constant, Implemented
-VSTOP, Constant, Implemented
-VMIN, Constant, Implemented
-VTIME, Constant, Implemented
-@end example
-
-@subsection Baud Rate Values
-
-@example
-B0, Constant, Implemented
-B50, Constant, Implemented
-B75, Constant, Implemented
-B110, Constant, Implemented
-B134, Constant, Implemented
-B150, Constant, Implemented
-B200, Constant, Implemented
-B300, Constant, Implemented
-B600, Constant, Implemented
-B1200, Constant, Implemented
-B1800, Constant, Implemented
-B2400, Constant, Implemented
-B4800, Constant, Implemented
-B9600, Constant, Implemented
-B19200, Constant, Implemented
-B38400, Constant, Implemented
-@end example
-
-@subsubsection Baud Rate Functions
-
-@example
-cfgetospeed(), Function, Implemented
-cfsetospeed(), Function, Implemented
-cfgetispeed(), Function, Implemented
-cfsetispeed(), Function, Implemented
-TCIFLUSH, Constant, Implemented
-TCOFLUSH, Constant, Implemented
-TCIOFLUSH, Constant, Implemented
-TCOOFF, Constant, Implemented
-TCOON, Constant, Implemented
-TCIOOFF, Constant, Implemented
-TCIOON, Constant, Implemented
-@end example
-
-@section General Terminal Interface Control Functions
-
-@subsection Get and Set State
-
-@example
-tcgetattr(), Function, Implemented
-tcsetattr(), Function, Implemented
-@end example
-
-@subsection Line Control Functions
-
-@example
-tcsendbreak(), Function, Dummy Implementation
-tcdrain(), Function, Implemented
-tcflush(), Function, Dummy Implementation
-tcflow(), Function, Dummy Implementation
-@end example
-
-@subsection Get Foreground Process Group ID
-
-@example
-tcgetprgrp(), Function, Implemented, SUSP
-@end example
-
-@subsection Set Foreground Process Group ID
-
-@example
-tcsetprgrp(), Function, Dummy Implementation
-@end example
-
diff --git a/doc/posix1003.1/ch08.t b/doc/posix1003.1/ch08.t
deleted file mode 100644
index 80ac3c7211..0000000000
--- a/doc/posix1003.1/ch08.t
+++ /dev/null
@@ -1,286 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Language-Specific Services for the C Programming Language
-
-@section Referenced C Language Routines
-
-ANSI C Section 4.2 --- Diagnostics
-
-@example
-assert(), Function, Implemented
-@end example
-
-ANSI C Section 4.3 --- Character Handling
-
-@example
-isalnum(), Function, Implemented
-isalpha(), Function, Implemented
-iscntrl(), Function, Implemented
-isdigit(), Function, Implemented
-isgraph(), Function, Implemented
-islower(), Function, Implemented
-isprint(), Function, Implemented
-ispunct(), Function, Implemented
-isspace(), Function, Implemented
-isupper(), Function, Implemented
-isxdigit(), Function, Implemented
-tolower(), Function, Implemented
-toupper(), Function, Implemented
-@end example
-
-ANSI C Section 4.4 --- Localization
-
-@example
-setlocale(), Function, Implemented
-@end example
-
-ANSI C Section 4.5 --- Mathematics
-
-@example
-acos(), Function, Implemented
-asin(), Function, Implemented
-atan(), Function, Implemented
-atan2(), Function, Implemented
-cos(), Function, Implemented
-sin(), Function, Implemented
-tan(), Function, Implemented
-cosh(), Function, Implemented
-sinh(), Function, Implemented
-tanh(), Function, Implemented
-exp(), Function, Implemented
-frexp(), Function, Implemented
-ldexp(), Function, Implemented
-log(), Function, Implemented
-log10(), Function, Implemented
-modf(), Function, Implemented
-pow(), Function, Implemented
-sqrt(), Function, Implemented
-ceil(), Function, Implemented
-fabs(), Function, Implemented
-floor(), Function, Implemented
-fmod(), Function, Implemented
-@end example
-
-ANSI C Section 4.6 --- Non-Local Jumps
-
-@example
-setjmp(), Function, Implemented
-longjmp(), Function, Implemented
-@end example
-
-ANSI C Section 4.9 --- Input/Output
-
-@example
-FILE, Type, Implemented
-clearerr(), Function, Implemented
-fclose(), Function, Implemented
-feof(), Function, Implemented
-ferror(), Function, Implemented
-fflush(), Function, Implemented
-fgetc(), Function, Implemented
-fgets(), Function, Implemented
-fopen(), Function, Implemented
-fputc(), Function, Implemented
-fputs(), Function, Implemented
-fread(), Function, Implemented
-freopen(), Function, Implemented
-fseek(), Function, Implemented
-ftell(), Function, Implemented
-fwrite(), Function, Implemented
-getc(), Function, Implemented
-getchar(), Function, Implemented
-gets(), Function, Implemented
-perror(), Function, Implemented
-printf(), Function, Implemented
-fprintf(), Function, Implemented
-sprintf(), Function, Implemented
-putc(), Function, Implemented
-putchar(), Function, Implemented
-puts(), Function, Implemented
-remove(), Function, Implemented
-rename(), Function, Partial Implementation
-rewind(), Function, Implemented
-scanf(), Function, Implemented
-fscanf(), Function, Implemented
-sscanf(), Function, Implemented
-setbuf(), Function, Implemented
-tmpfile(), Function, Implemented
-tmpnam(), Function, Implemented
-ungetc(), Function, Implemented
-@end example
-
-NOTE: @code{rename} is also included in another section. @ref{Rename a File}.
-
-ANSI C Section 4.10 --- General Utilities
-
-@example
-abs(), Function, Implemented
-atof(), Function, Implemented
-atoi(), Function, Implemented
-atol(), Function, Implemented
-rand(), Function, Implemented
-srand(), Function, Implemented
-calloc(), Function, Implemented
-free(), Function, Implemented
-malloc(), Function, Implemented
-realloc(), Function, Implemented
-abort(), Function, Implemented
-exit(), Function, Implemented
-bsearch(), Function, Implemented
-qsort(), Function, Implemented
-@end example
-
-NOTE: @code{getenv} is also included in another section.
-@ref{Environment Access}.
-
-ANSI C Section 4.11 --- String Handling
-
-@example
-strcpy(), Function, Implemented
-strncpy(), Function, Implemented
-strcat(), Function, Implemented
-strncat(), Function, Implemented
-strcmp(), Function, Implemented
-strncmp(), Function, Implemented
-strchr(), Function, Implemented
-strcspn(), Function, Implemented
-strpbrk(), Function, Implemented
-strrchr(), Function, Implemented
-strspn(), Function, Implemented
-strstr(), Function, Implemented
-strtok(), Function, Implemented
-strlen(), Function, Implemented
-@end example
-
-ANSI C Section 4.12 --- Date and Time Handling
-
-@example
-asctime(), Function, Implemented
-ctime(), Function, Implemented
-gmtime(), Function, Implemented
-localtime(), Function, Implemented
-mktime(), Function, Implemented
-strftime(), Function, Implemented
-@end example
-
-NOTE: RTEMS has no notion of time zones.
-
-NOTE: @code{time} is also included in another section.
-@ref{Get System Time}.
-
-From Surrounding Text
-
-@example
-EXIT_SUCCESS, Constant, Implemented
-EXIT_FAILURE, Constant, Implemented
-@end example
-
-
-@subsection Extensions to Time Functions
-
-@subsection Extensions to setlocale Function
-
-@example
-LC_CTYPE, Constant, Implemented
-LC_COLLATE, Constant, Implemented
-LC_TIME, Constant, Implemented
-LC_NUMERIC, Constant, Implemented
-LC_MONETARY, Constant, Implemented
-LC_ALL, Constant, Implemented
-@end example
-
-@section C Language Input/Output Functions
-
-@subsection Map a Stream Pointer to a File Descriptor
-
-@example
-fileno(), Function, Implemented
-STDIN_FILENO, Constant, Implemented
-STDOUT_FILENO, Constant, Implemented
-STDERR_FILENO, Constant, Implemented
-@end example
-
-@subsection Open a Stream on a File Descriptor
-
-@example
-fdopen(), Function, Implemented
-@end example
-
-@subsection Interactions of Other FILE-Type C Functions
-
-@subsection Operations on Files - the remove Function
-
-@subsection Temporary File Name - the tmpnam Function
-
-@subsection Stdio Locking Functions
-
-@example
-flockfile(), Function, Unimplemented
-ftrylockfile(), Function, Unimplemented
-funlockfile(), Function, Unimplemented
-@end example
-
-@subsection Stdio With Explicit Client Locking
-
-@example
-getc_unlocked(), Function, Unimplemented
-getchar_unlocked(), Function, Unimplemented
-putc_unlocked(), Function, Unimplemented
-putchar_unlocked(), Function, Unimplemented
-@end example
-
-@section Other C Language Functions
-
-@subsection Nonlocal Jumps
-
-@example
-sigjmp_buf, Type, Implemented
-sigsetjmp(), Function, Implemented
-siglongjmp(), Function, Implemented
-@end example
-
-@subsection Set Time Zone
-
-@example
-tzset(), Function, Unimplemented
-@end example
-
-@subsection Find String Token
-
-@example
-strtok_r(), Function, Implemented
-@end example
-
-@subsection ASCII Time Representation
-
-@example
-asctime_r(), Function, Implemented
-@end example
-
-@subsection Current Time Representation
-
-@example
-ctime_r(), Function, Implemented
-@end example
-
-@subsection Coordinated Universal Time
-
-@example
-gmtime_r(), Function, Implemented
-@end example
-
-@subsection Local Time
-
-@example
-localtime_r(), Function, Implemented
-@end example
-
-@subsection Pseudo-Random Sequence Generation Functions
-
-@example
-rand_r(), Function, Implemented
-@end example
-
diff --git a/doc/posix1003.1/ch09.t b/doc/posix1003.1/ch09.t
deleted file mode 100644
index 8c302c4315..0000000000
--- a/doc/posix1003.1/ch09.t
+++ /dev/null
@@ -1,35 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter System Databases
-
-@section System Databases Section
-
-@section Database Access
-
-@subsection Group Database Access
-
-@example
-struct group, Type, Implemented
-getgrgid(), Function, Implemented
-getgrgid_r(), Function, Implemented
-getgrname(), Function, Implemented
-getgrnam_r(), Function, Implemented
-@end example
-
-NOTE: Creates /etc/group if none exists.
-
-@subsection User Database Access
-
-@example
-struct passwd, Type, Implemented
-getpwuid(), Function, Implemented
-getpwuid_r(), Function, Implemented
-getpwnam(), Function, Implemented
-getpwnam_r(), Function, Implemented
-@end example
-
-NOTE: Creates /etc/passwd if none exists.
-
diff --git a/doc/posix1003.1/ch10.t b/doc/posix1003.1/ch10.t
deleted file mode 100644
index 7310006d9b..0000000000
--- a/doc/posix1003.1/ch10.t
+++ /dev/null
@@ -1,65 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Data Interchange Format
-
-@section Archive/Interchange File Format
-
-@subsection Extended tar Format
-
-@example
-tar format, Type, Unimplemented
-TMAGIC, Constant, Unimplemented
-TMAGLEN, Constant, Unimplemented
-TVERSION, Constant, Unimplemented
-TVERSLEN, Constant, Unimplemented
-REGTYPE, Constant, Unimplemented
-AREGTYPE, Constant, Unimplemented
-LNKTYPE, Constant, Unimplemented
-SYMTYPE, Constant, Unimplemented
-CHRTYPE, Constant, Unimplemented
-BLKTYPE, Constant, Unimplemented
-DIRTYPE, Constant, Unimplemented
-FIFOTYPE, Constant, Unimplemented
-CONTTYPE, Constant, Unimplemented
-TSUID, Constant, Unimplemented
-TSGID, Constant, Unimplemented
-TSVTX, Constant, Unimplemented
-TUREAD, Constant, Unimplemented
-TUWRITE, Constant, Unimplemented
-TUEXEC, Constant, Unimplemented
-TGREAD, Constant, Unimplemented
-TGWRITE, Constant, Unimplemented
-TGEXEC, Constant, Unimplemented
-TOREAD, Constant, Unimplemented
-TOWRITE, Constant, Unimplemented
-TOEXEC, Constant, Unimplemented
-@end example
-
-NOTE: Requires <tar.h> which is not in newlib.
-
-@subsection Extended cpio Format
-
-@example
-cpio format, Type, Unimplemented
-C_IRUSER, Constant, Unimplemented
-C_IWUSER, Constant, Unimplemented
-C_IXUSER, Constant, Unimplemented
-C_IRGRP, Constant, Unimplemented
-C_IWGRP, Constant, Unimplemented
-C_IXGRP, Constant, Unimplemented
-C_IROTH, Constant, Unimplemented
-C_IWOTH, Constant, Unimplemented
-C_IXOTH, Constant, Unimplemented
-C_ISUID, Constant, Unimplemented
-C_ISGID, Constant, Unimplemented
-C_ISVTX, Constant, Unimplemented
-@end example
-
-NOTE: POSIX does not require a header file or structure. RedHat Linux
-5.0 does not have a <cpio.h> although Solaris 2.6 does.
-
-@subsection Multiple Volumes
-
diff --git a/doc/posix1003.1/ch11.t b/doc/posix1003.1/ch11.t
deleted file mode 100644
index 87cbf20781..0000000000
--- a/doc/posix1003.1/ch11.t
+++ /dev/null
@@ -1,130 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Synchronization
-
-@section Semaphore Characteristics
-
-NOTE: Semaphores are implemented but only unnamed semaphores
-are currently tested.
-
-@example
-sem_t, Type, Implemented
-@end example
-
-@section Semaphore Functions
-
-@subsection Initialize an Unnamed Semaphore
-
-@example
-sem_init(), Function, Implemented
-SEM_FAILED, Constant, Implemented
-@end example
-
-@subsection Destroy an Unnamed Semaphore
-
-@example
-sem_destroy(), Function, Implemented
-@end example
-
-@subsection Initialize/Open a Named Semaphore
-
-@example
-sem_open(), Function, Implemented
-@end example
-
-@subsection Close a Named Semaphore
-
-@example
-sem_close(), Function, Implemented
-@end example
-
-@subsection Remove a Named Semaphore
-
-@example
-sem_unlink(), Function, Implemented
-@end example
-
-@subsection Lock a Semaphore
-
-@example
-sem_wait(), Function, Implemented
-sem_trywait(), Function, Implemented
-@end example
-
-@subsection Unlock a Semaphore
-
-@example
-sem_post(), Function, Implemented
-@end example
-
-@subsection Get the Value of a Semaphore
-
-@example
-sem_getvalue(), Function, Implemented
-@end example
-
-@section Mutexes
-
-@subsection Mutex Initialization Attributes
-
-@example
-pthread_mutexattr_init(), Function, Implemented
-pthread_mutexattr_destroy(), Function, Implemented
-pthread_mutexattr_getpshared(), Function, Implemented
-pthread_mutexattr_setpshared(), Function, Implemented
-PTHREAD_PROCESS_SHARED, Constant, Implemented
-PTHREAD_PROCESS_PRIVATE, Constant, Implemented
-@end example
-
-@subsection Initializing and Destroying a Mutex
-
-@example
-pthread_mutex_init(), Function, Implemented
-pthread_mutex_destroy(), Function, Implemented
-PTHREAD_MUTEX_INITIALIZER, Constant, Implemented
-@end example
-
-@subsection Locking and Unlocking a Mutex
-
-@example
-pthread_mutex_lock(), Function, Implemented
-pthread_mutex_trylock(), Function, Implemented
-pthread_mutex_unlock(), Function, Implemented
-@end example
-
-@section Condition Variables
-
-@subsection Condition Variable Initialization Attributes
-
-@example
-pthread_condattr_init(), Function, Implemented
-pthread_condattr_destroy(), Function, Implemented
-pthread_condattr_getpshared(), Function, Implemented
-pthread_condattr_setpshared(), Function, Implemented
-@end example
-
-@subsection Initialization and Destroying Condition Variables
-
-@example
-pthread_cond_init(), Function, Implemented
-pthread_cond_destroy(), Function, Implemented
-PTHREAD_COND_INITIALIZER, Constant, Implemented
-@end example
-
-@subsection Broadcasting and Signaling a Condition
-
-@example
-pthread_cond_signal(), Function, Implemented
-pthread_cond_broadcast(), Function, Implemented
-@end example
-
-@subsection Waiting on a Condition
-
-@example
-pthread_cond_wait(), Function, Implemented
-pthread_cond_timedwait(), Function, Implemented
-@end example
-
diff --git a/doc/posix1003.1/ch12.t b/doc/posix1003.1/ch12.t
deleted file mode 100644
index 5eed85c991..0000000000
--- a/doc/posix1003.1/ch12.t
+++ /dev/null
@@ -1,74 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Memory Management
-
-@section Memory Locking Functions
-
-@subsection Lock/Unlock the Address Space of a Process
-
-@example
-mlockall(), Function, Unimplemented
-munlockall(), Function, Unimplemented
-MCL_CURRENT, Constant, Unimplemented
-MCL_FUTURE, Constant, Unimplemented
-@end example
-
-@subsection Lock/Unlock a Rand of Process Address Space
-
-@example
-mlock(), Function, Unimplemented
-munlock(), Function, Unimplemented
-@end example
-
-@section Memory Mapping Functions
-
-@subsection Map Process Addresses to a Memory Object
-
-@example
-mmap(), Function, Unimplemented
-PROT_READ, Constant, Unimplemented
-PROT_WRITE, Constant, Unimplemented
-PROT_EXEC, Constant, Unimplemented
-PROT_NONE, Constant, Unimplemented
-MAP_SHARED, Constant, Unimplemented
-MAP_PRIVATE, Constant, Unimplemented
-MAP_FIXED, Constant, Unimplemented
-@end example
-
-@subsection Unmap Previously Mapped Addresses
-
-@example
-munmap(), Function, Unimplemented
-@end example
-
-@subsection Change Memory Protection
-
-@example
-mprotect(), Function, Unimplemented
-@end example
-
-@subsection Memory Object Synchronization
-
-@example
-msync(), Function, Unimplemented, Unimplemented
-MS_ASYNC, Constant, Unimplemented
-MS_SYNC, Constant, Unimplemented
-MS_INVALIDATE, Constant, Unimplemented
-@end example
-
-@section Shared Memory Functions
-
-@subsection Open a Shared Memory Object
-
-@example
-shm_open(), Function, Unimplemented
-@end example
-
-@subsection Remove a Shared Memory Object
-
-@example
-shm_unlink(), Function, Unimplemented
-@end example
diff --git a/doc/posix1003.1/ch13.t b/doc/posix1003.1/ch13.t
deleted file mode 100644
index cc452175da..0000000000
--- a/doc/posix1003.1/ch13.t
+++ /dev/null
@@ -1,129 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Execution Scheduling
-
-@section Scheduling Parameters
-
-@example
-struct sched_param, Type, Implemented
-@end example
-
-@section Scheduling Policies
-
-@example
-SCHED_FIFO, Constant, Implemented
-SCHED_RR, Constant, Implemented
-SCHED_OTHER, Constant, Implemented
-@end example
-
-NOTE: RTEMS adds SCHED_SPORADIC.
-
-@subsection SCHED_FIFO
-
-@subsection SCHED_RR
-
-@subsection SCHED_OTHER
-
-@section Process Scheduling Functions
-
-@subsection Set Scheduling Parameters
-
-@example
-sched_setparam(), Function, Dummy Implementation
-@end example
-
-@subsection Get Scheduling Parameters
-
-@example
-sched_getparam(), Function, Dummy Implementation
-@end example
-
-@subsection Set Scheduling Policy and Scheduling Parameters
-
-@example
-sched_setscheduler(), Function, Dummy Implementation
-@end example
-
-@subsection Get Scheduling Policy
-
-@example
-sched_getscheduler(), Function, Dummy Implementation
-@end example
-
-@subsection Yield Processor
-
-@example
-sched_yield(), Function, Implemented
-@end example
-
-@subsection Get Scheduling Parameter Limits
-
-@example
-sched_get_priority_max(), Function, Implemented
-sched_get_priority_min(), Function, Implemented
-sched_get_priority_rr_get_interval(), Function, Implemented
-@end example
-
-@section Thread Scheduling
-
-@subsection Thread Scheduling Attributes
-
-@example
-PTHREAD_SCOPE_PROCESS, Constant, Implemented
-PTHREAD_SCOPE_SYSTEM, Constant, Implemented
-@end example
-
-@subsection Scheduling Contention Scope
-
-@subsection Scheduling Allocation Domain
-
-@subsection Scheduling Documentation
-
-@section Thread Scheduling Functions
-
-@subsection Thread Creation Scheduling Attributes
-
-@example
-pthread_attr_setscope(), Function, Implemented
-pthread_attr_getscope(), Function, Implemented
-pthread_attr_setinheritsched(), Function, Implemented
-pthread_attr_getinheritsched(), Function, Implemented
-pthread_attr_setschedpolicy(), Function, Implemented
-pthread_attr_getschedpolicy(), Function, Implemented
-pthread_attr_setschedparam(), Function, Implemented
-pthread_attr_getschedparam(), Function, Implemented
-PTHREAD_INHERIT_SCHED, Constant, Implemented
-PTHREAD_EXPLICIT_SCHED, Constant, Implemented
-@end example
-
-@subsection Dynamic Thread Scheduling Parameters Access
-
-@example
-pthread_setschedparam(), Function, Implemented
-pthread_getschedparam(), Function, Implemented
-@end example
-
-@section Synchronization Scheduling
-
-@subsection Mutex Initialization Scheduling Attributes
-
-@example
-pthread_mutexattr_setprotocol(), Function, Implemented
-pthread_mutexattr_getprotocol(), Function, Implemented
-pthread_mutexattr_setprioceiling(), Function, Implemented
-pthread_mutexattr_getprioceiling(), Function, Implemented
-PTHREAD_PRIO_NONE, Constant, Implemented
-PTHREAD_PRIO_INHERIT, Constant, Implemented
-PTHREAD_PRIO_PROTECT, Constant, Implemented
-@end example
-
-@subsection Change the Priority Ceiling of a Mutex
-
-@example
-pthread_mutex_setprioceiling(), Function, Implemented
-pthread_mutex_getprioceiling(), Function, Implemented
-@end example
-
diff --git a/doc/posix1003.1/ch14.t b/doc/posix1003.1/ch14.t
deleted file mode 100644
index 38616ca5ec..0000000000
--- a/doc/posix1003.1/ch14.t
+++ /dev/null
@@ -1,68 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Clocks and Timers
-
-@section Data Definitions for Clocks and Timers
-
-@subsection Time Value Specification Structures
-
-@example
-struct timespec, Type, Implemented
-struct itimerspec, Type, Implemented
-@end example
-
-@subsection Timer Event Notification Control Block
-
-@subsection Type Definitions
-
-@example
-clockid_t, Type, Implemented
-timerid_t, Type, Implemented
-@end example
-
-@subsection Timer Event Notification Manifest Constants
-
-@example
-CLOCK_REALTIME, Constant, Implemented
-TIMER_ABSTIME, Constant, Implemented
-@end example
-
-@section Clock and Timer Functions
-
-@subsection Clocks
-
-@example
-clock_settime(), Function, Partial Implementation
-clock_gettime(), Function, Partial Implementation
-clock_getres(), Function, Implemented
-@end example
-
-@subsection Create a Per-Process Timer
-
-@example
-timer_create(), Function, Implemented
-@end example
-
-@subsection Delete a Per-Process Timer
-
-@example
-timer_delete(), Function, Implemented
-@end example
-
-@subsection Per-Process Timers
-
-@example
-timer_settime(), Function, Implemented
-timer_gettime(), Function, Implemented
-timer_getoverrun(), Function, Implemented
-@end example
-
-@subsection High Resolution Sleep
-
-@example
-nanosleep(), Function, Implemented
-@end example
-
diff --git a/doc/posix1003.1/ch15.t b/doc/posix1003.1/ch15.t
deleted file mode 100644
index 2d1fb15040..0000000000
--- a/doc/posix1003.1/ch15.t
+++ /dev/null
@@ -1,69 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Message Passing
-
-@section Data Definitions for Message Queues
-
-@subsection Data Structures
-
-NOTE: Semaphores are implemented but only unnamed semaphores
-are currently tested.
-
-@example
-mqd_t, Type, Implemented
-struct mq_attr, Type, Implemented
-@end example
-
-@section Message Passing Functions
-
-@subsection Open a Message Queue
-
-@example
-mq_open(), Function, Implemented
-@end example
-
-@subsection Close a Message Queue
-
-@example
-mq_close(), Function, Implemented
-@end example
-
-@subsection Remove a Message Queue
-
-@example
-mq_unlink(), Function, Implemented
-@end example
-
-@subsection Send a Message to a Message Queue
-
-@example
-mq_send(), Function, Implemented
-@end example
-
-@subsection Receive a Message From a Message Queue
-
-@example
-mq_receive(), Function, Implemented
-@end example
-
-@subsection Notify Process That a Message is Available on a Queue
-
-@example
-mq_notify(), Function, Implemented
-@end example
-
-@subsection Set Message Queue Attributes
-
-@example
-mq_setattr(), Function, Implemented
-@end example
-
-@subsection Get Message Queue Attributes
-
-@example
-mq_getattr(), Function, Implemented
-@end example
-
diff --git a/doc/posix1003.1/ch16.t b/doc/posix1003.1/ch16.t
deleted file mode 100644
index 633bbb68d1..0000000000
--- a/doc/posix1003.1/ch16.t
+++ /dev/null
@@ -1,69 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Thread Management
-
-@section Threads
-
-@section Thread Functions
-
-@subsection Thread Creation Attributes
-
-@example
-pthread_attr_init(), Function, Implemented
-pthread_attr_destroy(), Function, Implemented
-pthread_attr_setstacksize(), Function, Implemented
-pthread_attr_getstacksize(), Function, Implemented
-pthread_attr_setstackaddr(), Function, Implemented
-pthread_attr_getstackaddr(), Function, Implemented
-pthread_attr_setdetachstate(), Function, Implemented
-pthread_attr_getdetachstate(), Function, Implemented
-PTHREAD_CREATE_JOINABLE, Constant, Implemented
-PTHREAD_CREATE_DETACHED, Constant, Implemented
-@end example
-
-@subsection Thread Creation
-
-@example
-pthread_create(), Function, Implemented
-@end example
-
-@subsection Wait for Thread Termination
-
-@example
-pthread_join(), Function, Implemented
-@end example
-
-@subsection Detaching a Thread
-
-@example
-pthread_detach(), Function, Implemented
-@end example
-
-@subsection Thread Termination
-
-@example
-pthread_exit(), Function, Implemented
-@end example
-
-@subsection Get Thread ID
-
-@example
-pthread_self(), Function, Implemented
-@end example
-
-@subsection Compare Thread IDs
-
-@example
-pthread_equal(), Function, Implemented
-@end example
-
-@subsection Dynamic Package Initialization
-
-@example
-pthread_once(), Function, Implemented
-PTHREAD_ONCE_INIT, Constant, Implemented
-@end example
-
diff --git a/doc/posix1003.1/ch17.t b/doc/posix1003.1/ch17.t
deleted file mode 100644
index a177d37bbf..0000000000
--- a/doc/posix1003.1/ch17.t
+++ /dev/null
@@ -1,28 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Thread-Specific Data
-
-@section Thread-Specific Data Functions
-
-@subsection Thread-Specific Data Key Creation
-
-@example
-pthread_key_create(), Function, Implemented
-@end example
-
-@subsection Thread-Specific Data Management
-
-@example
-pthread_key_setspecific(), Function, Implemented
-pthread_key_getspecific(), Function, Implemented
-@end example
-
-@subsection Thread-Specific Data Key Deletion
-
-@example
-pthread_key_delete(), Function, Implemented
-@end example
-
diff --git a/doc/posix1003.1/ch18.t b/doc/posix1003.1/ch18.t
deleted file mode 100644
index fce421dee9..0000000000
--- a/doc/posix1003.1/ch18.t
+++ /dev/null
@@ -1,63 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Thread Cancellation
-
-@section Thread Cancellation Overview
-
-@subsection Cancelability States
-
-@example
-PTHREAD_CANCEL_DISABLE, Constant, Implemented
-PTHREAD_CANCEL_ENABLE, Constant, Implemented
-PTHREAD_CANCEL_ASYNCHRONOUS, Constant, Implemented
-PTHREAD_CANCEL_DEFERRED, Constant, Implemented
-@end example
-
-@subsection Cancellation Points
-
-@subsection Thread Cancellation Cleanup Handlers
-
-@example
-PTHREAD_CANCELED, Constant, Unimplemented
-@end example
-
-@subsection Async-Cancel Safety
-
-@section Thread Cancellation Functions
-
-@subsection Canceling Execution of a Thread
-
-@example
-pthread_cancel(), Function, Implemented
-@end example
-
-@subsection Setting Cancelability State
-
-@example
-pthread_setcancelstate(), Function, Implemented
-pthread_setcanceltype(), Function, Implemented
-pthread_testcancel(), Function, Implemented
-@end example
-
-@subsection Establishing Cancellation Handlers
-
-@example
-pthread_cleanup_push(), Function, Implemented
-pthread_cleanup_pop(), Function, Implemented
-@end example
-
-@section Language-Independent Cancellation Functionality
-
-@subsection Requesting Cancellation
-
-@subsection Associating Cleanup Code With Scopes
-
-@subsection Controlling Cancellation Within Scopes
-
-@subsection Defined Cancellation Sequence
-
-@subsection List of Cancellation Points
-
diff --git a/doc/posix1003.1/compliance_list b/doc/posix1003.1/compliance_list
deleted file mode 100644
index 69b71dd688..0000000000
--- a/doc/posix1003.1/compliance_list
+++ /dev/null
@@ -1,368 +0,0 @@
-S_ISBLK(), Supported
-S_ISCHR(), Supported
-S_ISDIR(), Supported
-S_ISFIFO(), Supported
-S_ISREG(), Supported
-S_TYPEISMQ(), see note 3
-S_TYPEISSEM(), see note 3
-S_TYPEISSHM(), see note 3
-WEXITSTATUS(), see note 1
-WIFEXITED(), see note 1
-WIFSIGNALED(), see note 1
-WIFSTOPPED(), see note 1
-WSTOPSIG(), see note 1
-WTERMSIG(), see note 1
-_exit(), Supported
-abort(), Supported
-abs(), Supported
-access(), Supported
-acos(), Supported
-aio_cancel(), Supported
-aio_error(), Supported
-aio_fsync(), Supported
-aio_read(), Supported
-aio_return(), Supported
-aio_suspend(), Supported
-aio_write(), Supported
-alarm(), Supported
-asctime(), Supported
-asctime_r(), Supported
-asin(), Supported
-assert(), Supported
-atan(), Supported
-atan2(), Supported
-atof(), Supported
-atoi(), Supported
-atol(), Supported
-bsearch(), Supported
-calloc(), Supported
-ceil(), Supported
-cfgetispeed(), Supported
-cfgetospeed(), Supported
-cfsetispeed(), Supported
-cfsetospeed(), Supported
-chdir(), Supported
-chmod(), Supported
-chown(), Supported
-clearerr(), Supported
-clock_getres(), see note 2
-clock_gettime(), see note 2
-clock_settime(), see note 2
-close(), Supported
-closedir(), Supported
-cos(), Supported
-cosh(), Supported
-creat(), Supported
-ctermid(), see note 1
-ctime(), Supported
-ctime_r(), Supported
-dup(), Supported
-dup2(), Supported
-execl(), see note 1
-execle(), see note 1
-execlp(), see note 1
-execv(), see note 1
-execve(), see note 1
-execvp(), see note 1
-exit(), Supported
-exp(), Supported
-fabs(), Supported
-fchmod(), Supported
-fclose(), Supported
-fcntl(), Supported
-fdatasync(), Supported
-fdopen(), Supported
-feof(), Supported
-ferror(), Supported
-fflush(), Supported
-fgetc(), Supported
-fgets(), Supported
-fileno(), Supported
-flockfile(), see note 1
-floor(), Supported
-fmod(), Supported
-fopen(), Supported
-fork(), see note 1
-fpathconf(), Supported
-fprintf(), Supported
-fputc(), Supported
-fputs(), Supported
-fread(), Supported
-free(), Supported
-freopen(), Supported
-frexp(), Supported
-fscanf(), Supported
-fseek(), Supported
-fstat(), Supported
-fsync(), Supported
-ftell(), Supported
-ftruncate(), Supported
-ftrylockfile(), see note 1
-funlockfile(), see note 1
-fwrite(), Supported
-getc(), Supported
-getc_unlocked(), see note 1
-getchar(), Supported
-getchar_unlocked(), see note 1
-getcwd(), Supported
-getegid(), Supported
-getenv(), Supported
-geteuid(), Supported
-getgid(), Supported
-getgrgid(), Supported
-getgrgid_r(), Supported
-getgrnam_r(), Supported
-getgrname(), Supported
-getgroups(), Supported
-getlogin(), Supported
-getlogin_r(), Supported
-getpgrp(), Supported
-getpid(), Supported
-getppid(), Supported
-getpwnam(), Supported
-getpwnam_r(), Supported
-getpwuid(), Supported
-getpwuid_r(), Supported
-gets(), Supported
-getuid(), Supported
-gmtime(), Supported
-gmtime_r(), Supported
-isalnum(), Supported
-isalpha(), Supported
-isatty(), Supported
-iscntrl(), Supported
-isdigit(), Supported
-isgraph(), Supported
-islower(), Supported
-isprint(), Supported
-ispunct(), Supported
-isspace(), Supported
-isupper(), Supported
-isxdigit(), Supported
-kill(), Supported
-ldexp(), Supported
-link(), Supported
-lio_listio(), Supported
-localtime(), Supported
-localtime_r(), Supported
-log(), Supported
-log10(), Supported
-longjmp(), Supported
-lseek(), Supported
-malloc(), Supported
-mkdir(), Supported
-mkfifo(), see note 3
-mktime(), Supported
-mlock(), Not Supported
-mlockall(), Not Supported
-mmap(), Not Supported
-modf(), Supported
-mprotect(), Not Supported
-mq_close(), Supported
-mq_getattr(), Supported
-mq_notify(), Supported
-mq_open(), Supported
-mq_receive(), Supported
-mq_send(), Supported
-mq_setattr(), Supported
-mq_unlink(), Supported
-msync(), Not Supported
-munlock(), Not Supported
-munlockall(), Not Supported
-munmap(), Not Supported
-nanosleep(), Supported
-open(), Supported
-opendir(), Supported
-pathconf(), Supported
-pause(), Supported
-perror(), Supported
-pipe(), Supported
-pow(), Supported
-printf(), Supported
-pthread_atfork(), see note 1
-pthread_attr_destroy(), Supported
-pthread_attr_getdetachstate(), Supported
-pthread_attr_getinheritsched(), Supported
-pthread_attr_getschedparam(), Supported
-pthread_attr_getschedpolicy(), Supported
-pthread_attr_getscope(), Supported
-pthread_attr_getstackaddr(), Supported
-pthread_attr_getstacksize(), Supported
-pthread_attr_init(), Supported
-pthread_attr_setdetachstate(), Supported
-pthread_attr_setinheritsched(), Supported
-pthread_attr_setschedparam(), Supported
-pthread_attr_setschedpolicy(), Supported
-pthread_attr_setscope(), Supported
-pthread_attr_setstackaddr(), Supported
-pthread_attr_setstacksize(), Supported
-pthread_cancel(), Supported
-pthread_cleanup_pop(), Supported
-pthread_cleanup_push(), Supported
-pthread_cond_broadcast(), Supported
-pthread_cond_destroy(), Supported
-pthread_cond_init(), Supported
-pthread_cond_signal(), Supported
-pthread_cond_timedwait(), Supported
-pthread_cond_wait(), Supported
-pthread_condattr_destroy(), Supported
-pthread_condattr_getpshared(), Supported
-pthread_condattr_init(), Supported
-pthread_condattr_setpshared(), Supported
-pthread_create(), Supported
-pthread_detach(), Supported
-pthread_equal(), Supported
-pthread_exit(), Supported
-pthread_getschedparam(), Supported
-pthread_join(), Supported
-pthread_key_create(), Supported
-pthread_key_delete(), Supported
-pthread_key_getspecific(), Supported
-pthread_key_setspecific(), Supported
-pthread_kill(), Supported
-pthread_mutex_destroy(), Supported
-pthread_mutex_getprioceiling(), Supported
-pthread_mutex_init(), Supported
-pthread_mutex_lock(), Supported
-pthread_mutex_setprioceiling(), Supported
-pthread_mutex_trylock(), Supported
-pthread_mutex_unlock(), Supported
-pthread_mutexattr_destroy(), Supported
-pthread_mutexattr_getprioceiling(), Supported
-pthread_mutexattr_getprotocol(), Supported
-pthread_mutexattr_getpshared(), Supported
-pthread_mutexattr_init(), Supported
-pthread_mutexattr_setprioceiling(), Supported
-pthread_mutexattr_setprotocol(), Supported
-pthread_mutexattr_setpshared(), Supported
-pthread_once(), Supported
-pthread_self(), Supported
-pthread_setcancelstate(), Supported
-pthread_setcanceltype(), Supported
-pthread_setschedparam(), Supported
-pthread_sigmask(), Supported
-pthread_testcancel(), Supported
-putc(), Supported
-putc_unlocked(), see note 1
-putchar(), Supported
-putchar_unlocked(), see note 1
-puts(), Supported
-qsort(), Supported
-rand(), Supported
-rand_r(), Supported
-read(), Supported
-readdir(), Supported
-readdir_r(), Supported
-realloc(), Supported
-remove(), Supported
-rename(), see note 2
-rewind(), Supported
-rewinddir(), Supported
-rmdir(), Supported
-scanf(), Supported
-sched_get_priority_max(), Supported
-sched_get_priority_min(), Supported
-sched_get_priority_rr_get_interval(), Supported
-sched_getparam(), Supported
-sched_getscheduler(), Supported
-sched_setparam(), Supported
-sched_setscheduler(), Supported
-sched_yield(), Supported
-sem_close(), Supported
-sem_destroy(), Supported
-sem_getvalue(), Supported
-sem_init(), Supported
-sem_open(), Supported
-sem_post(), Supported
-sem_trywait(), Supported
-sem_unlink(), Supported
-sem_wait(), Supported
-setbuf(), Supported
-setgid(), Supported
-setjmp(), Supported
-setlocale(), Supported
-setpgid(), Supported
-setsid(), Supported
-setuid(), Supported
-shm_open(), Not Supported
-shm_unlink(), Not Supported
-sigaction(), Supported
-sigaddset(), Supported
-sigdelset(), Supported
-sigemptyset(), Supported
-sigfillset(), Supported
-sigismember(), Supported
-siglongjmp(), Supported
-sigpending(), Supported
-sigprocmask(), Supported
-sigqueue(), Supported
-sigsetjmp(), Supported
-sigsuspend(), Supported
-sigtimedwait(), Supported
-sigwait(), Supported
-sigwaitinfo(), Supported
-sin(), Supported
-sinh(), Supported
-sleep(), Supported
-sprintf(), Supported
-sqrt(), Supported
-srand(), Supported
-sscanf(), Supported
-stat(), Supported
-strcat(), Supported
-strchr(), Supported
-strcmp(), Supported
-strcpy(), Supported
-strcspn(), Supported
-strftime(), Supported
-strlen(), Supported
-strncat(), Supported
-strncmp(), Supported
-strncpy(), Supported
-strpbrk(), Supported
-strrchr(), Supported
-strspn(), Supported
-strstr(), Supported
-strtok(), Supported
-strtok_r(), Supported
-sysconf(), Not Supported
-tan(), Supported
-tanh(), Supported
-tcdrain(), Supported
-tcflow(), Not Supported
-tcflush(), Not Supported
-tcgetattr(), Supported
-tcgetprgrp(), see note 1
-tcsendbreak(), Not Supported
-tcsetattr(), Supported
-tcsetprgrp(), see note 1
-time(), Supported
-timer_create(), Supported
-timer_delete(), Supported
-timer_getoverrun(), Supported
-timer_gettime(), Supported
-timer_settime(), Supported
-times(), Supported
-tmpfile(), Supported
-tmpnam(), Supported
-tolower(), Supported
-toupper(), Supported
-ttyname(), Not Supported
-ttyname_r(), Not Supported
-tzset(), Not Supported
-umask(), Supported
-uname(), Supported
-ungetc(), Supported
-unlink(), Supported
-utime(), Supported
-wait(), see note 1
-waitpid(), see note 1
-write(), Supported
-
-Notes:
-
-1. This is not supported as it requires processes.
-
-2. Partial implementation.
-
-3. Coming soon.
diff --git a/doc/posix1003.1/posix1003_1.texi b/doc/posix1003.1/posix1003_1.texi
deleted file mode 100644
index 833e35546c..0000000000
--- a/doc/posix1003.1/posix1003_1.texi
+++ /dev/null
@@ -1,123 +0,0 @@
-\input texinfo @c -*-texinfo-*-
-@c %**start of header
-@setfilename posix1003_1.info
-@setcontentsaftertitlepage
-@syncodeindex vr fn
-@synindex ky cp
-@paragraphindent 0
-@c %**end of header
-
-@c
-@c COPYRIGHT (c) 1989-2013.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@c
-@c Master file for the POSIX 1003.1 Compliance Guide
-@c
-
-@include version.texi
-@include common/setup.texi
-@include common/rtems.texi
-
-@ifset use-ascii
-@dircategory RTEMS On-Line Manual
-@direntry
-* RTEMS POSIX 1003.1 Compliance Guide: (posix1003_1).
-@end direntry
-@end ifset
-
-@c
-@c Title Page Stuff
-@c
-
-@c
-@c I don't really like having a short title page. --joel
-@c
-@c @shorttitlepage RTEMS POSIX 1003.1 Compliance Guide
-
-@setchapternewpage odd
-@settitle RTEMS POSIX 1003.1 Compliance Guide
-@titlepage
-@finalout
-
-@title RTEMS POSIX 1003.1 Compliance Guide
-@subtitle Edition @value{EDITION}, for RTEMS @value{VERSION}
-@sp 1
-@subtitle @value{UPDATED}
-@author On-Line Applications Research Corporation
-@page
-@include common/cpright.texi
-@end titlepage
-
-@c This prevents a black box from being printed on "overflow" lines.
-@c The alternative is to rework a sentence to avoid this problem.
-
-@contents
-
-@ifnottex
-@node Top, Preface, (dir), (dir)
-@top RTEMS POSIX 1003.1 Compliance Guide
-
-@menu
-* Preface::
-* General::
-* Terminology and General Requirements::
-* Process Primitives::
-* Process Environment::
-* Files and Directories::
-* Input and Output Primitives::
-* Device- and Class-Specific Functions::
-* Language-Specific Services for the C Programming Language::
-* System Databases::
-* Data Interchange Format::
-* Synchronization::
-* Memory Management::
-* Execution Scheduling::
-* Clocks and Timers::
-* Message Passing::
-* Thread Management::
-* Thread-Specific Data::
-* Thread Cancellation::
-* Compliance Summary::
-* Command and Variable Index::
-* Concept Index::
-@end menu
-@end ifnottex
-
-@include preface.texi
-@include ch01.texi
-@include ch02.texi
-@include ch03.texi
-@include ch04.texi
-@include ch05.texi
-@include ch06.texi
-@include ch07.texi
-@include ch08.texi
-@include ch09.texi
-@include ch10.texi
-@include ch11.texi
-@include ch12.texi
-@include ch13.texi
-@include ch14.texi
-@include ch15.texi
-@include ch16.texi
-@include ch17.texi
-@include ch18.texi
-@include ch19.texi
-
-@node Command and Variable Index, Concept Index, Overall Summary, Top
-@unnumbered Command and Variable Index
-
-There are currently no Command and Variable Index entries.
-
-@c @printindex fn
-
-@node Concept Index, , Command and Variable Index, Top
-@unnumbered Concept Index
-
-There are currently no Concept Index entries.
-@c @printindex cp
-
-@bye
-
diff --git a/doc/posix1003.1/preface.texi b/doc/posix1003.1/preface.texi
deleted file mode 100644
index 74bb0d9133..0000000000
--- a/doc/posix1003.1/preface.texi
+++ /dev/null
@@ -1,26 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@ifnottex
-@node Preface, General, Top, Top
-@end ifnottex
-
-@unnumbered Preface
-
-This document lists the functions, constant, macros, feature flags,
-and types defined in the POSIX 1003.1 standard. Each section in
-this document corresponds to a section in the 1003.1 standard
-and the implementation status of the items required by the standard
-are listed.
-
-RTEMS supports a number of POSIX process, user, and group oriented
-routines in what is referred to as a "SUSP" (Single-User, Single
-Process) manner. RTEMS supports a single process, multithreaded
-POSIX 1003.1b environment. In a pure world, there would be
-no reason to even include routines like @code{getpid()} when there
-can only be one process. But providing routines like @code{getpid()}
-and making them work in a sensible fashion for an embedded environment
-while not returning ENOSYS (for not implemented) makes it significantly
-easier to port code from a UNIX environment without modifying it.
diff --git a/doc/posix1003.1/stamp-vti b/doc/posix1003.1/stamp-vti
deleted file mode 100644
index 5634951ec8..0000000000
--- a/doc/posix1003.1/stamp-vti
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 24 February 2013
-@set UPDATED-MONTH February 2013
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0
diff --git a/doc/posix1003.1/summarize b/doc/posix1003.1/summarize
deleted file mode 100755
index 4a67ea467f..0000000000
--- a/doc/posix1003.1/summarize
+++ /dev/null
@@ -1,200 +0,0 @@
-#! /bin/sh
-#
-# Generate the summary chapter
-#
-
-echo "@c"
-echo "@c DO NOT EDIT -- AUTOMATICALLY GENERATED!!!"
-echo "@c"
-echo
-echo "@chapter Compliance Summary"
-echo
-
-wc2()
-{
- pattern=$1
- shift
- grep "${pattern}" $* | wc -l
-}
-
-wc3()
-{
- pattern=$1
- filter=$2
- shift ; shift
- grep "${pattern}" $* | grep "${filter}" | wc -l
-}
-
-# adds the numbers passed on the command line
-addit()
-{
- sumx=0
- for x in $*
- do
- sumx=`expr $sumx + $x`
- done
- echo $sumx
-}
-
-summarize_chapter()
-{
- echo
- if [ $# -eq 1 ] ; then
- grep "^@chapter" $1 | \
- sed -e "s/^.chapter/@section/" \
- -e "s/$/ Chapter/"
- else
- echo "@section Overall Summary"
- fi
-
- echo
-
- # functions
-
- functions_total=`wc2 "()" $*`
- functions_implemented=` wc3 "()" "Implemented" $*`
- functions_unimplemented=` wc3 "()" "Unimplemented" $*`
- functions_unmplementable=`wc3 "()" "Unimplementable" $*`
- functions_partial=` wc3 "()" "Partial Implementation" $*`
- functions_dummy=` wc3 "()" "Dummy Implementation" $*`
- functions_untested=` wc3 "()" "Untested Implementation" $*`
-
- functions_sum=`addit ${functions_implemented} \
- ${functions_unimplemented} ${functions_unmplementable} \
- ${functions_partial} ${functions_dummy} \
- ${functions_untested}`
-
- # data types
-
- datatypes_total=`wc2 "Type," $*`
- datatypes_implemented=` wc3 "Type," "Implemented" $*`
- datatypes_unimplemented=` wc3 "Type," "Unimplemented" $*`
- datatypes_unmplementable=`wc3 "Type," "Unimplementable" $*`
- datatypes_partial=` wc3 "Type," "Partial Implementation" $*`
- datatypes_dummy=` wc3 "Type," "Dummy Implementation" $*`
- datatypes_untested=` wc3 "Type," "Untested Implementation" $*`
-
- datatypes_sum=`addit ${datatypes_implemented} \
- ${datatypes_unimplemented} ${datatypes_unmplementable} \
- ${datatypes_partial} ${datatypes_dummy} \
- ${datatypes_untested}`
-
- # feature flags
-
- features_total=`wc2 "Feature Flag," $*`
- features_implemented=` wc3 "Feature Flag," "Implemented" $*`
- features_unimplemented=` wc3 "Feature Flag," "Unimplemented" $*`
- features_unmplementable=`wc3 "Feature Flag," "Unimplementable" $*`
- features_partial=` wc3 "Feature Flag," "Partial Implementation" $*`
- features_dummy=` wc3 "Feature Flag," "Dummy Implementation" $*`
- features_untested=` wc3 "Feature Flag," "Untested Implementation" $*`
-
- features_sum=`addit ${features_implemented} \
- ${features_unimplemented} ${features_unmplementable} \
- ${features_partial} ${features_dummy} \
- ${features_untested}`
-
- # constants
-
- constants_total=`wc2 "Constant," $*`
- constants_implemented=` wc3 "Constant," "Implemented" $*`
- constants_unimplemented=` wc3 "Constant," "Unimplemented" $*`
- constants_unmplementable=`wc3 "Constant," "Unimplementable" $*`
- constants_partial=` wc3 "Constant," "Partial Implementation" $*`
- constants_dummy=` wc3 "Constant," "Dummy Implementation" $*`
- constants_untested=` wc3 "Constant," "Untested Implementation" $*`
-
- constants_sum=`addit ${constants_implemented} \
- ${constants_unimplemented} ${constants_unmplementable} \
- ${constants_partial} ${constants_dummy} \
- ${constants_untested}`
-
- # Now print the reports
-
- echo "@example"
- echo "Functions:"
- echo " Total Number : ${functions_total}"
- echo " Implemented : ${functions_implemented}"
- echo " Unimplemented : ${functions_unimplemented}"
- echo " Unimplementable : ${functions_unmplementable}"
- echo " Partial : ${functions_partial}"
- echo " Dummy : ${functions_dummy}"
- echo " Untested : ${functions_untested}"
- echo "@end example"
- echo
- if [ ${functions_sum} -ne ${functions_total} ] ; then
- echo "@sp 1"
- echo "@center @b{FUNCTION COUNTS DO NOT ADD UP!!}"
- echo "@sp 1"
- fi
-
- echo "@example"
- echo "Data Types:"
- echo " Total Number : ${datatypes_total}"
- echo " Implemented : ${datatypes_implemented}"
- echo " Unimplemented : ${datatypes_unimplemented}"
- echo " Unimplementable : ${datatypes_unmplementable}"
- echo " Partial : ${datatypes_partial}"
- echo " Dummy : ${datatypes_dummy}"
- echo " Untested : ${datatypes_untested}"
- echo "@end example"
- echo
- if [ ${datatypes_sum} -ne ${datatypes_total} ] ; then
- echo "@sp 1"
- echo "@center @b{DATA TYPE COUNTS DO NOT ADD UP!!}"
- echo "@sp 1"
- fi
-
- echo "@example"
- echo "Feature Flags:"
- echo " Total Number : ${features_total}"
- echo " Implemented : ${features_implemented}"
- echo " Unimplemented : ${features_unimplemented}"
- echo " Unimplementable : ${features_unmplementable}"
- echo " Partial : ${features_partial}"
- echo " Dummy : ${features_dummy}"
- echo " Untested : ${features_untested}"
- echo "@end example"
- echo
- if [ ${features_sum} -ne ${features_total} ] ; then
- echo "@sp 1"
- echo "@center @b{FEATURE FLAG COUNTS DO NOT ADD UP!!}"
- echo "@sp 1"
- fi
-
- echo "@example"
- echo "Constants:"
- echo " Total Number : ${constants_total}"
- echo " Implemented : ${constants_implemented}"
- echo " Unimplemented : ${constants_unimplemented}"
- echo " Unimplementable : ${constants_unmplementable}"
- echo " Partial : ${constants_partial}"
- echo " Dummy : ${constants_dummy}"
- echo " Untested : ${constants_untested}"
- echo "@end example"
- echo
- if [ ${constants_sum} -ne ${constants_total} ] ; then
- echo "@sp 1"
- echo "@center @b{CONSTANT COUNTS DO NOT ADD UP!!}"
- echo "@sp 1"
- fi
-}
-
-if test $# -lt 1; then
- echo "Missing arguments"
- exit 1
-fi
-chapters="$*"
-
-# go through the chapters one at a time
-for chapter in ${chapters}
-do
- summarize_chapter $chapter
- echo "@page"
-done
-
-# now generate the overall summary
-summarize_chapter ${chapters}
-
-
-
diff --git a/doc/posix1003.1/version.texi b/doc/posix1003.1/version.texi
deleted file mode 100644
index c0e4bbb7b6..0000000000
--- a/doc/posix1003.1/version.texi
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 17 July 2015
-@set UPDATED-MONTH July 2015
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0
diff --git a/doc/posix_users/Makefile.am b/doc/posix_users/Makefile.am
deleted file mode 100644
index e8df5bac18..0000000000
--- a/doc/posix_users/Makefile.am
+++ /dev/null
@@ -1,139 +0,0 @@
-#
-# COPYRIGHT (c) 1988-2002.
-# On-Line Applications Research Corporation (OAR).
-# All rights reserved.
-
-PROJECT = posix_users
-
-include $(top_srcdir)/project.am
-include $(top_srcdir)/main.am
-
-GENERATED_FILES = cancel.texi clock.texi cond.texi cspecific.texi \
- device.texi files.texi io.texi key.texi memorymgmt.texi message.texi \
- mutex.texi procenv.texi process.texi sched.texi semaphores.texi \
- signal.texi status.texi systemdb.texi thread.texi timer.texi libc.texi \
- libm.texi
-
-COMMON_FILES += $(top_srcdir)/common/cpright.texi
-
-FILES = preface.texi
-info_TEXINFOS = posix_users.texi
-posix_users_TEXINFOS = $(FILES) $(COMMON_FILES) $(GENERATED_FILES)
-
-process.texi: process.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-procenv.texi: procenv.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-files.texi: files.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-thread.texi: thread.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-signal.texi: signal.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-mutex.texi: mutex.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-cond.texi: cond.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-key.texi: key.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-clock.texi: clock.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-timer.texi: timer.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-sched.texi: sched.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-io.texi: io.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-device.texi: device.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-cspecific.texi: cspecific.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-semaphores.texi: semaphores.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-memorymgmt.texi: memorymgmt.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-message.texi: message.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-cancel.texi: cancel.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-systemdb.texi: systemdb.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-status.texi: status.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-libc.texi: libc.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-libm.texi: libm.t
- $(BMENU2) -p "" \
- -u "Top" \
- -n "" < $< > $@
-
-noinst_SCRIPTS = gen_size_report
-EXTRA_DIST = cancel.t clock.t cond.t cspecific.t device.t files.t io.t key.t \
- libc.t libm.t memorymgmt.t message.t mutex.t procenv.t process.t sched.t \
- semaphores.t signal.t status.t systemdb.t thread.t timer.t \
- gen_size_report
-
-CLEANFILES += posix_users.info posix_users.info-? posix_users.info-??
diff --git a/doc/posix_users/cancel.t b/doc/posix_users/cancel.t
deleted file mode 100644
index 09235c2326..0000000000
--- a/doc/posix_users/cancel.t
+++ /dev/null
@@ -1,236 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Thread Cancellation Manager
-
-@section Introduction
-
-The
-thread cancellation manager is ...
-
-The directives provided by the thread cancellation manager are:
-
-@itemize @bullet
-@item @code{pthread_cancel} - Cancel Execution of a Thread
-@item @code{pthread_setcancelstate} - Set Cancelability State
-@item @code{pthread_setcanceltype} - Set Cancelability Type
-@item @code{pthread_testcancel} - Create Cancellation Point
-@item @code{pthread_cleanup_push} - Establish Cancellation Handler
-@item @code{pthread_cleanup_pop} - Remove Cancellation Handler
-@end itemize
-
-@section Background
-
-There is currently no text in this section.
-
-@section Operations
-
-There is currently no text in this section.
-
-@section Directives
-
-This section details the thread cancellation manager's directives.
-A subsection is dedicated to each of this manager's directives
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-@c
-@c
-@c
-@page
-@subsection pthread_cancel - Cancel Execution of a Thread
-
-@findex pthread_cancel
-@cindex cancel execution of a thread
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int pthread_cancel(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection pthread_setcancelstate - Set Cancelability State
-
-@findex pthread_setcancelstate
-@cindex set cancelability state
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int pthread_setcancelstate(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection pthread_setcanceltype - Set Cancelability Type
-
-@findex pthread_setcanceltype
-@cindex set cancelability type
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int pthread_setcanceltype(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection pthread_testcancel - Create Cancellation Point
-
-@findex pthread_testcancel
-@cindex create cancellation point
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int pthread_testcancel(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection pthread_cleanup_push - Establish Cancellation Handler
-
-@findex pthread_cleanup_push
-@cindex establish cancellation handler
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int pthread_cleanup_push(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection pthread_cleanup_pop - Remove Cancellation Handler
-
-@findex pthread_cleanup_pop
-@cindex remove cancellation handler
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int pthread_cleanup_push(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
diff --git a/doc/posix_users/clock.t b/doc/posix_users/clock.t
deleted file mode 100644
index 9b52c2ce04..0000000000
--- a/doc/posix_users/clock.t
+++ /dev/null
@@ -1,366 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Clock Manager
-
-@section Introduction
-
-The clock manager provides services two primary classes
-of services. The first focuses on obtaining and setting
-the current date and time. The other category of services
-focus on allowing a thread to delay for a specific length
-of time.
-
-The directives provided by the clock manager are:
-
-@itemize @bullet
-@item @code{clock_gettime} - Obtain Time of Day
-@item @code{clock_settime} - Set Time of Day
-@item @code{clock_getres} - Get Clock Resolution
-@item @code{sleep} - Delay Process Execution
-@item @code{usleep} - Delay Process Execution in Microseconds
-@item @code{nanosleep} - Delay with High Resolution
-@item @code{gettimeofday} - Get the Time of Day
-@item @code{time} - Get time in seconds
-@end itemize
-
-@section Background
-
-There is currently no text in this section.
-
-@section Operations
-
-There is currently no text in this section.
-
-@section Directives
-
-This section details the clock manager's directives.
-A subsection is dedicated to each of this manager's directives
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-@subsection clock_gettime - Obtain Time of Day
-
-@findex clock_gettime
-@cindex obtain time of day
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <time.h>
-
-int clock_gettime(
- clockid_t clock_id,
- struct timespec *tp
-);
-@end example
-
-@subheading STATUS CODES:
-
-On error, this routine returns -1 and sets errno to one of the following:
-
-@table @b
-@item EINVAL
-The tp pointer parameter is invalid.
-
-@item EINVAL
-The clock_id specified is invalid.
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection clock_settime - Set Time of Day
-
-@findex clock_settime
-@cindex set time of day
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <time.h>
-
-int clock_settime(
- clockid_t clock_id,
- const struct timespec *tp
-);
-@end example
-
-@subheading STATUS CODES:
-
-On error, this routine returns -1 and sets errno to one of the following:
-
-@table @b
-@item EINVAL
-The tp pointer parameter is invalid.
-
-@item EINVAL
-The clock_id specified is invalid.
-
-@item EINVAL
-The contents of the tp structure are invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection clock_getres - Get Clock Resolution
-
-@findex clock_getres
-@cindex get clock resolution
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <time.h>
-
-int clock_getres(
- clockid_t clock_id,
- struct timespec *res
-);
-@end example
-
-@subheading STATUS CODES:
-
-On error, this routine returns -1 and sets errno to one of the following:
-
-@table @b
-@item EINVAL
-The res pointer parameter is invalid.
-
-@item EINVAL
-The clock_id specified is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-If res is NULL, then the resolution is not returned.
-
-@c
-@c
-@c
-@page
-@subsection sleep - Delay Process Execution
-
-@findex sleep
-@cindex delay process execution
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <unistd.h>
-
-unsigned int sleep(
- unsigned int seconds
-);
-@end example
-
-@subheading STATUS CODES:
-
-This routine returns the number of unslept seconds.
-
-@subheading DESCRIPTION:
-
-The @code{sleep()} function delays the calling thread by the specified
-number of @code{seconds}.
-
-@subheading NOTES:
-
-This call is interruptible by a signal.
-
-@c
-@c
-@c
-@page
-@subsection usleep - Delay Process Execution in Microseconds
-
-@findex usleep
-@cindex delay process execution
-@cindex delay process execution
-@cindex usecs delay process execution
-@cindex microsecond delay process execution
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <time.h>
-
-useconds_t usleep(
- useconds_t useconds
-);
-@end example
-
-@subheading STATUS CODES:
-
-This routine returns the number of unslept seconds.
-
-@subheading DESCRIPTION:
-
-The @code{sleep()} function delays the calling thread by the specified
-number of @code{seconds}.
-
-The @code{usleep()} function suspends the calling thread from execution
-until either the number of microseconds specified by the
-@code{useconds} argument has elapsed or a signal is delivered to the
-calling thread and its action is to invoke a signal-catching function
-or to terminate the process.
-
-Because of other activity, or because of the time spent in
-processing the call, the actual length of time the thread is
-blocked may be longer than
-the amount of time specified.
-
-@subheading NOTES:
-
-This call is interruptible by a signal.
-
-The Single UNIX Specification allows this service to be implemented using
-the same timer as that used by the @code{alarm()} service. This is
-@b{NOT} the case for @b{RTEMS} and this call has no interaction with
-the @code{SIGALRM} signal.
-
-@c
-@c
-@c
-@page
-@subsection nanosleep - Delay with High Resolution
-
-@findex nanosleep
-@cindex delay with high resolution
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <time.h>
-
-int nanosleep(
- const struct timespec *rqtp,
- struct timespec *rmtp
-);
-@end example
-
-@subheading STATUS CODES:
-
-On error, this routine returns -1 and sets errno to one of the following:
-
-@table @b
-@item EINTR
-The routine was interrupted by a signal.
-
-@item EAGAIN
-The requested sleep period specified negative seconds or nanoseconds.
-
-@item EINVAL
-The requested sleep period specified an invalid number for the nanoseconds
-field.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-This call is interruptible by a signal.
-
-@c
-@c
-@c
-@page
-@subsection gettimeofday - Get the Time of Day
-
-@findex gettimeofday
-@cindex get the time of day
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <sys/time.h>
-#include <unistd.h>
-
-int gettimeofday(
- struct timeval *tp,
- struct timezone *tzp
-);
-@end example
-
-@subheading STATUS CODES:
-
-On error, this routine returns -1 and sets @code{errno} as appropriate.
-
-@table @b
-@item EPERM
-@code{settimeofdat} is called by someone other than the superuser.
-
-@item EINVAL
-Timezone (or something else) is invalid.
-
-@item EFAULT
-One of @code{tv} or @code{tz} pointed outside your accessible address
-space
-
-@end table
-
-@subheading DESCRIPTION:
-
-This routine returns the current time of day in the @code{tp} structure.
-
-@subheading NOTES:
-
-Currently, the timezone information is not supported. The @code{tzp}
-argument is ignored.
-
-@c
-@c
-@c
-@page
-@subsection time - Get time in seconds
-
-@findex time
-@cindex get time in seconds
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <time.h>
-
-int time(
- time_t *tloc
-);
-@end example
-
-@subheading STATUS CODES:
-
-This routine returns the number of seconds since the Epoch.
-
-@subheading DESCRIPTION:
-
-@code{time} returns the time since 00:00:00 GMT, January 1, 1970,
-measured in seconds
-
-If @code{tloc} in non null, the return value is also stored in the
-memory pointed to by @code{t}.
-
-@subheading NOTES:
-
-NONE
-
diff --git a/doc/posix_users/cond.t b/doc/posix_users/cond.t
deleted file mode 100644
index c95cc07650..0000000000
--- a/doc/posix_users/cond.t
+++ /dev/null
@@ -1,380 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Condition Variable Manager
-
-@section Introduction
-
-The condition variable manager ...
-
-The directives provided by the condition variable manager are:
-
-@itemize @bullet
-@item @code{pthread_condattr_init} - Initialize a Condition Variable Attribute Set
-@item @code{pthread_condattr_destroy} - Destroy a Condition Variable Attribute Set
-@item @code{pthread_condattr_setpshared} - Set Process Shared Attribute
-@item @code{pthread_condattr_getpshared} - Get Process Shared Attribute
-@item @code{pthread_cond_init} - Initialize a Condition Variable
-@item @code{pthread_cond_destroy} - Destroy a Condition Variable
-@item @code{pthread_cond_signal} - Signal a Condition Variable
-@item @code{pthread_cond_broadcast} - Broadcast a Condition Variable
-@item @code{pthread_cond_wait} - Wait on a Condition Variable
-@item @code{pthread_cond_timedwait} - With with Timeout a Condition Variable
-@end itemize
-
-@section Background
-
-There is currently no text in this section.
-
-@section Operations
-
-There is currently no text in this section.
-
-@section Directives
-
-This section details the condition variable manager's directives.
-A subsection is dedicated to each of this manager's directives
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-@c
-@c
-@c
-@page
-@subsection pthread_condattr_init - Initialize a Condition Variable Attribute Set
-
-@findex pthread_condattr_init
-@cindex initialize a condition variable attribute set
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_condattr_init(
- pthread_condattr_t *attr
-);
-@end example
-
-@subheading STATUS CODES:
-@table @b
-@item ENOMEM
-Insufficient memory is available to initialize the condition variable
-attributes object.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection pthread_condattr_destroy - Destroy a Condition Variable Attribute Set
-
-@findex pthread_condattr_destroy
-@cindex destroy a condition variable attribute set
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_condattr_destroy(
- pthread_condattr_t *attr
-);
-@end example
-
-@subheading STATUS CODES:
-@table @b
-@item EINVAL
-The attribute object specified is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection pthread_condattr_setpshared - Set Process Shared Attribute
-
-@findex pthread_condattr_setpshared
-@cindex set process shared attribute
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_condattr_setpshared(
- pthread_condattr_t *attr,
- int pshared
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-Invalid argument passed.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection pthread_condattr_getpshared - Get Process Shared Attribute
-
-@findex pthread_condattr_getpshared
-@cindex get process shared attribute
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_condattr_getpshared(
- const pthread_condattr_t *attr,
- int *pshared
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-Invalid argument passed.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-
-@c
-@c
-@c
-@page
-@subsection pthread_cond_init - Initialize a Condition Variable
-
-@findex pthread_cond_init
-@cindex initialize a condition variable
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_cond_init(
- pthread_cond_t *cond,
- const pthread_condattr_t *attr
-);
-@end example
-
-@subheading STATUS CODES:
-@table @b
-@item EAGAIN
-The system lacked a resource other than memory necessary to create the
-initialize the condition variable object.
-
-@item ENOMEM
-Insufficient memory is available to initialize the condition variable object.
-
-@item EBUSY
-The specified condition variable has already been initialized.
-
-@item EINVAL
-The specified attribute value is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection pthread_cond_destroy - Destroy a Condition Variable
-
-@findex pthread_cond_destroy
-@cindex destroy a condition variable
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_cond_destroy(
- pthread_cond_t *cond
-);
-@end example
-
-@subheading STATUS CODES:
-@table @b
-@item EINVAL
-The specified condition variable is invalid.
-
-@item EBUSY
-The specified condition variable is currently in use.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection pthread_cond_signal - Signal a Condition Variable
-
-@findex pthread_cond_signal
-@cindex signal a condition variable
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_cond_signal(
- pthread_cond_t *cond
-);
-@end example
-
-@subheading STATUS CODES:
-@table @b
-@item EINVAL
-The specified condition variable is not valid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-This routine should not be invoked from a handler from an asynchronous signal
-handler or an interrupt service routine.
-
-@c
-@c
-@c
-@page
-@subsection pthread_cond_broadcast - Broadcast a Condition Variable
-
-@findex pthread_cond_broadcast
-@cindex broadcast a condition variable
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_cond_broadcast(
- pthread_cond_t *cond
-);
-@end example
-
-@subheading STATUS CODES:
-@table @b
-@item EINVAL
-The specified condition variable is not valid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-This routine should not be invoked from a handler from an asynchronous signal
-handler or an interrupt service routine.
-
-@c
-@c
-@c
-@page
-@subsection pthread_cond_wait - Wait on a Condition Variable
-
-@findex pthread_cond_wait
-@cindex wait on a condition variable
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_cond_wait(
- pthread_cond_t *cond,
- pthread_mutex_t *mutex
-);
-@end example
-
-@subheading STATUS CODES:
-@table @b
-@item EINVAL
-The specified condition variable or mutex is not initialized OR different
-mutexes were specified for concurrent pthread_cond_wait() and
-pthread_cond_timedwait() operations on the same condition variable OR
-the mutex was not owned by the current thread at the time of the call.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection pthread_cond_timedwait - Wait with Timeout a Condition Variable
-
-@findex pthread_cond_timedwait
-@cindex wait with timeout a condition variable
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_cond_timedwait(
- pthread_cond_t *cond,
- pthread_mutex_t *mutex,
- const struct timespec *abstime
-);
-@end example
-
-@subheading STATUS CODES:
-@table @b
-@item EINVAL
-The specified condition variable or mutex is not initialized OR different
-mutexes were specified for concurrent pthread_cond_wait() and
-pthread_cond_timedwait() operations on the same condition variable OR
-the mutex was not owned by the current thread at the time of the call.
-
-@item ETIMEDOUT
-The specified time has elapsed without the condition variable being
-satisfied.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
diff --git a/doc/posix_users/cspecific.t b/doc/posix_users/cspecific.t
deleted file mode 100644
index 8b82bd13cc..0000000000
--- a/doc/posix_users/cspecific.t
+++ /dev/null
@@ -1,746 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Language-Specific Services for the C Programming Language Manager
-
-@section Introduction
-
-The
-language-specific services for the C programming language manager is ...
-
-The directives provided by the language-specific services for the C programming language manager are:
-
-@itemize @bullet
-@item @code{setlocale} - Set the Current Locale
-@item @code{fileno} - Obtain File Descriptor Number for this File
-@item @code{fdopen} - Associate Stream with File Descriptor
-@item @code{flockfile} - Acquire Ownership of File Stream
-@item @code{ftrylockfile} - Poll to Acquire Ownership of File Stream
-@item @code{funlockfile} - Release Ownership of File Stream
-@item @code{getc_unlocked} - Get Character without Locking
-@item @code{getchar_unlocked} - Get Character from stdin without Locking
-@item @code{putc_unlocked} - Put Character without Locking
-@item @code{putchar_unlocked} - Put Character to stdin without Locking
-@item @code{setjmp} - Save Context for Non-Local Goto
-@item @code{longjmp} - Non-Local Jump to a Saved Context
-@item @code{sigsetjmp} - Save Context with Signal Status for Non-Local Goto
-@item @code{siglongjmp} - Non-Local Jump with Signal Status to a Saved Context
-@item @code{tzset} - Initialize Time Conversion Information
-@item @code{strtok_r} - Reentrant Extract Token from String
-@item @code{asctime_r} - Reentrant struct tm to ASCII Time Conversion
-@item @code{ctime_r} - Reentrant time_t to ASCII Time Conversion
-@item @code{gmtime_r} - Reentrant UTC Time Conversion
-@item @code{localtime_r} - Reentrant Local Time Conversion
-@item @code{rand_r} - Reentrant Random Number Generation
-@end itemize
-
-@section Background
-
-There is currently no text in this section.
-
-@section Operations
-
-There is currently no text in this section.
-
-@section Directives
-
-This section details the language-specific services for the C programming language manager's directives.
-A subsection is dedicated to each of this manager's directives
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-@c
-@c
-@c
-@page
-@subsection setlocale - Set the Current Locale
-
-@findex setlocale
-@cindex set the current locale
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int setlocale(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection fileno - Obtain File Descriptor Number for this File
-
-@findex fileno
-@cindex obtain file descriptor number for this file
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int fileno(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection fdopen - Associate Stream with File Descriptor
-
-@findex fdopen
-@cindex associate stream with file descriptor
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int fdopen(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection flockfile - Acquire Ownership of File Stream
-
-@findex flockfile
-@cindex acquire ownership of file stream
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int flockfile(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection ftrylockfile - Poll to Acquire Ownership of File Stream
-
-@findex ftrylockfile
-@cindex poll to acquire ownership of file stream
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int ftrylockfile(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection funlockfile - Release Ownership of File Stream
-
-@findex funlockfile
-@cindex release ownership of file stream
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int funlockfile(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection getc_unlocked - Get Character without Locking
-
-@findex getc_unlocked
-@cindex get character without locking
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int getc_unlocked(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection getchar_unlocked - Get Character from stdin without Locking
-
-@findex getchar_unlocked
-@cindex get character from stdin without locking
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int getchar_unlocked(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection putc_unlocked - Put Character without Locking
-
-@findex putc_unlocked
-@cindex put character without locking
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int putc_unlocked(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection putchar_unlocked - Put Character to stdin without Locking
-
-@findex putchar_unlocked
-@cindex put character to stdin without locking
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int putchar_unlocked(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection setjmp - Save Context for Non-Local Goto
-
-@findex setjmp
-@cindex save context for non
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int setjmp(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection longjmp - Non-Local Jump to a Saved Context
-
-@findex longjmp
-@cindex non
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int longjmp(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection sigsetjmp - Save Context with Signal Status for Non-Local Goto
-
-@findex sigsetjmp
-@cindex save context with signal status for non
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int sigsetjmp(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection siglongjmp - Non-Local Jump with Signal Status to a Saved Context
-
-@findex siglongjmp
-@cindex non
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int siglongjmp(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection tzset - Initialize Time Conversion Information
-
-@findex tzset
-@cindex initialize time conversion information
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int tzset(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection strtok_r - Reentrant Extract Token from String
-
-@findex strtok_r
-@cindex reentrant extract token from string
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int strtok_r(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection asctime_r - Reentrant struct tm to ASCII Time Conversion
-
-@findex asctime_r
-@cindex reentrant struct tm to ascii time conversion
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int asctime_r(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection ctime_r - Reentrant time_t to ASCII Time Conversion
-
-@findex ctime_r
-@cindex reentrant time_t to ascii time conversion
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int ctime_r(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection gmtime_r - Reentrant UTC Time Conversion
-
-@findex gmtime_r
-@cindex reentrant utc time conversion
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int gmtime_r(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection localtime_r - Reentrant Local Time Conversion
-
-@findex localtime_r
-@cindex reentrant local time conversion
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int localtime_r(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection rand_r - Reentrant Random Number Generation
-
-@findex rand_r
-@cindex reentrant random number generation
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int rand_r(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
diff --git a/doc/posix_users/device.t b/doc/posix_users/device.t
deleted file mode 100644
index 32773e57bf..0000000000
--- a/doc/posix_users/device.t
+++ /dev/null
@@ -1,537 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Device- and Class- Specific Functions Manager
-
-@section Introduction
-
-The device- and class- specific functions manager is ...
-
-The directives provided by the device- and class- specific functions
-manager are:
-
-@itemize @bullet
-@item @code{cfgetispeed} - Reads terminal input baud rate
-@item @code{cfgetospeed} - Reads terminal output baud rate
-@item @code{cfsetispeed} - Sets terminal input baud rate
-@item @code{cfsetospeed} - Set terminal output baud rate
-@item @code{tcgetattr} - Gets terminal attributes
-@item @code{tcsetattr} - Set terminal attributes
-@item @code{tcsendbreak} - Sends a break to a terminal
-@item @code{tcdrain} - Waits for all output to be transmitted to the terminal
-@item @code{tcflush} - Discards terminal data
-@item @code{tcflow} - Suspends/restarts terminal output
-@item @code{tcgetpgrp} - Gets foreground process group ID
-@item @code{tcsetpgrp} - Sets foreground process group ID
-@end itemize
-
-@section Background
-
-There is currently no text in this section.
-
-@section Operations
-
-There is currently no text in this section.
-
-@section Directives
-
-This section details the device- and class- specific functions manager's
-directives. A subsection is dedicated to each of this manager's directives
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-@c
-@c
-@c
-@page
-@subsection cfgetispeed - Reads terminal input baud rate
-
-@findex cfgetispeed
-@cindex reads terminal input baud rate
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <termios.h>
-
-int cfgetispeed(
- const struct termios *p
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-The @code{cfgetispeed()} function returns a code for baud rate.
-
-@subheading DESCRIPTION:
-
-The @code{cfsetispeed()} function stores a code for the terminal speed
-stored in a struct termios. The codes are defined in @code{<termios.h>}
-by the macros BO, B50, B75, B110, B134, B150, B200, B300, B600, B1200,
-B1800, B2400, B4800, B9600, B19200, and B38400.
-
-The @code{cfsetispeed()} function does not do anything to the hardware.
-It merely stores a value for use by @code{tcsetattr()}.
-
-@subheading NOTES:
-
-Baud rates are defined by symbols, such as B110, B1200, B2400. The actual
-number returned for any given speed may change from system to system.
-
-@c
-@c
-@c
-@page
-@subsection cfgetospeed - Reads terminal output baud rate
-
-@findex cfgetospeed
-@cindex reads terminal output baud rate
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <termios.h>
-
-int cfgetospeed(
- const struct termios *p
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-The @code{cfgetospeed()} function returns the termios code for the baud rate.
-
-@subheading DESCRIPTION:
-
-The @code{cfgetospeed()} function returns a code for the terminal speed
-stored in a @code{struct termios}. The codes are defined in @code{<termios.h>}
-by the macros BO, B50, B75, B110, B134, B150, B200, B300, B600, B1200, B1800,
-B2400, B4800, B9600, B19200, and B38400.
-
-The @code{cfgetospeed()} function does not do anything to the hardware.
-It merely returns the value stored by a previous call to @code{tcgetattr()}.
-
-@subheading NOTES:
-
-Baud rates are defined by symbols, such as B110, B1200, B2400. The actual
-number returned for any given speed may change from system to system.
-
-@c
-@c
-@c
-@page
-@subsection cfsetispeed - Sets terminal input baud rate
-
-@findex cfsetispeed
-@cindex sets terminal input baud rate
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <termios.h>
-
-int cfsetispeed(
- struct termios *p,
- speed_t speed
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-The @code{cfsetispeed()} function returns a zero when successful and
-returns -1 when an error occurs.
-
-@subheading DESCRIPTION:
-
-The @code{cfsetispeed()} function stores a code for the terminal speed
-stored in a struct termios. The codes are defined in @code{<termios.h>}
-by the macros B0, B50, B75, B110, B134, B150, B200, B300, B600, B1200,
-B1800, B2400, B4800, B9600, B19200, and B38400.
-
-@subheading NOTES:
-
-This function merely stores a value in the @code{termios} structure. It
-does not change the terminal speed until a @code{tcsetattr()} is done.
-It does not detect impossible terminal speeds.
-
-@c
-@c
-@c
-@page
-@subsection cfsetospeed - Sets terminal output baud rate
-
-@findex cfsetospeed
-@cindex sets terminal output baud rate
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <termios.h>
-
-int cfsetospeed(
- struct termios *p,
- speed_t speed
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-The @code{cfsetospeed()} function returns a zero when successful and
-returns -1 when an error occurs.
-
-
-@subheading DESCRIPTION:
-
-The @code{cfsetospeed()} function stores a code for the terminal speed stored
-in a struct @code{termios}. The codes are defiined in @code{<termios.h>} by the
-macros B0, B50, B75, B110, B134, B150, B200, B300, B600, B1200, B1800, B2400,
-B4800, B9600, B19200, and B38400.
-
-The @code{cfsetospeed()} function does not do anything to the hardware. It
-merely stores a value for use by @code{tcsetattr()}.
-
-@subheading NOTES:
-
-This function merely stores a value in the @code{termios} structure.
-It does not change the terminal speed until a @code{tcsetattr()} is done.
-It does not detect impossible terminal speeds.
-
-@c
-@c
-@c
-@page
-@subsection tcgetattr - Gets terminal attributes
-
-@findex tcgetattr
-@cindex gets terminal attributes
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <termios.h>
-#include <unistd.h>
-
-int tcgetattr(
- int fildes,
- struct termios *p
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EBADF
-Invalid file descriptor
-
-@item ENOOTY
-Terminal control function attempted for a file that is not a terminal.
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{tcgetattr()} gets the parameters associated with the terminal
-referred to by @code{fildes} and stores them into the @code{termios()}
-structure pointed to by @code{termios_p}.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection tcsetattr - Set terminal attributes
-
-@findex tcsetattr
-@cindex set terminal attributes
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <termios.h>
-#include <unistd.h>
-
-int tcsetattr(
- int fildes,
- int options,
- const struct termios *tp
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection tcsendbreak - Sends a break to a terminal
-
-@findex tcsendbreak
-@cindex sends a break to a terminal
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int tcsendbreak(
- int fd
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-This routine is not currently supported by RTEMS but could be
-in a future version.
-
-@c
-@c
-@c
-@page
-@subsection tcdrain - Waits for all output to be transmitted to the terminal.
-
-@findex tcdrain
-@cindex waits for all output to be transmitted to the terminal.
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <termios.h>
-#include <unistd.h>
-
-int tcdrain(
- int fildes
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EBADF
-Invalid file descriptor
-
-@item EINTR
-Function was interrupted by a signal
-
-@item ENOTTY
-Terminal control function attempted for a file that is not a terminal.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{tcdrain()} function waits until all output written to
-@code{fildes} has been transmitted.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection tcflush - Discards terminal data
-
-@findex tcflush
-@cindex discards terminal data
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int tcflush(
- int fd
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-This routine is not currently supported by RTEMS but could be
-in a future version.
-
-@c
-@c
-@c
-@page
-@subsection tcflow - Suspends/restarts terminal output.
-
-@findex tcflow
-@cindex suspends/restarts terminal output.
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int tcflow(
- int fd
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-This routine is not currently supported by RTEMS but could be
-in a future version.
-
-@c
-@c
-@c
-@page
-@subsection tcgetpgrp - Gets foreground process group ID
-
-@findex tcgetpgrp
-@cindex gets foreground process group id
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int tcgetpgrp(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-This routine is not currently supported by RTEMS but could be
-in a future version.
-
-@c
-@c
-@c
-@page
-@subsection tcsetpgrp - Sets foreground process group ID
-
-@findex tcsetpgrp
-@cindex sets foreground process group id
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int tcsetpgrp(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-This routine is not currently supported by RTEMS but could be
-in a future version.
-
-
diff --git a/doc/posix_users/files.t b/doc/posix_users/files.t
deleted file mode 100644
index bc8564747a..0000000000
--- a/doc/posix_users/files.t
+++ /dev/null
@@ -1,2407 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Files and Directories Manager
-
-@section Introduction
-
-The files and directories manager is ...
-
-The directives provided by the files and directories manager are:
-
-@itemize @bullet
-@item @code{opendir} - Open a Directory
-@item @code{readdir} - Reads a directory
-@item @code{rewinddir} - Resets the @code{readdir()} pointer
-@item @code{scandir} - Scan a directory for matching entries
-@item @code{telldir} - Return current location in directory stream
-@item @code{closedir} - Ends directory read operation
-@item @code{getdents} - Get directory entries
-@item @code{chdir} - Changes the current working directory
-@item @code{fchdir} - Changes the current working directory
-@item @code{getcwd} - Gets current working directory
-@item @code{open} - Opens a file
-@item @code{creat} - Create a new file or rewrite an existing one
-@item @code{umask} - Sets a file creation mask
-@item @code{link} - Creates a link to a file
-@item @code{symlink} - Creates a symbolic link to a file
-@item @code{readlink} - Obtain the name of the link destination
-@item @code{mkdir} - Makes a directory
-@item @code{mkfifo} - Makes a FIFO special file
-@item @code{unlink} - Removes a directory entry
-@item @code{rmdir} - Delete a directory
-@item @code{rename} - Renames a file
-@item @code{stat} - Gets information about a file.
-@item @code{fstat} - Gets file status
-@item @code{lstat} - Gets file status
-@item @code{access} - Check permissions for a file.
-@item @code{chmod} - Changes file mode
-@item @code{fchmod} - Changes permissions of a file
-@item @code{chown} - Changes the owner and/ or group of a file
-@item @code{utime} - Change access and/or modification times of an inode
-@item @code{ftruncate} - Truncate a file to a specified length
-@item @code{truncate} - Truncate a file to a specified length
-@item @code{pathconf} - Gets configuration values for files
-@item @code{fpathconf} - Get configuration values for files
-@item @code{mknod} - Create a directory
-@end itemize
-
-@section Background
-
-@subsection Path Name Evaluation
-
-A pathname is a string that consists of no more than @code{PATH_MAX}
-bytes, including the terminating null character. A pathname has an optional
-beginning slash, followed by zero or more filenames separated by slashes.
-If the pathname refers to a directory, it may also have one or more trailing
-slashes. Multiple successive slahes are considered to be the same as
-one slash.
-
-POSIX allows a pathname that begins with precisely two successive slashes to be
-interpreted in an implementation-defined manner. RTEMS does not currently
-recognize this as a special condition. Any number of successive
-slashes is treated the same as a single slash. POSIX requires that
-an implementation treat more than two leading slashes as a single slash.
-
-@section Operations
-
-There is currently no text in this section.
-
-@section Directives
-
-This section details the files and directories manager's directives.
-A subsection is dedicated to each of this manager's directives
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-@c
-@c
-@c
-@page
-@subsection opendir - Open a Directory
-
-@findex opendir
-@cindex open a directory
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <sys/types.h>
-#include <dirent.h>
-
-int opendir(
- const char *dirname
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EACCES
-Search permission was denied on a component of the path
-prefix of @code{dirname}, or read permission is denied
-
-@item EMFILE
-Too many file descriptors in use by process
-
-@item ENFILE
-Too many files are currently open in the system.
-
-@item ENOENT
-Directory does not exist, or @code{name} is an empty string.
-
-@item ENOMEM
-Insufficient memory to complete the operation.
-
-@item ENOTDIR
-@code{name} is not a directory.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This routine opens a directory stream corresponding to the
-directory specified by the @code{dirname} argument. The
-directory stream is positioned at the first entry.
-
-@subheading NOTES:
-
-The routine is implemented in Cygnus newlib.
-
-@c
-@c
-@c
-@page
-@subsection readdir - Reads a directory
-
-@findex readdir
-@cindex reads a directory
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <sys/types.h>
-#include <dirent.h>
-
-int readdir(
- DIR *dirp
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EBADF
-Invalid file descriptor
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{readdir()} function returns a pointer to a structure @code{dirent}
-representing the next directory entry from the directory stream pointed to
-by @code{dirp}. On end-of-file, NULL is returned.
-
-The @code{readdir()} function may (or may not) return entries for . or .. Your
-program should tolerate reading dot and dot-dot but not require them.
-
-The data pointed to be @code{readdir()} may be overwritten by another call to
-@code{readdir()} for the same directory stream. It will not be overwritten by
-a call for another directory.
-
-@subheading NOTES:
-
-If @code{ptr} is not a pointer returned by @code{malloc()}, @code{calloc()}, or
-@code{realloc()} or has been deallocated with @code{free()} or
-@code{realloc()}, the results are not portable and are probably disastrous.
-
-The routine is implemented in Cygnus newlib.
-
-@c
-@c
-@c
-@page
-@subsection rewinddir - Resets the readdir() pointer
-
-@findex rewinddir
-@cindex resets the readdir() pointer
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <sys/types.h>
-#include <dirent.h>
-
-void rewinddir(
- DIR *dirp
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-No value is returned.
-
-@subheading DESCRIPTION:
-
-The @code{rewinddir()} function resets the position associated with
-the directory stream pointed to by @code{dirp}. It also causes the
-directory stream to refer to the current state of the directory.
-
-@subheading NOTES:
-
-NONE
-
-If @code{dirp} is not a pointer by @code{opendir()}, the results are
-undefined.
-
-The routine is implemented in Cygnus newlib.
-
-@c
-@c
-@c
-@page
-@subsection scandir - Scan a directory for matching entries
-
-@findex scandir
-@cindex scan a directory for matching entries
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <dirent.h>
-
-int scandir(
- const char *dir,
- struct dirent ***namelist,
- int (*select)(const struct dirent *),
- int (*compar)(const struct dirent **, const struct dirent **)
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item ENOMEM
-Insufficient memory to complete the operation.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{scandir()} function scans the directory @code{dir}, calling
-@code{select()} on each directory entry. Entries for which @code{select()}
-returns non-zero are stored in strings allocated via @code{malloc()},
-sorted using @code{qsort()} with the comparison function @code{compar()},
-and collected in array @code{namelist} which is allocated via @code{malloc()}.
-If @code{select} is NULL, all entries are selected.
-
-@subheading NOTES:
-
-The routine is implemented in Cygnus newlib.
-
-@c
-@c
-@c
-@page
-@subsection telldir - Return current location in directory stream
-
-@findex telldir
-@cindex return current location in directory stream
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <dirent.h>
-
-off_t telldir(
- DIR *dir
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EBADF
-Invalid directory stream descriptor @code{dir}.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{telldir()} function returns the current location associated with the
-directory stream @code{dir}.
-
-@subheading NOTES:
-
-The routine is implemented in Cygnus newlib.
-
-@c
-@c
-@c
-@page
-@subsection closedir - Ends directory read operation
-
-@findex closedir
-@cindex ends directory read operation
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <sys/types.h>
-#include <dirent.h>
-
-int closedir(
- DIR *dirp
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EBADF
-Invalid file descriptor
-
-@end table
-
-@subheading DESCRIPTION:
-
-The directory stream associated with @code{dirp} is closed.
-The value in @code{dirp} may not be usable after a call to
-@code{closedir()}.
-
-@subheading NOTES:
-
-NONE
-
-The argument to @code{closedir()} must be a pointer returned by
-@code{opendir()}. If it is not, the results are not portable and
-most likely unpleasant.
-
-The routine is implemented in Cygnus newlib.
-
-@c
-@c
-@c
-@page
-@subsection chdir - Changes the current working directory
-
-@findex chdir
-@cindex changes the current working directory
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <unistd.h>
-
-int chdir(
- const char *path
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-On error, this routine returns -1 and sets @code{errno} to one of
-the following:
-
-@table @b
-@item EACCES
-Search permission is denied for a directory in a file's path prefix.
-
-@item ENAMETOOLONG
-Length of a filename string exceeds PATH_MAX and _POSIX_NO_TRUNC is
-in effect.
-
-@item ENOENT
-A file or directory does not exist.
-
-@item ENOTDIR
-A component of the specified pathname was not a directory when directory
-was expected.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{chdir()} function causes the directory named by @code{path} to
-become the current working directory; that is, the starting point for
-searches of pathnames not beginning with a slash.
-
-If @code{chdir()} detects an error, the current working directory is not
-changed.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection fchdir - Changes the current working directory
-
-@findex fchdir
-@cindex changes the current working directory
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <unistd.h>
-
-int fchdir(
- int fd
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-On error, this routine returns -1 and sets @code{errno} to one of
-the following:
-
-@table @b
-@item EACCES
-Search permission is denied for a directory in a file's path prefix.
-
-@item ENAMETOOLONG
-Length of a filename string exceeds PATH_MAX and _POSIX_NO_TRUNC is
-in effect.
-
-@item ENOENT
-A file or directory does not exist.
-
-@item ENOTDIR
-A component of the specified pathname was not a directory when directory
-was expected.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{fchdir()} function causes the directory named by @code{fd} to
-become the current working directory; that is, the starting point for
-searches of pathnames not beginning with a slash.
-
-If @code{fchdir()} detects an error, the current working directory is not
-changed.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection getcwd - Gets current working directory
-
-@findex getcwd
-@cindex gets current working directory
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <unistd.h>
-
-int getcwd( void );
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-Invalid argument
-
-@item ERANGE
-Result is too large
-
-@item EACCES
-Search permission is denied for a directory in a file's path prefix.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{getcwd()} function copies the absolute pathname of the current
-working directory to the character array pointed to by @code{buf}. The
-@code{size} argument is the number of bytes available in @code{buf}
-
-@subheading NOTES:
-
-There is no way to determine the maximum string length that @code{fetcwd()}
-may need to return. Applications should tolerate getting @code{ERANGE}
-and allocate a larger buffer.
-
-It is possible for @code{getcwd()} to return EACCES if, say, @code{login}
-puts the process into a directory without read access.
-
-The 1988 standard uses @code{int} instead of @code{size_t} for the second
-parameter.
-
-@c
-@c
-@c
-@page
-@subsection open - Opens a file
-
-@findex open
-@cindex opens a file
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <fcntl.h>
-
-int open(
- const char *path,
- int oflag,
- mode_t mode
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-
-@item EACCES
-Search permission is denied for a directory in a file's path prefix.
-
-@item EEXIST
-The named file already exists.
-
-@item EINTR
-Function was interrupted by a signal.
-
-@item EISDIR
-Attempt to open a directory for writing or to rename a file to be a
-directory.
-
-@item EMFILE
-Too many file descriptors are in use by this process.
-
-@item ENAMETOOLONG
-Length of a filename string exceeds PATH_MAX and _POSIX_NO_TRUNC is in
-effect.
-
-@item ENFILE
-Too many files are currently open in the system.
-
-@item ENOENT
-A file or directory does not exist.
-
-@item ENOSPC
-No space left on disk.
-
-@item ENOTDIR
-A component of the specified pathname was not a directory when a directory
-was expected.
-
-@item ENXIO
-No such device. This error may also occur when a device is not ready, for
-example, a tape drive is off-line.
-
-@item EROFS
-Read-only file system.
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{open} function establishes a connection between a file and a file
-descriptor. The file descriptor is a small integer that is used by I/O
-functions to reference the file. The @code{path} argument points to the
-pathname for the file.
-
-The @code{oflag} argument is the bitwise inclusive OR of the values of
-symbolic constants. The programmer must specify exactly one of the following
-three symbols:
-
-@table @b
-@item O_RDONLY
-Open for reading only.
-
-@item O_WRONLY
-Open for writing only.
-
-@item O_RDWR
-Open for reading and writing.
-
-@end table
-
-Any combination of the following symbols may also be used.
-
-@table @b
-@item O_APPEND
-Set the file offset to the end-of-file prior to each write.
-
-@item O_CREAT
-If the file does not exist, allow it to be created. This flag indicates
-that the @code{mode} argument is present in the call to @code{open}.
-
-@item O_EXCL
-This flag may be used only if O_CREAT is also set. It causes the call
-to @code{open} to fail if the file already exists.
-
-@item O_NOCTTY
-If @code{path} identifies a terminal, this flag prevents that teminal from
-becoming the controlling terminal for thi9s process. See Chapter 8 for a
-description of terminal I/O.
-
-@item O_NONBLOCK
-Do no wait for the device or file to be ready or available. After the file
-is open, the @code{read} and @code{write} calls return immediately. If the
-process would be delayed in the read or write opermation, -1 is returned and
-@code{errno} is set to @code{EAGAIN} instead of blocking the caller.
-
-@item O_TRUNC
-This flag should be used only on ordinary files opened for writing. It
-causes the file to be tuncated to zero length..
-
-@end table
-
-Upon successful completion, @code{open} returns a non-negative file
-descriptor.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection creat - Create a new file or rewrite an existing one
-
-@findex creat
-@cindex create a new file or rewrite an existing one
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <fcntl.h>
-
-int creat(
- const char *path,
- mode_t mode
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EEXIST
-@code{path} already exists and O_CREAT and O_EXCL were used.
-
-@item EISDIR
-@code{path} refers to a directory and the access requested involved
-writing
-
-@item ETXTBSY
-@code{path} refers to an executable image which is currently being
-executed and write access was requested
-
-@item EFAULT
-@code{path} points outside your accessible address space
-
-@item EACCES
-The requested access to the file is not allowed, or one of the
-directories in @code{path} did not allow search (execute) permission.
-
-@item ENAMETOOLONG
-@code{path} was too long.
-
-@item ENOENT
-A directory component in @code{path} does not exist or is a dangling
-symbolic link.
-
-@item ENOTDIR
-A component used as a directory in @code{path} is not, in fact, a
-directory.
-
-@item EMFILE
-The process alreadyh has the maximum number of files open.
-
-@item ENFILE
-The limit on the total number of files open on the system has been
-reached.
-
-@item ENOMEM
-Insufficient kernel memory was available.
-
-@item EROFS
-@code{path} refers to a file on a read-only filesystem and write access
-was requested
-
-@end table
-
-@subheading DESCRIPTION:
-
-@code{creat} attempts to create a file and return a file descriptor for
-use in read, write, etc.
-
-@subheading NOTES:
-
-NONE
-
-The routine is implemented in Cygnus newlib.
-
-@c
-@c
-@c
-@page
-@subsection umask - Sets a file creation mask.
-
-@findex umask
-@cindex sets a file creation mask.
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <sys/types.h>
-#include <sys/stat.h>
-
-mode_t umask(
- mode_t cmask
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@subheading DESCRIPTION:
-
-The @code{umask()} function sets the process file creation mask to @code{cmask}.
-The file creation mask is used during @code{open()}, @code{creat()}, @code{mkdir()},
-@code{mkfifo()} calls to turn off permission bits in the @code{mode} argument.
-Bit positions that are set in @code{cmask} are cleared in the mode of the
-created file.
-
-@subheading NOTES:
-
-NONE
-
-The @code{cmask} argument should have only permission bits set. All other
-bits should be zero.
-
-In a system which supports multiple processes, the file creation mask is inherited
-across @code{fork()} and @code{exec()} calls. This makes it possible to alter the
-default permission bits of created files. RTEMS does not support multiple processes
-so this behavior is not possible.
-
-@c
-@c
-@c
-@page
-@subsection link - Creates a link to a file
-
-@findex link
-@cindex creates a link to a file
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <unistd.h>
-
-int link(
- const char *existing,
- const char *new
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-
-@item EACCES
-Search permission is denied for a directory in a file's path prefix
-
-@item EEXIST
-The named file already exists.
-
-@item EMLINK
-The number of links would exceed @code{LINK_MAX}.
-
-@item ENAMETOOLONG
-Length of a filename string exceeds PATH_MAX and _POSIX_NO_TRUNC is in
-effect.
-
-@item ENOENT
-A file or directory does not exist.
-@item ENOSPC
-No space left on disk.
-
-@item ENOTDIR
-A component of the specified pathname was not a directory when a directory
-was expected.
-
-@item EPERM
-Operation is not permitted. Process does not have the appropriate priviledges
-or permissions to perform the requested operations.
-
-@item EROFS
-Read-only file system.
-
-@item EXDEV
-Attempt to link a file to another file system.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{link()} function atomically creates a new link for an existing file
-and increments the link count for the file.
-
-If the @code{link()} function fails, no directories are modified.
-
-The @code{existing} argument should not be a directory.
-
-The caller may (or may not) need permission to access the existing file.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection symlink - Creates a symbolic link to a file
-
-@findex symlink
-@cindex creates a symbolic link to a file
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <unistd.h>
-
-int symlink(
- const char *topath,
- const char *frompath
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-
-@item EACCES
-Search permission is denied for a directory in a file's path prefix
-
-@item EEXIST
-The named file already exists.
-
-@item ENAMETOOLONG
-Length of a filename string exceeds PATH_MAX and _POSIX_NO_TRUNC is in
-effect.
-
-@item ENOENT
-A file or directory does not exist.
-
-@item ENOSPC
-No space left on disk.
-
-@item ENOTDIR
-A component of the specified pathname was not a directory when a directory
-was expected.
-
-@item EPERM
-Operation is not permitted. Process does not have the appropriate priviledges
-or permissions to perform the requested operations.
-
-@item EROFS
-Read-only file system.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{symlink()} function creates a symbolic link from the frombath to the
-topath. The symbolic link will be interpreted at run-time.
-
-If the @code{symlink()} function fails, no directories are modified.
-
-The caller may (or may not) need permission to access the existing file.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection readlink - Obtain the name of a symbolic link destination
-
-@findex readlink
-@cindex obtain the name of a symbolic link destination
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <unistd.h>
-
-int readlink(
- const char *path,
- char *buf,
- size_t bufsize
-);
-
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-
-@item EACCES
-Search permission is denied for a directory in a file's path prefix
-
-@item ENAMETOOLONG
-Length of a filename string exceeds PATH_MAX and _POSIX_NO_TRUNC is in
-effect.
-
-@item ENOENT
-A file or directory does not exist.
-
-@item ENOTDIR
-A component of the prefix pathname was not a directory when a directory
-was expected.
-
-@item ELOOP
-Too many symbolic links were encountered in the pathname.
-
-@item EINVAL
-The pathname does not refer to a symbolic link
-
-@item EFAULT
-An invalid pointer was passed into the @code{readlink()} routine.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{readlink()} function places the symbolic link destination into
-@code{buf} argument and returns the number of characters copied.
-
-If the symbolic link destination is longer than bufsize characters the
-name will be truncated.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection mkdir - Makes a directory
-
-@findex mkdir
-@cindex makes a directory
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <sys/types.h>
-#include <sys/stat.h>
-
-int mkdir(
- const char *path,
- mode_t mode
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EACCES
-Search permission is denied for a directory in a file's path prefix
-
-@item EEXIST
-The name file already exist.
-
-@item EMLINK
-The number of links would exceed LINK_MAX
-
-@item ENAMETOOLONG
-Length of a filename string exceeds PATH_MAX and _POSIX_NO_TRUNC is in
-effect.
-
-@item ENOENT
-A file or directory does not exist.
-
-@item ENOSPC
-No space left on disk.
-
-@item ENOTDIR
-A component of the specified pathname was not a directory when a directory
-was expected.
-
-@item EROFS
-Read-only file system.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{mkdir()} function creates a new diectory named @code{path}. The
-permission bits (modified by the file creation mask) are set from @code{mode}.
-The owner and group IDs for the directory are set from the effective user ID
-and group ID.
-
-The new directory may (or may not) contain entries for.. and .. but is otherwise
-empty.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection mkfifo - Makes a FIFO special file
-
-@findex mkfifo
-@cindex makes a fifo special file
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <sys/types.h>
-#include <sys/stat.h>
-
-
-int mkfifo(
- const char *path,
- mode_t mode
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EACCES
-Search permission is denied for a directory in a file's path prefix
-
-@item EEXIST
-The named file already exists.
-
-@item ENOENT
-A file or directory does not exist.
-
-@item ENOSPC
-No space left on disk.
-
-@item ENOTDIR
-A component of the specified @code{path} was not a directory when a directory
-was expected.
-
-@item EROFS
-Read-only file system.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{mkfifo()} function creates a new FIFO special file named @code{path}.
-The permission bits (modified by the file creation mask) are set from
-@code{mode}. The owner and group IDs for the FIFO are set from the efective
-user ID and group ID.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection unlink - Removes a directory entry
-
-@findex unlink
-@cindex removes a directory entry
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <unistd.h>
-
-int unlink(
- const char path
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EACCES
-Search permission is denied for a directory in a file's path prefix
-
-@item EBUSY
-The directory is in use.
-
-@item ENAMETOOLONG
-Length of a filename string exceeds PATH_MAX and _POSIX_NO_TRUNC is in
-effect.
-
-@item ENOENT
-A file or directory does not exist.
-
-@item ENOTDIR
-A component of the specified @code{path} was not a directory when a directory
-was expected.
-
-@item EPERM
-Operation is not permitted. Process does not have the appropriate priviledges
-or permissions to perform the requested operations.
-
-@item EROFS
-Read-only file system.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{unlink} function removes the link named by @code{path} and decrements the
-link count of the file referenced by the link. When the link count goes to zero
-and no process has the file open, the space occupied by the file is freed and the
-file is no longer accessible.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection rmdir - Delete a directory
-
-@findex rmdir
-@cindex delete a directory
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <unistd.h>
-
-int rmdir(
- const char *pathname
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EPERM
-The filesystem containing @code{pathname} does not support the removal
-of directories.
-
-@item EFAULT
-@code{pathname} points ouside your accessible address space.
-
-@item EACCES
-Write access to the directory containing @code{pathname} was not
-allowed for the process's effective uid, or one of the directories in
-@code{pathname} did not allow search (execute) permission.
-
-@item EPERM
-The directory containing @code{pathname} has the stickybit (S_ISVTX)
-set and the process's effective uid is neither the uid of the file to
-be delected nor that of the director containing it.
-
-@item ENAMETOOLONG
-@code{pathname} was too long.
-
-@item ENOENT
-A dirctory component in @code{pathname} does not exist or is a
-dangling symbolic link.
-
-@item ENOTDIR
-@code{pathname}, or a component used as a directory in @code{pathname},
-is not, in fact, a directory.
-
-@item ENOTEMPTY
-@code{pathname} contains entries other than . and .. .
-
-@item EBUSY
-@code{pathname} is the current working directory or root directory of
-some process
-
-@item EBUSY
-@code{pathname} is the current directory or root directory of some
-process.
-
-@item ENOMEM
-Insufficient kernel memory was available
-
-@item EROGS
-@code{pathname} refers to a file on a read-only filesystem.
-
-@item ELOOP
-@code{pathname} contains a reference to a circular symbolic link
-
-@end table
-
-@subheading DESCRIPTION:
-
-@code{rmdir} deletes a directory, which must be empty
-
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection rename - Renames a file
-
-@findex rename
-@cindex renames a file
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <unistd.h>
-
-int rename(
- const char *old,
- const char *new
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EACCES
-Search permission is denied for a directory in a file's path prefix.
-
-@item EBUSY
-The directory is in use.
-
-@item EEXIST
-The named file already exists.
-
-@item EINVAL
-Invalid argument.
-
-@item EISDIR
-Attempt to open a directory for writing or to rename a file to be a
-directory.
-
-@item EMLINK
-The number of links would exceed LINK_MAX.
-
-@item ENAMETOOLONG
-Length of a filename string exceeds PATH_MAX and _POSIX_NO_TRUNC is
-in effect.
-
-@item ENOENT
-A file or directory does no exist.
-
-@item ENOSPC
-No space left on disk.
-
-@item ENOTDIR
-A component of the specified pathname was not a directory when a
-directory was expected.
-
-@item ENOTEMPTY
-Attempt to delete or rename a non-empty directory.
-
-@item EROFS
-Read-only file system
-
-@item EXDEV
-Attempt to link a file to another file system.
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{rename()} function causes the file known bo @code{old} to
-now be known as @code{new}.
-
-Ordinary files may be renamed to ordinary files, and directories may be
-renamed to directories; however, files cannot be converted using
-@code{rename()}. The @code{new} pathname may not contain a path prefix
-of @code{old}.
-
-@subheading NOTES:
-
-If a file already exists by the name @code{new}, it is removed. The
-@code{rename()} function is atomic. If the @code{rename()} detects an
-error, no files are removed. This guarantees that the
-@code{rename("x", "x")} does not remove @code{x}.
-
-You may not rename dot or dot-dot.
-
-The routine is implemented in Cygnus newlib using @code{link()} and
-@code{unlink()}.
-
-@c
-@c
-@c
-@page
-@subsection stat - Gets information about a file
-
-@findex stat
-@cindex gets information about a file
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <sys/types.h>
-#include <sys/stat.h>
-
-int stat(
- const char *path,
- struct stat *buf
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EACCES
-Search permission is denied for a directory in a file's path prefix.
-
-@item EBADF
-Invalid file descriptor.
-
-@item ENAMETOOLONG
-Length of a filename string exceeds PATH_MAX and _POSIX_NO_TRUNC is
-in effect.
-
-@item ENOENT
-A file or directory does not exist.
-
-@item ENOTDIR
-A component of the specified pathname was not a directory when a
-directory was expected.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{path} argument points to a pathname for a file. Read, write, or
-execute permission for the file is not required, but all directories listed
-in @code{path} must be searchable. The @code{stat()} function obtains
-information about the named file and writes it to the area pointed to by
-@code{buf}.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection fstat - Gets file status
-
-@findex fstat
-@cindex gets file status
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <sys/types.h>
-#include <sys/stat.h>
-
-int fstat(
- int fildes,
- struct stat *buf
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EBADF
-Invalid file descriptor
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{fstat()} function obtains information about the file
-associated with @code{fildes} and writes it to the area pointed
-to by the @code{buf} argument.
-
-@subheading NOTES:
-
-If the filesystem object referred to by @code{fildes} is a
-link, then the information returned in @code{buf} refers
-to the destination of that link. This is in contrast to
-@code{lstat()} which does not follow the link.
-
-@c
-@c
-@c
-@page
-@subsection lstat - Gets file status
-
-@findex lstat
-@cindex gets file status
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <sys/types.h>
-#include <sys/stat.h>
-
-int lstat(
- int fildes,
- struct stat *buf
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EBADF
-Invalid file descriptor
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{lstat()} function obtains information about the file
-associated with @code{fildes} and writes it to the area pointed
-to by the @code{buf} argument.
-
-@subheading NOTES:
-
-If the filesystem object referred to by @code{fildes} is a
-link, then the information returned in @code{buf} refers
-to the link itself. This is in contrast to @code{fstat()}
-which follows the link.
-
-The @code{lstat()} routine is defined by BSD 4.3 and SVR4
-and not included in POSIX 1003.1b-1996.
-
-@c
-@c
-@c
-@page
-@subsection access - Check permissions for a file
-
-@findex access
-@cindex check permissions for a file
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <unistd.h>
-
-int access(
- const char *pathname,
- int mode
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EACCES
-The requested access would be denied, either to the file itself or
-one of the directories in @code{pathname}.
-
-@item EFAULT
-@code{pathname} points outside your accessible address space.
-
-@item EINVAL
-@code{Mode} was incorrectly specified.
-
-@item ENAMETOOLONG
-@code{pathname} is too long.
-
-@item ENOENT
-A directory component in @code{pathname} would have been accessible but
-does not exist or was a dangling symbolic link.
-
-@item ENOTDIR
-A component used as a directory in @code{pathname} is not, in fact,
-a directory.
-
-@item ENOMEM
-Insufficient kernel memory was available.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@code{Access} checks whether the process would be allowed to read, write or
-test for existence of the file (or other file system object) whose name is
-@code{pathname}. If @code{pathname} is a symbolic link permissions of the
-file referred by this symbolic link are tested.
-
-@code{Mode} is a mask consisting of one or more of R_OK, W_OK, X_OK and F_OK.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection chmod - Changes file mode.
-
-@findex chmod
-@cindex changes file mode.
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <sys/types.h>
-#include <sys/stat.h>
-
-int chmod(
- const char *path,
- mode_t mode
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EACCES
-Search permission is denied for a directory in a file's path prefix
-
-@item ENAMETOOLONG
-Length of a filename string exceeds PATH_MAX and _POSIX_NO_TRUNC is in
-effect.
-
-@item ENOENT
-A file or directory does not exist.
-
-@item ENOTDIR
-A component of the specified pathname was not a directory when a directory
-was expected.
-
-@item EPERM
-Operation is not permitted. Process does not have the appropriate priviledges
-or permissions to perform the requested operations.
-
-@item EROFS
-Read-only file system.
-
-@end table
-
-@subheading DESCRIPTION:
-
-Set the file permission bits, the set user ID bit, and the set group ID bit
-for the file named by @code{path} to @code{mode}. If the effective user ID
-does not match the owner of the file and the calling process does not have
-the appropriate privileges, @code{chmod()} returns -1 and sets @code{errno} to
-@code{EPERM}.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection fchmod - Changes permissions of a file
-
-@findex fchmod
-@cindex changes permissions of a file
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <sys/types.h>
-#include <sys/stat.h>
-
-int fchmod(
- int fildes,
- mode_t mode
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EACCES
-Search permission is denied for a directory in a file's path prefix.
-
-@item EBADF
-The descriptor is not valid.
-
-@item EFAULT
-@code{path} points outside your accessible address space.
-
-@item EIO
-A low-level I/o error occurred while modifying the inode.
-
-@item ELOOP
-@code{path} contains a circular reference
-
-@item ENAMETOOLONG
-Length of a filename string exceeds PATH_MAX and _POSIX_NO_TRUNC is
-in effect.
-
-@item ENOENT
-A file or directory does no exist.
-
-@item ENOMEM
-Insufficient kernel memory was avaliable.
-
-@item ENOTDIR
-A component of the specified pathname was not a directory when a
-directory was expected.
-
-@item EPERM
-The effective UID does not match the owner of the file, and is not
-zero
-
-@item EROFS
-Read-only file system
-@end table
-
-@subheading DESCRIPTION:
-
-The mode of the file given by @code{path} or referenced by
-@code{filedes} is changed.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection getdents - Get directory entries
-
-@findex getdents
-@cindex get directory entries
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <unistd.h>
-#include <linux/dirent.h>
-#include <linux/unistd.h>
-
-long getdents(
- int dd_fd,
- char *dd_buf,
- int dd_len
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-A successful call to @code{getdents} returns th the number of bytes read.
-On end of directory, 0 is returned. When an error occurs, -1 is returned,
-and @code{errno} is set appropriately.
-
-@table @b
-@item EBADF
-Invalid file descriptor @code{fd}.
-
-@item EFAULT
-Argument points outside the calling process's address space.
-
-@item EINVAL
-Result buffer is too small.
-
-@item ENOENT
-No such directory.
-
-@item ENOTDIR
-File descriptor does not refer to a directory.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@code{getdents} reads several @code{dirent} structures from the directory
-pointed by @code{fd} into the memory area pointed to by @code{dirp}. The
-parameter @code{count} is the size of the memory area.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection chown - Changes the owner and/or group of a file.
-
-@findex chown
-@cindex changes the owner and/or group of a file.
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <sys/types.h>
-#include <unistd.h>
-
-int chown(
- const char *path,
- uid_t owner,
- gid_t group
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EACCES
-Search permission is denied for a directory in a file's path prefix
-
-@item EINVAL
-Invalid argument
-
-@item ENAMETOOLONG
-Length of a filename string exceeds PATH_MAX and _POSIX_NO_TRUNC is in
-effect.
-
-@item ENOENT
-A file or directory does not exist.
-
-@item ENOTDIR
-A component of the specified pathname was not a directory when a directory
-was expected.
-
-@item EPERM
-Operation is not permitted. Process does not have the appropriate priviledges
-or permissions to perform the requested operations.
-
-@item EROFS
-Read-only file system.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The user ID and group ID of the file named by @code{path} are set to
-@code{owner} and @code{path}, respectively.
-
-For regular files, the set group ID (S_ISGID) and set user ID (S_ISUID)
-bits are cleared.
-
-Some systems consider it a security violation to allow the owner of a file to
-be changed, If users are billed for disk space usage, loaning a file to
-another user could result in incorrect billing. The @code{chown()} function
-may be restricted to privileged users for some or all files. The group ID can
-still be changed to one of the supplementary group IDs.
-
-@subheading NOTES:
-
-This function may be restricted for some file. The @code{pathconf} function
-can be used to test the @code{_PC_CHOWN_RESTRICTED} flag.
-
-
-
-@c
-@c
-@c
-@page
-@subsection utime - Change access and/or modification times of an inode
-
-@findex utime
-@cindex change access and/or modification times of an inode
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <sys/types.h>
-
-int utime(
- const char *filename,
- struct utimbuf *buf
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EACCES
-Permission to write the file is denied
-
-@item ENOENT
-@code{Filename} does not exist
-
-@end table
-
-@subheading DESCRIPTION:
-
-@code{Utime} changes the access and modification times of the inode
-specified by @code{filename} to the @code{actime} and @code{modtime}
-fields of @code{buf} respectively. If @code{buf} is NULL, then the
-access and modification times of the file are set to the current time.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection ftruncate - truncate a file to a specified length
-
-@findex ftruncate
-@cindex truncate a file to a specified length
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <unistd.h>
-
-int ftrunctate(
- int fd,
- size_t length
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item ENOTDIR
-A component of the path prefix is not a directory.
-
-@item EINVAL
-The pathname contains a character with the high-order bit set.
-
-@item ENAMETOOLONG
-A component of a pathname exceeded 255 characters, or an entire
-path name exceeded 1023 characters.
-
-@item ENOENT
-The named file does not exist.
-
-@item EACCES
-The named file is not writable by the user.
-
-@item EACCES
-Search permission is denied for a component of the path prefix.
-
-@item ELOOP
-Too many symbolic links were encountered in translating the
-pathname
-
-@item EISDIR
-The named file is a directory.
-
-@item EROFS
-The named file resides on a read-only file system
-
-@item ETXTBSY
-The file is a pure procedure (shared text) file that is being
-executed
-
-@item EIO
-An I/O error occurred updating the inode.
-
-@item EFAULT
-@code{Path} points outside the process's allocated address space.
-
-@item EBADF
-The @code{fd} is not a valid descriptor.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@code{truncate()} causes the file named by @code{path} or referenced by
-@code{fd} to be truncated to at most @code{length} bytes in size. If the
-file previously was larger than this size, the extra data is lost. With
-@code{ftruncate()}, the file must be open for writing.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection truncate - truncate a file to a specified length
-
-@findex truncate
-@cindex truncate a file to a specified length
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <unistd.h>
-
-int trunctate(
- const char *path,
- size_t length
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item ENOTDIR
-A component of the path prefix is not a directory.
-
-@item EINVAL
-The pathname contains a character with the high-order bit set.
-
-@item ENAMETOOLONG
-A component of a pathname exceeded 255 characters, or an entire
-path name exceeded 1023 characters.
-
-@item ENOENT
-The named file does not exist.
-
-@item EACCES
-The named file is not writable by the user.
-
-@item EACCES
-Search permission is denied for a component of the path prefix.
-
-@item ELOOP
-Too many symbolic links were encountered in translating the
-pathname
-
-@item EISDIR
-The named file is a directory.
-
-@item EROFS
-The named file resides on a read-only file system
-
-@item ETXTBSY
-The file is a pure procedure (shared text) file that is being
-executed
-
-@item EIO
-An I/O error occurred updating the inode.
-
-@item EFAULT
-@code{Path} points outside the process's allocated address space.
-
-@item EBADF
-The @code{fd} is not a valid descriptor.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@code{truncate()} causes the file named by @code{path} or referenced by
-@code{fd} to be truncated to at most @code{length} bytes in size. If the
-file previously was larger than this size, the extra data is lost. With
-@code{ftruncate()}, the file must be open for writing.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection pathconf - Gets configuration values for files
-
-@findex pathconf
-@cindex gets configuration values for files
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <unistd.h>
-
-int pathconf(
- const char *path,
- int name
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-Invalid argument
-
-@item EACCES
-Permission to write the file is denied
-
-@item ENAMETOOLONG
-Length of a filename string exceeds PATH_MAX and _POSIX_NO_TRUNC
-is in effect.
-
-@item ENOENT
-A file or directory does not exist
-
-@item ENOTDIR
-A component of the specified @code{path} was not a directory whan a
-directory was expected.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@code{pathconf()} gets a value for the configuration option @code{name}
-for the open file descriptor @code{filedes}.
-
-The possible values for @code{name} are:
-
-@table @b
-@item _PC_LINK_MAX
-returns the maximum number of links to the file. If @code{filedes} or
-@code{path} refer to a directory, then the value applies to the whole
-directory. The corresponding macro is @code{_POSIX_LINK_MAX}.
-
-@item _PC_MAX_CANON
-returns the maximum length of a formatted input line, where @code{filedes}
-or @code{path} must refer to a terminal. The corresponding macro is
-@code{_POSIX_MAX_CANON}.
-
-@item _PC_MAX_INPUT
-returns the maximum length of an input line, where @code{filedes} or
-@code{path} must refer to a terminal. The corresponding macro is
-@code{_POSIX_MAX_INPUT}.
-
-@item _PC_NAME_MAX
-returns the maximum length of a filename in the directory @code{path} or
-@code{filedes}. The process is allowed to create. The corresponding macro
-is @code{_POSIX_NAME_MAX}.
-
-@item _PC_PATH_MAX
-returns the maximum length of a relative pathname when @code{path} or
-@code{filedes} is the current working directory. The corresponding macro
-is @code{_POSIX_PATH_MAX}.
-
-@item _PC_PIPE_BUF
-returns the size of the pipe buffer, where @code{filedes} must refer to a
-pipe or FIFO and @code{path} must refer to a FIFO. The corresponding macro
-is @code{_POSIX_PIPE_BUF}.
-
-@item _PC_CHOWN_RESTRICTED
-returns nonzero if the chown(2) call may not be used on this file. If
-@code{filedes} or @code{path} refer to a directory, then this applies to all
-files in that directory. The corresponding macro is
-@code{_POSIX_CHOWN_RESTRICTED}.
-
-@end table
-
-@subheading NOTES:
-
-Files with name lengths longer than the value returned for @code{name} equal
-@code{_PC_NAME_MAX} may exist in the given directory.
-
-@c
-@c
-@c
-@page
-@subsection fpathconf - Gets configuration values for files
-
-@findex fpathconf
-@cindex gets configuration values for files
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <unistd.h>
-
-int fpathconf(
- int filedes,
- int name
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-Invalid argument
-
-@item EACCES
-Permission to write the file is denied
-@item ENAMETOOLONG
-
-Length of a filename string exceeds PATH_MAX and _POSIX_NO_TRUNC
-is in effect.
-
-@item ENOENT
-A file or directory does not exist
-
-@item ENOTDIR
-A component of the specified @code{path} was not a directory whan a
-directory was expected.
-
-@end table
-
-
-@subheading DESCRIPTION:
-
-@code{pathconf()} gets a value for the configuration option @code{name}
-for the open file descriptor @code{filedes}.
-
-The possible values for name are:
-
-@table @b
-@item _PC_LINK_MAX
-returns the maximum number of links to the file. If @code{filedes} or
-@code{path} refer to a directory, then the value applies to the whole
-directory. The corresponding macro is _POSIX_LINK_MAX.
-
-@item _PC_MAX_CANON
-returns the maximum length of a formatted input line, where @code{filedes}
-or @code{path} must refer to a terminal. The corresponding macro is
-@code{_POSIX_MAX_CANON}.
-
-@item _PC_MAX_INPUT
-returns the maximum length of an input line, where @code{filedes} or
-@code{path} must refer to a terminal. The corresponding macro is
-@code{_POSIX_MAX_INPUT}.
-
-@item _PC_NAME_MAX
-returns the maximum length of a filename in the directory @code{path} or
-@code{filedes}. The process is allowed to create. The corresponding macro
-is @code{_POSIX_NAME_MAX}.
-
-@item _PC_PATH_MAX
-returns the maximum length of a relative pathname when @code{path} or
-@code{filedes} is the current working directory. The corresponding macro
-is @code{_POSIX_PATH_MAX}.
-
-@item _PC_PIPE_BUF
-returns the size of the pipe buffer, where @code{filedes} must refer to a
-pipe or FIFO and @code{path} must refer to a FIFO. The corresponding macro
-is @code{_POSIX_PIPE_BUF}.
-
-@item _PC_CHOWN_RESTRICTED
-returns nonzero if the @code{chown()} call may not be used on this file. If
-@code{filedes} or @code{path} refer to a directory, then this applies to all
-files in that directory. The corresponding macro is
-@code{_POSIX_CHOWN_RESTRICTED}.
-
-@end table
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection mknod - create a directory
-
-@findex mknod
-@cindex create a directory
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <unistd.h>
-#include <fcntl.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-
-long mknod(
- const char *pathname,
- mode_t mode,
- dev_t dev
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@code{mknod} returns zero on success, or -1 if an error occurred (in which case,
-errno is set appropriately).
-
-@table @b
-@item ENAMETOOLONG
-@code{pathname} was too long.
-
-@item ENOENT
-A directory component in @code{pathname} does not exist or is a dangling symbolic
-link.
-
-@item ENOTDIR
-A component used in the directory @code{pathname} is not, in fact, a directory.
-
-@item ENOMEM
-Insufficient kernel memory was available
-
-@item EROFS
-@code{pathname} refers to a file on a read-only filesystem.
-
-@item ELOOP
-@code{pathname} contains a reference to a circular symbolic link, ie a symbolic
-link whose expansion contains a reference to itself.
-
-@item ENOSPC
-The device containing @code{pathname} has no room for the new node.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@code{mknod} attempts to create a filesystem node (file, device special file or
-named pipe) named @code{pathname}, specified by @code{mode} and @code{dev}.
-
-@code{mode} specifies both the permissions to use and the type of node to be created.
-
-It should be a combination (using bitwise OR) of one of the file types listed
-below and the permissions for the new node.
-
-The permissions are modified by the process's @code{umask} in the usual way: the
-permissions of the created node are @code{(mode & ~umask)}.
-
-The file type should be one of @code{S_IFREG}, @code{S_IFCHR}, @code{S_IFBLK} and
-@code{S_IFIFO} to specify a normal file (which will be created empty), character
-special file, block special file or FIFO (named pipe), respectively, or zero, which
-will create a normal file.
-
-If the file type is @code{S_IFCHR} or @code{S_IFBLK} then @code{dev} specifies the major
-and minor numbers of the newly created device special file; otherwise it is ignored.
-
-The newly created node will be owned by the effective uid of the process. If the
-directory containing the node has the set group id bit set, or if the filesystem
-is mounted with BSD group semantics, the new node will inherit the group ownership
-from its parent directory; otherwise it will be owned by the effective gid of the
-process.
-
-
-@subheading NOTES:
-
-NONE
diff --git a/doc/posix_users/gen_size_report b/doc/posix_users/gen_size_report
deleted file mode 100644
index 767001c9a0..0000000000
--- a/doc/posix_users/gen_size_report
+++ /dev/null
@@ -1,190 +0,0 @@
-#
-# Hack of a script to generate a very long list which contains
-# the size information for every service listed in this manual
-#
-# This script must be modified by the user to tailor it for their
-# environment. This is VERY ugly and could be replaced by something
-# nicer in the future if this report style is useful.
-
-#cpu=sparc
-#bsp=erc32
-
-#cpu=powerpc
-#bsp=mcp750
-
-cpu=v850
-bsp=bare
-symprefix=_
-
-#objdir=/usr1/rtems/build/build-${cpu}-rtems/${cpu}-rtems/c/${bsp}/
-#libc=/opt/rtems/${cpu}-rtems/lib/libc.a
-#libm=/opt/rtems/${cpu}-rtems/lib/libm.a
-objdir=/usr1/rtems/work/tools-v850/b-rtems/${cpu}-rtems/c/${bsp}/
-libc=/usr2/test-v850/${cpu}-rtems/lib/libc.a
-libm=/usr2/test-v850/${cpu}-rtems/lib/libm.a
-srcdir=$r/src
-docdir=$d
-nm=${cpu}-rtems-nm
-size=${cpu}-rtems-size
-ar=${cpu}-rtems-ar
-
-#
-# All customization should be above this point
-#
-
-check_objs()
-{
- for i in *.o
- do
- ${nm} $i | grep "T ${symprefix}${1}$" >/dev/null
- if [ $? -eq 0 ] ; then
- echo $i
- return 0
- fi
- done
- return 1
-}
-per_manager()
-{
- docfile=$1
- shift
- subdirs=$*
- grep ^@item ${docfile} | grep "@code.* - " | \
- grep -v "@item E" | \
- grep -v "@code{CONFIGURE" | \
- grep -v "@value{RPREFIX" | \
- sed -e 's/@value{DIRPREFIX}/rtems_/' | \
- cut -d'{' -f2 | sed -e 's/}//' | cut -d'-' -f1 >/tmp/XXX.size
-
- if [ `wc -c </tmp/XXX.size` -eq 1 ] ; then
- return
- fi
- echo "====> `grep ^@chapter ${docfile} | sed -e 's/@chapter //'`"
- cat /tmp/XXX.size | while read line
- do
- # echo $line
- found=no
- for subd in ${subdirs}
- do
- if [ ${found} = "no" ] ; then
- cd ${objdir}/${subd}/o-optimize/
- objfile=`check_objs $line`
- if [ $? -eq 0 ] ; then
- found=yes
- #echo ${objfile}
- objcode=`${size} ${objfile} | tail -1 | cut -f1`
- objdata=`${size} ${objfile} | tail -1 | cut -f2`
- objbss=`${size} ${objfile} | tail -1 | cut -f3`
- objcode=`echo ${objcode}`
- objdata=`echo ${objdata}`
- objbss=`echo ${objbss}`
- echo "${line} - ${objcode}, ${objdata}, ${objbss}"
- fi
- fi
- done
- if [ ${found} = "no" ] ; then
- echo "$line - macro or not implemented"
- fi
-
- done
-}
-
-
-# extract libc
-if [ ! -d ${objdir}/newlib_extract/o-optimize ] ; then
- mkdir -p ${objdir}/newlib_extract/o-optimize
- cd ${objdir}/newlib_extract/o-optimize
- list=`${ar} t ${libc}`
- for i in $list
- do
- ${ar} x ${libc} ${i}
- done
-fi
-
-# extract libm
-if [ ! -d ${objdir}/libm_extract/o-optimize ] ; then
- mkdir -p ${objdir}/libm_extract/o-optimize
- cd ${objdir}/libm_extract/o-optimize
- list=`${ar} t ${libm}`
- for i in $list
- do
- ${ar} x ${libm} ${i}
- done
-fi
-
-# grab the size of the Classic API
-#
-# NOTE: This API is always configured.
-#
-cd ${docdir}/user
-echo
-echo "=============================================================="
-echo "=============================================================="
-echo "==== ===="
-echo "==== CLASSIC API SIZE INFORMATION ===="
-echo "==== ===="
-echo "=============================================================="
-echo "=============================================================="
-echo
-if [ -r ${objdir}/../../../${bsp}/lib/librtems.a ] ; then
- for i in *.t
- do
- per_manager $i exec/rtems/src exec/sapi/src lib/libc
- done
-else
- echo "RTEMS Classic API not configured."
-fi
-
-# Grab the size of the POSIX API
-cd ${docdir}/posix_users
-echo
-echo "=============================================================="
-echo "=============================================================="
-echo "==== ===="
-echo "==== POSIX 1003.1b API SIZE INFORMATION ===="
-echo "==== ===="
-echo "=============================================================="
-echo "=============================================================="
-echo
-if [ -r ${objdir}/../../../${bsp}/lib/libposix.a ] ; then
- for i in `ls -1 *.t | grep -v libc.t | grep -v libm.t`
- do
- per_manager $i exec/posix/src lib/libc newlib_extract
- done
-else
- echo "POSIX API not configured."
-fi
-
-# Grab the size of the POSIX routines provided by the C Library
-cd ${docdir}/posix_users
-echo
-echo "=============================================================="
-echo "=============================================================="
-echo "==== ===="
-echo "==== LIBC API SIZE INFORMATION ===="
-echo "==== ===="
-echo "=============================================================="
-echo "=============================================================="
-echo
-for i in libc.t
-do
- per_manager $i exec/posix/src lib/libc newlib_extract
-done
-
-# Grab the size of the libm routines
-cd ${docdir}/posix_users
-echo
-echo "=============================================================="
-echo "=============================================================="
-echo "==== ===="
-echo "==== LIBM API SIZE INFORMATION ===="
-echo "==== ===="
-echo "=============================================================="
-echo "=============================================================="
-echo
-for i in libm.t
-do
- per_manager $i exec/posix/src lib/libc libm_extract
-done
-
-
diff --git a/doc/posix_users/io.t b/doc/posix_users/io.t
deleted file mode 100644
index 143d174d13..0000000000
--- a/doc/posix_users/io.t
+++ /dev/null
@@ -1,1274 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Input and Output Primitives Manager
-
-@section Introduction
-
-The input and output primitives manager is ...
-
-The directives provided by the input and output primitives manager are:
-
-@itemize @bullet
-@item @code{pipe} - Create an Inter-Process Channel
-@item @code{dup} - Duplicates an open file descriptor
-@item @code{dup2} - Duplicates an open file descriptor
-@item @code{close} - Closes a file
-@item @code{read} - Reads from a file
-@item @code{write} - Writes to a file
-@item @code{fcntl} - Manipulates an open file descriptor
-@item @code{lseek} - Reposition read/write file offset
-@item @code{fsync} - Synchronize file complete in-core state with that on disk
-@item @code{fdatasync} - Synchronize file in-core data with that on disk
-@item @code{sync} - Schedule file system updates
-@item @code{mount} - Mount a file system
-@item @code{unmount} - Unmount file systems
-@item @code{readv} - Vectored read from a file
-@item @code{writev} - Vectored write to a file
-@item @code{aio_read} - Asynchronous Read
-@item @code{aio_write} - Asynchronous Write
-@item @code{lio_listio} - List Directed I/O
-@item @code{aio_error} - Retrieve Error Status of Asynchronous I/O Operation
-@item @code{aio_return} - Retrieve Return Status Asynchronous I/O Operation
-@item @code{aio_cancel} - Cancel Asynchronous I/O Request
-@item @code{aio_suspend} - Wait for Asynchronous I/O Request
-@item @code{aio_fsync} - Asynchronous File Synchronization
-@end itemize
-
-@section Background
-
-There is currently no text in this section.
-
-@section Operations
-
-There is currently no text in this section.
-
-@section Directives
-
-This section details the input and output primitives manager's directives.
-A subsection is dedicated to each of this manager's directives
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-@c
-@c
-@c
-@page
-@subsection pipe - Create an Inter-Process Channel
-
-@findex pipe
-@cindex create an inter
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int pipe(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-This routine is not currently supported by RTEMS but could be
-in a future version.
-
-@c
-@c
-@c
-@page
-@subsection dup - Duplicates an open file descriptor
-
-@findex dup
-@cindex duplicates an open file descriptor
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <unistd.h>
-
-int dup(
- int fildes
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EBADF
-Invalid file descriptor.
-
-@item EINTR
-Function was interrupted by a signal.
-
-@item EMFILE
-The process already has the maximum number of file descriptors open
-and tried to open a new one.
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{dup} function returns the lowest numbered available file
-descriptor. This new desciptor refers to the same open file as the
-original descriptor and shares any locks.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection dup2 - Duplicates an open file descriptor
-
-@findex dup2
-@cindex duplicates an open file descriptor
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <unistd.h>
-
-int dup2(
- int fildes,
- int fildes2
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EBADF
-Invalid file descriptor.
-
-@item EINTR
-Function was interrupted by a signal.
-
-@item EMFILE
-The process already has the maximum number of file descriptors open
-and tried to open a new one.
-@end table
-
-@subheading DESCRIPTION:
-
-@code{dup2} creates a copy of the file descriptor @code{oldfd}.
-
-The old and new descriptors may be used interchangeably. They share locks, file
-position pointers and flags; for example, if the file position is modified by using
-@code{lseek} on one of the descriptors, the position is also changed for the other.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection close - Closes a file
-
-@findex close
-@cindex closes a file.
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <unistd.h>
-
-int close(
- int fildes
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EBADF
-Invalid file descriptor
-
-@item EINTR
-Function was interrupted by a signal.
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{close()} function deallocates the file descriptor named by
-@code{fildes} and makes it available for reuse. All outstanding
-record locks owned by this process for the file are unlocked.
-
-@subheading NOTES:
-
-A signal can interrupt the @code{close()} function. In that case,
-@code{close()} returns -1 with @code{errno} set to EINTR. The file
-may or may not be closed.
-
-@c
-@c
-@c
-@page
-@subsection read - Reads from a file
-
-@findex read
-@cindex reads from a file
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <unistd.h>
-
-int read(
- int fildes,
- void *buf,
- unsigned int nbyte
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-On error, this routine returns -1 and sets @code{errno} to one of
-the following:
-
-@table @b
-@item EAGAIN
-The O_NONBLOCK flag is set for a file descriptor and the process
-would be delayed in the I/O operation.
-
-@item EBADF
-Invalid file descriptor
-
-@item EINTR
-Function was interrupted by a signal.
-
-@item EIO
-Input or output error
-
-@item EINVAL
-Bad buffer pointer
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{read()} function reads @code{nbyte} bytes from the file
-associated with @code{fildes} into the buffer pointed to by @code{buf}.
-
-The @code{read()} function returns the number of bytes actually read
-and placed in the buffer. This will be less than @code{nbyte} if:
-
-@itemize @bullet
-
-@item The number of bytes left in the file is less than @code{nbyte}.
-
-@item The @code{read()} request was interrupted by a signal.
-
-@item The file is a pipe or FIFO or special file with less than @code{nbytes}
-immediately available for reading.
-
-@end itemize
-
-When attempting to read from any empty pipe or FIFO:
-
-
-@itemize @bullet
-
-@item If no process has the pipe open for writing, zero is returned to
-indicate end-of-file.
-
-@item If some process has the pipe open for writing and O_NONBLOCK is set,
--1 is returned and @code{errno} is set to EAGAIN.
-
-@item If some process has the pipe open for writing and O_NONBLOCK is clear,
-@code{read()} waits for some data to be written or the pipe to be closed.
-
-@end itemize
-
-
-When attempting to read from a file other than a pipe or FIFO and no data
-is available.
-
-@itemize @bullet
-
-@item If O_NONBLOCK is set, -1 is returned and @code{errno} is set to EAGAIN.
-
-@item If O_NONBLOCK is clear, @code{read()} waits for some data to become
-available.
-
-@item The O_NONBLOCK flag is ignored if data is available.
-
-@end itemize
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection write - Writes to a file
-
-@findex write
-@cindex writes to a file
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <unistd.h>
-
-int write(
- int fildes,
- const void *buf,
- unsigned int nbytes
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EAGAIN
-The O_NONBLOCK flag is set for a file descriptor and the process
-would be delayed in the I/O operation.
-
-@item EBADF
-Invalid file descriptor
-
-@item EFBIG
-An attempt was made to write to a file that exceeds the maximum file
-size
-
-@item EINTR
-The function was interrupted by a signal.
-
-@item EIO
-Input or output error.
-
-@item ENOSPC
-No space left on disk.
-
-@item EPIPE
-Attempt to write to a pope or FIFO with no reader.
-
-@item EINVAL
-Bad buffer pointer
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{write()} function writes @code{nbyte} from the array pointed
-to by @code{buf} into the file associated with @code{fildes}.
-
-If @code{nybte} is zero and the file is a regular file, the @code{write()}
-function returns zero and has no other effect. If @code{nbyte} is zero
-and the file is a special file, te results are not portable.
-
-The @code{write()} function returns the number of bytes written. This
-number will be less than @code{nbytes} if there is an error. It will never
-be greater than @code{nbytes}.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection fcntl - Manipulates an open file descriptor
-
-@findex fcntl
-@cindex manipulates an open file descriptor
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <sys/types.h>
-#include <fcntl.h>
-#include <unistd.h>
-
-int fcntl(
- int fildes,
- int cmd
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EACCESS
-Search permission is denied for a direcotry in a file's path
-prefix.
-
-@item EAGAIN
-The O_NONBLOCK flag is set for a file descriptor and the process
-would be delayed in the I/O operation.
-
-@item EBADF
-Invalid file descriptor
-
-@item EDEADLK
-An @code{fcntl} with function F_SETLKW would cause a deadlock.
-
-@item EINTR
-The functioin was interrupted by a signal.
-
-@item EINVAL
-Invalid argument
-
-@item EMFILE
-Too many file descriptor or in use by the process.
-
-@item ENOLCK
-No locks available
-
-@end table
-
-@subheading DESCRIPTION:
-
-@code{fcntl()} performs one of various miscellaneous operations on
-@code{fd}. The operation in question is determined by @code{cmd}:
-
-@table @b
-
-@item F_DUPFD
-Makes @code{arg} be a copy of @code{fd}, closing @code{fd} first if necessary.
-
-The same functionality can be more easily achieved by using @code{dup2()}.
-
-The old and new descriptors may be used interchangeably. They share locks,
-file position pointers and flags; for example, if the file position is
-modified by using @code{lseek()} on one of the descriptors, the position is
-also changed for the other.
-
-The two descriptors do not share the close-on-exec flag, however. The
-close-on-exec flag of the copy is off, meaning that it will be closed on
-exec.
-
-On success, the new descriptor is returned.
-
-@item F_GETFD
-Read the close-on-exec flag. If the low-order bit is 0, the file will
-remain open across exec, otherwise it will be closed.
-
-@item F_SETFD
-Set the close-on-exec flag to the value specified by @code{arg} (only the least
-significant bit is used).
-
-@item F_GETFL
-Read the descriptor's flags (all flags (as set by open()) are returned).
-
-@item F_SETFL
-Set the descriptor's flags to the value specified by @code{arg}. Only
-@code{O_APPEND} and @code{O_NONBLOCK} may be set.
-
-The flags are shared between copies (made with @code{dup()} etc.) of the same
-file descriptor.
-
-The flags and their semantics are described in @code{open()}.
-
-@item F_GETLK, F_SETLK and F_SETLKW
-Manage discretionary file locks. The third argument @code{arg} is a pointer to a
-struct flock (that may be overwritten by this call).
-
-@item F_GETLK
-Return the flock structure that prevents us from obtaining the lock, or set the
-@code{l_type} field of the lock to @code{F_UNLCK} if there is no obstruction.
-
-@item F_SETLK
-The lock is set (when @code{l_type} is @code{F_RDLCK} or @code{F_WRLCK}) or
-cleared (when it is @code{F_UNLCK}. If lock is held by someone else, this
-call returns -1 and sets @code{errno} to EACCES or EAGAIN.
-
-@item F_SETLKW
-Like @code{F_SETLK}, but instead of returning an error we wait for the lock to
-be released.
-
-@item F_GETOWN
-Get the process ID (or process group) of the owner of a socket.
-
-Process groups are returned as negative values.
-
-@item F_SETOWN
-Set the process or process group that owns a socket.
-
-For these commands, ownership means receiving @code{SIGIO} or @code{SIGURG}
-signals.
-
-Process groups are specified using negative values.
-
-@end table
-
-@subheading NOTES:
-
-The errors returned by @code{dup2} are different from those returned by
-@code{F_DUPFD}.
-
-@c
-@c
-@c
-@page
-@subsection lseek - Reposition read/write file offset
-
-@findex lseek
-@cindex reposition read/write file offset
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <sys/types.h>
-#include <unistd.h>
-
-int lseek(
- int fildes,
- off_t offset,
- int whence
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EBADF
-@code{fildes} is not an open file descriptor.
-
-@item ESPIPE
-@code{fildes} is associated with a pipe, socket or FIFO.
-
-@item EINVAL
-@code{whence} is not a proper value.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{lseek} function repositions the offset of the file descriptor
-@code{fildes} to the argument offset according to the directive whence.
-The argument @code{fildes} must be an open file descriptor. @code{Lseek}
-repositions the file pointer fildes as follows:
-
-@itemize @bullet
-
-@item
-If @code{whence} is SEEK_SET, the offset is set to @code{offset} bytes.
-
-@item
-If @code{whence} is SEEK_CUR, the offset is set to its current location
-plus offset bytes.
-
-@item
-If @code{whence} is SEEK_END, the offset is set to the size of the
-file plus @code{offset} bytes.
-
-@end itemize
-
-The @code{lseek} function allows the file offset to be set beyond the end
-of the existing end-of-file of the file. If data is later written at this
-point, subsequent reads of the data in the gap return bytes of zeros
-(until data is actually written into the gap).
-
-Some devices are incapable of seeking. The value of the pointer associated
-with such a device is undefined.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection fsync - Synchronize file complete in-core state with that on disk
-
-@findex fsync
-@cindex synchronize file complete in
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int fsync(
- int fd
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-On success, zero is returned. On error, -1 is returned, and @code{errno}
-is set appropriately.
-
-@table @b
-@item EBADF
-@code{fd} is not a valid descriptor open for writing
-
-@item EINVAL
-@code{fd} is bound to a special file which does not support support synchronization
-
-@item EROFS
-@code{fd} is bound to a special file which does not support support synchronization
-
-@item EIO
-An error occurred during synchronization
-
-@end table
-
-@subheading DESCRIPTION:
-
-@code{fsync} copies all in-core parts of a file to disk.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection fdatasync - Synchronize file in-core data with that on disk
-
-@findex fdatasync
-@cindex synchronize file in
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int fdatasync(
- int fd
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-On success, zero is returned. On error, -1 is returned, and @code{errno} is
-set appropriately.
-
-@table @b
-@item EBADF
-@code{fd} is not a valid file descriptor open for writing.
-
-@item EINVAL
-@code{fd} is bound to a special file which does not support synchronization.
-
-@item EIO
-An error occurred during synchronization.
-
-@item EROFS
-@code{fd} is bound to a special file which dows not support synchronization.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@code{fdatasync} flushes all data buffers of a file to disk (before the system call
-returns). It resembles @code{fsync} but is not required to update the metadata such
-as access time.
-
-Applications that access databases or log files often write a tiny data fragment
-(e.g., one line in a log file) and then call @code{fsync} immediately in order to
-ensure that the written data is physically stored on the harddisk. Unfortunately,
-fsync will always initiate two write operations: one for the newly written data and
-another one in order to update the modification time stored in the inode. If the
-modification time is not a part of the transaction concept @code{fdatasync} can be
-used to avoid unnecessary inode disk write operations.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection sync - Schedule file system updates
-
-@findex sync
-@cindex synchronize file systems
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-void sync(void);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-NONE
-
-@subheading DESCRIPTION:
-
-The @code{sync} service causes all information in memory that updates
-file systems to be scheduled for writing out to all file systems.
-
-
-@subheading NOTES:
-
-The writing of data to the file systems is only guaranteed to be
-scheduled upon return. It is not necessarily complete upon return
-from @code{sync}.
-
-@c
-@c
-@c
-@page
-@subsection mount - Mount a file system
-
-@findex mount
-@cindex mount a file system
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <libio.h>
-
-int mount(
- rtems_filesystem_mount_table_entry_t **mt_entry,
- rtems_filesystem_operations_table *fs_ops,
- rtems_filesystem_options_t fsoptions,
- char *device,
- char *mount_point
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EXXX
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{mount} routines mounts the filesystem class
-which uses the filesystem operations specified by @code{fs_ops}
-and @code{fsoptions}. The filesystem is mounted at the directory
-@code{mount_point} and the mode of the mounted filesystem is
-specified by @code{fsoptions}. If this filesystem class requires
-a device, then the name of the device must be specified by @code{device}.
-
-If this operation succeeds, the mount table entry for the mounted
-filesystem is returned in @code{mt_entry}.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection unmount - Unmount file systems
-
-@findex unmount
-@cindex unmount file systems
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <libio.h>
-
-int unmount(
- const char *mount_path
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EXXX
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{unmount} routine removes the attachment of the filesystem specified
-by @code{mount_path}.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection readv - Vectored read from a file
-
-@findex readv
-@cindex vectored read from a file
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <sys/uio.h>
-
-ssize_t readv(
- int fd,
- const struct iovec *iov,
- int iovcnt
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-In addition to the errors detected by
-@code{Input and Output Primitives Manager read - Reads from a file, read()},
-this routine may return -1 and sets @code{errno} based upon the following
-errors:
-
-@table @b
-@item EINVAL
-The sum of the @code{iov_len} values in the iov array overflowed an
-@code{ssize_t}.
-
-@item EINVAL
-The @code{iovcnt} argument was less than or equal to 0, or greater
-than @code{IOV_MAX}.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{readv()} function is equivalent to @code{read()}
-except as described here. The @code{readv()} function shall place
-the input data into the @code{iovcnt} buffers specified by the
-members of the @code{iov} array: @code{iov[0], iov[1], ..., iov[iovcnt-1]}.
-
-Each @code{iovec} entry specifies the base address and length of an area
-in memory where data should be placed. The @code{readv()} function
-always fills an area completely before proceeding to the next.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection writev - Vectored write to a file
-
-@findex writev
-@cindex vectored write to a file
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <sys/uio.h>
-
-ssize_t writev(
- int fd,
- const struct iovec *iov,
- int iovcnt
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-In addition to the errors detected by
-@code{Input and Output Primitives Manager write - Write to a file, write()},
-this routine may return -1 and sets @code{errno} based upon the following
-errors:
-
-@table @b
-@item EINVAL
-The sum of the @code{iov_len} values in the iov array overflowed an
-@code{ssize_t}.
-
-@item EINVAL
-The @code{iovcnt} argument was less than or equal to 0, or greater
-than @code{IOV_MAX}.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{writev()} function is equivalent to @code{write()},
-except as noted here. The @code{writev()} function gathers output
-data from the @code{iovcnt} buffers specified by the members of
-the @code{iov array}: @code{iov[0], iov[1], ..., iov[iovcnt-1]}.
-The @code{iovcnt} argument is valid if greater than 0 and less
-than or equal to @code{IOV_MAX}.
-
-Each @code{iovec} entry specifies the base address and length of
-an area in memory from which data should be written. The @code{writev()}
-function always writes a complete area before proceeding to the next.
-
-If @code{fd} refers to a regular file and all of the @code{iov_len}
-members in the array pointed to by @code{iov} are 0, @code{writev()}
-returns 0 and has no other effect. For other file types, the behavior
-is unspecified by POSIX.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection aio_read - Asynchronous Read
-
-@findex aio_read
-@cindex asynchronous read
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int aio_read(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-This routine is not currently supported by RTEMS but could be
-in a future version.
-
-@c
-@c
-@c
-@page
-@subsection aio_write - Asynchronous Write
-
-@findex aio_write
-@cindex asynchronous write
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int aio_write(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-This routine is not currently supported by RTEMS but could be
-in a future version.
-
-@c
-@c
-@c
-@page
-@subsection lio_listio - List Directed I/O
-
-@findex lio_listio
-@cindex list directed i/o
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int lio_listio(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-This routine is not currently supported by RTEMS but could be
-in a future version.
-
-@c
-@c
-@c
-@page
-@subsection aio_error - Retrieve Error Status of Asynchronous I/O Operation
-
-@findex aio_error
-@cindex retrieve error status of asynchronous i/o operation
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int aio_error(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-This routine is not currently supported by RTEMS but could be
-in a future version.
-
-@c
-@c
-@c
-@page
-@subsection aio_return - Retrieve Return Status Asynchronous I/O Operation
-
-@findex aio_return
-@cindex retrieve return status asynchronous i/o operation
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int aio_return(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-This routine is not currently supported by RTEMS but could be
-in a future version.
-
-@c
-@c
-@c
-@page
-@subsection aio_cancel - Cancel Asynchronous I/O Request
-
-@findex aio_cancel
-@cindex cancel asynchronous i/o request
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int aio_cancel(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-This routine is not currently supported by RTEMS but could be
-in a future version.
-
-@c
-@c
-@c
-@page
-@subsection aio_suspend - Wait for Asynchronous I/O Request
-
-@findex aio_suspend
-@cindex wait for asynchronous i/o request
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int aio_suspend(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-This routine is not currently supported by RTEMS but could be
-in a future version.
-
-@c
-@c
-@c
-@page
-@subsection aio_fsync - Asynchronous File Synchronization
-
-@findex aio_fsync
-@cindex asynchronous file synchronization
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int aio_fsync(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-This routine is not currently supported by RTEMS but could be
-in a future version.
diff --git a/doc/posix_users/key.t b/doc/posix_users/key.t
deleted file mode 100644
index dd7a83d729..0000000000
--- a/doc/posix_users/key.t
+++ /dev/null
@@ -1,208 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Key Manager
-
-@section Introduction
-
-The key manager allows for the creation and deletion of Data keys
-specific to threads.
-
-The directives provided by the key manager are:
-
-@itemize @bullet
-@item @code{pthread_key_create} - Create Thread Specific Data Key
-@item @code{pthread_key_delete} - Delete Thread Specific Data Key
-@item @code{pthread_setspecific} - Set Thread Specific Key Value
-@item @code{pthread_getspecific} - Get Thread Specific Key Value
-@end itemize
-
-@section Background
-
-There is currently no text in this section.
-
-@section Operations
-
-There is currently no text in this section.
-
-@section Directives
-
-This section details the key manager's directives.
-A subsection is dedicated to each of this manager's directives
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-@c
-@c
-@c
-@page
-@subsection pthread_key_create - Create Thread Specific Data Key
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_key_create(
- pthread_key_t *key,
- void (*destructor)( void )
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EAGAIN
-There were not enough resources available to create another key.
-
-@item ENOMEM
-Insufficient memory exists to create the key.
-
-@end table
-
-@subheading DESCRIPTION
-The pthread_key_create() function shall create a thread-specific data
-key visible to all threads in the process. Key values provided by
-pthread_key_create() are opaque objects used to locate thread-specific
-data. Although the same key value may be used by different threads, the
-values bound to the key by pthread_setspecific() are maintained on a
-per-thread basis and persist for the life of the calling thread.
-
-Upon key creation, the value NULL shall be associated with the new key
-in all active threads. Upon thread creation, the value NULL shall be
-associated with all defined keys in the new thread.
-
-@subheading NOTES
-An optional destructor function may be associated with each key value.
-At thread exit, if a key value has a non-NULL destructor pointer, and
-the thread has a non-NULL value associated with that key, the value of
-the key is set to NULL, and then the function pointed to is called with
-the previously associated value as its sole argument. The order of
-destructor calls is unspecified if more than one destructor exists for
-a thread when it exits.
-
-@c
-@c
-@c
-@page
-@subsection pthread_key_delete - Delete Thread Specific Data Key
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_key_delete(
-pthread_key_t key);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The key was invalid
-
-@end table
-
-@subheading DESCRIPTION:
-The pthread_key_delete() function shall delete a thread-specific data key
-previously returned by pthread_key_create(). The thread-specific data
-values associated with key need not be NULL at the time pthread_key_delete()
-is called. It is the responsibility of the application to free any
-application storage or perform any cleanup actions for data structures related
-to the deleted key or associated thread-specific data in any
-threads; this cleanup can be done either before or after
-pthread_key_delete() is called. Any attempt to use key following the call to
-pthread_key_delete() results in undefined behavior.
-
-@subheading NOTES:
-The pthread_key_delete() function shall be callable from within
-destructor functions. No destructor functions shall be invoked by
-pthread_key_delete(). Any destructor function that may have been
-associated with key shall no longer be called upon thread exit.
-
-
-@c
-@c
-@c
-@page
-@subsection pthread_setspecific - Set Thread Specific Key Value
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_setspecific(
-pthread_key_t key,
-const void *value
-);
-@end example
-
-@subheading STATUS CODES:
-@table @b
-@item EINVAL
-The specified key is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-The pthread_setspecific() function shall associate a thread-specific value
-with a key obtained via a previous call to pthread_key_create().
-Different threads may bind different values to the same key. These values
-are typically pointers to blocks of dynamically allocated memory that
-have been reserved for use by the calling thread.
-
-@subheading NOTES:
-The effect of calling pthread_setspecific() with a key value not obtained
-from pthread_key_create() or after key has
-been deleted with pthread_key_delete() is undefined.
-
-pthread_setspecific() may be called from a thread-specific data
-destructor function. Calling pthread_setspecific() from a thread-specific
-data destructor routine may result either in lost storage (after at least
-PTHREAD_DESTRUCTOR_ITERATIONS attempts at destruction) or in an infinite loop.
-
-
-@c
-@c
-@c
-@page
-@subsection pthread_getspecific - Get Thread Specific Key Value
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-void *pthread_getspecific(
-pthread_key_t key
-);
-@end example
-
-@subheading STATUS CODES:
-@table @b
-@item NULL
-There is no thread-specific data associated with the specified key.
-
-@item non-NULL
-The data associated with the specified key.
-
-@end table
-
-@subheading DESCRIPTION:
-The pthread_getspecific() function shall return the value currently bound to
-the specified key on behalf of the calling thread.
-
-@subheading NOTES:
-The effect of calling pthread_getspecific() with a key value not obtained from
-pthread_key_create() or after key has
-been deleted with pthread_key_delete() is undefined.
-
-pthread_getspecific() may be called from a thread-specific data destructor
-function. A call to pthread_getspecific() for the thread-specific data key
-being destroyed shall return the value NULL, unless the value is changed
-(after the destructor starts) by a call to pthread_setspecific().
-
diff --git a/doc/posix_users/libc.t b/doc/posix_users/libc.t
deleted file mode 100644
index e8a312a37e..0000000000
--- a/doc/posix_users/libc.t
+++ /dev/null
@@ -1,345 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Services Provided by C Library (libc)
-
-@section Introduction
-
-This section lists the routines that provided by the Newlib C Library.
-
-@section Standard Utility Functions (stdlib.h)
-
-@itemize @bullet
-@item @code{abort} - Abnormal termination of a program
-@item @code{abs} - Integer absolute value (magnitude)
-@item @code{assert} - Macro for Debugging Diagnostics
-@item @code{atexit} - Request execution of functions at program exit
-@item @code{atof} - String to double or float
-@item @code{atoi} - String to integer
-@item @code{bsearch} - Binary search
-@item @code{calloc} - Allocate space for arrays
-@item @code{div} - Divide two integers
-@item @code{ecvtbuf} - Double or float to string of digits
-@item @code{ecvt} - Double or float to string of digits (malloc result)
-@item @code{__env_lock} - Lock environment list for getenv and setenv
-@item @code{gvcvt} - Format double or float as string
-@item @code{exit} - End program execution
-@item @code{getenv} - Look up environment variable
-@item @code{labs} - Long integer absolute value (magnitude)
-@item @code{ldiv} - Divide two long integers
-@item @code{malloc} - Allocate memory
-@item @code{realloc} - Reallocate memory
-@item @code{free} - Free previously allocated memory
-@item @code{mallinfo} - Get information about allocated memory
-@item @code{__malloc_lock} - Lock memory pool for malloc and free
-@item @code{mbstowcs} - Minimal multibyte string to wide string converter
-@item @code{mblen} - Minimal multibyte length
-@item @code{mbtowc} - Minimal multibyte to wide character converter
-@item @code{qsort} - Sort an array
-@item @code{rand} - Pseudo-random numbers
-@item @code{strtod} - String to double or float
-@item @code{strtol} - String to long
-@item @code{strtoul} - String to unsigned long
-@item @code{system} - Execute command string
-@item @code{wcstombs} - Minimal wide string to multibyte string converter
-@item @code{wctomb} - Minimal wide character to multibyte converter
-@end itemize
-
-@section Character Type Macros and Functions (ctype.h)
-
-@itemize @bullet
-@item @code{isalnum} - Alphanumeric character predicate
-@item @code{isalpha} - Alphabetic character predicate
-@item @code{isascii} - ASCII character predicate
-@item @code{iscntrl} - Control character predicate
-@item @code{isdigit} - Decimal digit predicate
-@item @code{islower} - Lower-case character predicate
-@item @code{isprint} - Printable character predicates (isprint, isgraph)
-@item @code{ispunct} - Punctuation character predicate
-@item @code{isspace} - Whitespace character predicate
-@item @code{isupper} - Uppercase character predicate
-@item @code{isxdigit} - Hexadecimal digit predicate
-@item @code{toascii} - Force integers to ASCII range
-@item @code{tolower} - Translate characters to lower case
-@item @code{toupper} - Translate characters to upper case
-@end itemize
-
-@section Input and Output (stdio.h)
-
-@itemize @bullet
-@item @code{clearerr} - Clear file or stream error indicator
-@item @code{fclose} - Close a file
-@item @code{feof} - Test for end of file
-@item @code{ferror} - Test whether read/write error has occurred
-@item @code{fflush} - Flush buffered file output
-@item @code{fgetc} - Get a character from a file or stream
-@item @code{fgetpos} - Record position in a stream or file
-@item @code{fgets} - Get character string from a file or stream
-@item @code{fiprintf} - Write formatted output to file (integer only)
-@item @code{fopen} - Open a file
-@item @code{fdopen} - Turn an open file into a stream
-@item @code{fputc} - Write a character on a stream or file
-@item @code{fputs} - Write a character string in a file or stream
-@item @code{fread} - Read array elements from a file
-@item @code{freopen} - Open a file using an existing file descriptor
-@item @code{fseek} - Set file position
-@item @code{fsetpos} - Restore position of a stream or file
-@item @code{ftell} - Return position in a stream or file
-@item @code{fwrite} - Write array elements from memory to a file or stream
-@item @code{getc} - Get a character from a file or stream (macro)
-@item @code{getchar} - Get a character from standard input (macro)
-@item @code{gets} - Get character string from standard input (obsolete)
-@item @code{iprintf} - Write formatted output (integer only)
-@item @code{mktemp} - Generate unused file name
-@item @code{perror} - Print an error message on standard error
-@item @code{putc} - Write a character on a stream or file (macro)
-@item @code{putchar} - Write a character on standard output (macro)
-@item @code{puts} - Write a character string on standard output
-@item @code{remove} - Delete a file's name
-@item @code{rename} - Rename a file
-@item @code{rewind} - Reinitialize a file or stream
-@item @code{setbuf} - Specify full buffering for a file or stream
-@item @code{setvbuf} - Specify buffering for a file or stream
-@item @code{siprintf} - Write formatted output (integer only)
-@item @code{printf} - Write formatted output
-@item @code{scanf} - Scan and format input
-@item @code{tmpfile} - Create a temporary file
-@item @code{tmpnam} - Generate name for a temporary file
-@item @code{vprintf} - Format variable argument list
-@end itemize
-
-@section Strings and Memory (string.h)
-
-@itemize @bullet
-@item @code{bcmp} - Compare two memory areas
-@item @code{bcopy} - Copy memory regions
-@item @code{bzero} - Initialize memory to zero
-@item @code{index} - Search for character in string
-@item @code{memchr} - Find character in memory
-@item @code{memcmp} - Compare two memory areas
-@item @code{memcpy} - Copy memory regions
-@item @code{memmove} - Move possibly overlapping memory
-@item @code{memset} - Set an area of memory
-@item @code{rindex} - Reverse search for character in string
-@item @code{strcasecmp} - Compare strings ignoring case
-@item @code{strcat} - Concatenate strings
-@item @code{strchr} - Search for character in string
-@item @code{strcmp} - Character string compare
-@item @code{strcoll} - Locale specific character string compare
-@item @code{strcpy} - Copy string
-@item @code{strcspn} - Count chars not in string
-@item @code{strerror} - Convert error number to string
-@item @code{strlen} - Character string length
-@item @code{strlwr} - Convert string to lower case
-@item @code{strncasecmp} - Compare strings ignoring case
-@item @code{strncat} - Concatenate strings
-@item @code{strncmp} - Character string compare
-@item @code{strncpy} - Counted copy string
-@item @code{strpbrk} - Find chars in string
-@item @code{strrchr} - Reverse search for character in string
-@item @code{strspn} - Find initial match
-@item @code{strstr} - Find string segment
-@item @code{strtok} - Get next token from a string
-@item @code{strupr} - Convert string to upper case
-@item @code{strxfrm} - Transform string
-@end itemize
-
-@section Signal Handling (signal.h)
-
-@itemize @bullet
-@item @code{raise} - Send a signal
-@item @code{signal} - Specify handler subroutine for a signal
-@end itemize
-
-@section Time Functions (time.h)
-
-@itemize @bullet
-@item @code{asctime} - Format time as string
-@item @code{clock} - Cumulative processor time
-@item @code{ctime} - Convert time to local and format as string
-@item @code{difftime} - Subtract two times
-@item @code{gmtime} - Convert time to UTC (GMT) traditional representation
-@item @code{localtime} - Convert time to local representation
-@item @code{mktime} - Convert time to arithmetic representation
-@item @code{strftime} - Flexible calendar time formatter
-@item @code{time} - Get current calendar time (as single number)
-@end itemize
-
-@section Locale (locale.h)
-
-@itemize @bullet
-@item @code{setlocale} - Select or query locale
-@end itemize
-
-@section Reentrant Versions of Functions
-
-
-@itemize @bullet
-@item Equivalent for errno variable:
-
-@itemize @bullet
-@item @code{errno_r} - XXX
-@end itemize
-
-@item Locale functions:
-
-@itemize @bullet
-@item @code{localeconv_r} - XXX
-@item @code{setlocale_r} - XXX
-@end itemize
-
-@item Equivalents for stdio variables:
-
-@itemize @bullet
-@item @code{stdin_r} - XXX
-@item @code{stdout_r} - XXX
-@item @code{stderr_r} - XXX
-@end itemize
-
-@item Stdio functions:
-
-@itemize @bullet
-@item @code{fdopen_r} - XXX
-@item @code{perror_r} - XXX
-@item @code{tempnam_r} - XXX
-@item @code{fopen_r} - XXX
-@item @code{putchar_r} - XXX
-@item @code{tmpnam_r} - XXX
-@item @code{getchar_r} - XXX
-@item @code{puts_r} - XXX
-@item @code{tmpfile_r} - XXX
-@item @code{gets_r} - XXX
-@item @code{remove_r} - XXX
-@item @code{vfprintf_r} - XXX
-@item @code{iprintf_r} - XXX
-@item @code{rename_r} - XXX
-@item @code{vsnprintf_r} - XXX
-@item @code{mkstemp_r} - XXX
-@item @code{snprintf_r} - XXX
-@item @code{vsprintf_r} - XXX
-@item @code{mktemp_t} - XXX
-@item @code{sprintf_r} - XXX
-@end itemize
-
-@item Signal functions:
-
-@itemize @bullet
-@item @code{init_signal_r} - XXX
-@item @code{signal_r} - XXX
-@item @code{kill_r} - XXX
-@item @code{_sigtramp_r} - XXX
-@item @code{raise_r} - XXX
-@end itemize
-
-@item Stdlib functions:
-
-@itemize @bullet
-@item @code{calloc_r} - XXX
-@item @code{mblen_r} - XXX
-@item @code{srand_r} - XXX
-@item @code{dtoa_r} - XXX
-@item @code{mbstowcs_r} - XXX
-@item @code{strtod_r} - XXX
-@item @code{free_r} - XXX
-@item @code{mbtowc_r} - XXX
-@item @code{strtol_r} - XXX
-@item @code{getenv_r} - XXX
-@item @code{memalign_r} - XXX
-@item @code{strtoul_r} - XXX
-@item @code{mallinfo_r} - XXX
-@item @code{mstats_r} - XXX
-@item @code{system_r} - XXX
-@item @code{malloc_r} - XXX
-@item @code{rand_r} - XXX
-@item @code{wcstombs_r} - XXX
-@item @code{malloc_r} - XXX
-@item @code{realloc_r} - XXX
-@item @code{wctomb_r} - XXX
-@item @code{malloc_stats_r} - XXX
-@item @code{setenv_r} - XXX
-@end itemize
-
-@item String functions:
-
-@itemize @bullet
-@item @code{strtok_r} - XXX
-@end itemize
-
-@item System functions:
-
-@itemize @bullet
-@item @code{close_r} - XXX
-@item @code{link_r} - XXX
-@item @code{unlink_r} - XXX
-@item @code{execve_r} - XXX
-@item @code{lseek_r} - XXX
-@item @code{wait_r} - XXX
-@item @code{fcntl_r} - XXX
-@item @code{open_r} - XXX
-@item @code{write_r} - XXX
-@item @code{fork_r} - XXX
-@item @code{read_r} - XXX
-@item @code{fstat_r} - XXX
-@item @code{sbrk_r} - XXX
-@item @code{gettimeofday_r} - XXX
-@item @code{stat_r} - XXX
-@item @code{getpid_r} - XXX
-@item @code{times_r} - XXX
-@end itemize
-
-@item Time function:
-
-@itemize @bullet
-@item @code{asctime_r} - XXX
-@end itemize
-
-@end itemize
-
-@section Miscellaneous Macros and Functions
-
-
-@itemize @bullet
-@item @code{unctrl} - Return printable representation of a character
-@end itemize
-
-@section Variable Argument Lists
-
-
-@itemize @bullet
-
-@item Stdarg (stdarg.h):
-@itemize @bullet
-@item @code{va_start} - XXX
-@item @code{va_arg} - XXX
-@item @code{va_end} - XXX
-@end itemize
-
-@item Vararg (varargs.h):
-@itemize @bullet
-@item @code{va_alist} - XXX
-@item @code{va_start-trad} - XXX
-@item @code{va_arg-trad} - XXX
-@item @code{va_end-trad} - XXX
-@end itemize
-@end itemize
-
-@section Reentrant System Calls
-
-@itemize @bullet
-@item @code{open_r} - XXX
-@item @code{close_r} - XXX
-@item @code{lseek_r} - XXX
-@item @code{read_r} - XXX
-@item @code{write_r} - XXX
-@item @code{fork_r} - XXX
-@item @code{wait_r} - XXX
-@item @code{stat_r} - XXX
-@item @code{fstat_r} - XXX
-@item @code{link_r} - XXX
-@item @code{unlink_r} - XXX
-@item @code{sbrk_r} - XXX
-@end itemize
-
-
diff --git a/doc/posix_users/libm.t b/doc/posix_users/libm.t
deleted file mode 100644
index c5820c4d80..0000000000
--- a/doc/posix_users/libm.t
+++ /dev/null
@@ -1,55 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Services Provided by the Math Library (libm)
-
-@section Introduction
-
-This section lists the routines that provided by the Newlib Math Library
-(libm).
-
-@section Standard Math Functions (math.h)
-
-@itemize @bullet
-@item @code{acos} - Arccosine
-@item @code{acosh} - Inverse hyperbolic cosine
-@item @code{asin} - Arcsine
-@item @code{asinh} - Inverse hyperbolic sine
-@item @code{atan} - Arctangent
-@item @code{atan2} - Arctangent of y/x
-@item @code{atanh} - Inverse hyperbolic tangent
-@item @code{jN} - Bessel functions (jN and yN)
-@item @code{cbrt} - Cube root
-@item @code{copysign} - Sign of Y and magnitude of X
-@item @code{cosh} - Hyperbolic cosine
-@item @code{erf} - Error function (erf and erfc)
-@item @code{exp} - Exponential
-@item @code{expm1} - Exponential of x and - 1
-@item @code{fabs} - Absolute value (magnitude)
-@item @code{floor} - Floor and ceiling (floor and ceil)
-@item @code{fmod} - Floating-point remainder (modulo)
-@item @code{frexp} - Split floating-point number
-@item @code{gamma} - Logarithmic gamma function
-@item @code{hypot} - Distance from origin
-@item @code{ilogb} - Get exponent
-@item @code{infinity} - Floating infinity
-@item @code{isnan} - Check type of number
-@item @code{ldexp} - Load exponent
-@item @code{log} - Natural logarithms
-@item @code{log10} - Base 10 logarithms
-@item @code{log1p} - Log of 1 + X
-@item @code{matherr} - Modifiable math error handler
-@item @code{modf} - Split fractional and integer parts
-@item @code{nan} - Floating Not a Number
-@item @code{nextafter} - Get next representable number
-@item @code{pow} - X to the power Y
-@item @code{remainder} - remainder of X divided by Y
-@item @code{scalbn} - scalbn
-@item @code{sin} - Sine or cosine (sin and cos)
-@item @code{sinh} - Hyperbolic sine
-@item @code{sqrt} - Positive square root
-@item @code{tan} - Tangent
-@item @code{tanh} - Hyperbolic tangent
-@end itemize
diff --git a/doc/posix_users/memorymgmt.t b/doc/posix_users/memorymgmt.t
deleted file mode 100644
index 5a5e03642a..0000000000
--- a/doc/posix_users/memorymgmt.t
+++ /dev/null
@@ -1,372 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Memory Management Manager
-
-@section Introduction
-
-The
-memory management manager is ...
-
-The directives provided by the memory management manager are:
-
-@itemize @bullet
-@item @code{mlockall} - Lock the Address Space of a Process
-@item @code{munlockall} - Unlock the Address Space of a Process
-@item @code{mlock} - Lock a Range of the Process Address Space
-@item @code{munlock} - Unlock a Range of the Process Address Space
-@item @code{mmap} - Map Process Addresses to a Memory Object
-@item @code{munmap} - Unmap Previously Mapped Addresses
-@item @code{mprotect} - Change Memory Protection
-@item @code{msync} - Memory Object Synchronization
-@item @code{shm_open} - Open a Shared Memory Object
-@item @code{shm_unlink} - Remove a Shared Memory Object
-@end itemize
-
-@section Background
-
-There is currently no text in this section.
-
-@section Operations
-
-There is currently no text in this section.
-
-@section Directives
-
-This section details the memory management manager's directives.
-A subsection is dedicated to each of this manager's directives
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-@c
-@c
-@c
-@page
-@subsection mlockall - Lock the Address Space of a Process
-
-@findex mlockall
-@cindex lock the address space of a process
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int mlockall(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection munlockall - Unlock the Address Space of a Process
-
-@findex munlockall
-@cindex unlock the address space of a process
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int munlockall(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection mlock - Lock a Range of the Process Address Space
-
-@findex mlock
-@cindex lock a range of the process address space
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int mlock(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection munlock - Unlock a Range of the Process Address Space
-
-@findex munlock
-@cindex unlock a range of the process address space
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int munlock(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection mmap - Map Process Addresses to a Memory Object
-
-@findex mmap
-@cindex map process addresses to a memory object
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int mmap(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection munmap - Unmap Previously Mapped Addresses
-
-@findex munmap
-@cindex unmap previously mapped addresses
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int munmap(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection mprotect - Change Memory Protection
-
-@findex mprotect
-@cindex change memory protection
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int mprotect(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection msync - Memory Object Synchronization
-
-@findex msync
-@cindex memory object synchronization
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int msync(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection shm_open - Open a Shared Memory Object
-
-@findex shm_open
-@cindex open a shared memory object
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int shm_open(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection shm_unlink - Remove a Shared Memory Object
-
-@findex shm_unlink
-@cindex remove a shared memory object
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int shm_unlink(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
diff --git a/doc/posix_users/message.t b/doc/posix_users/message.t
deleted file mode 100644
index 9e63f7f440..0000000000
--- a/doc/posix_users/message.t
+++ /dev/null
@@ -1,692 +0,0 @@
-@c
-@c COPYRIGHT(c) 1988-2002.
-@c On-Line Applications Research Corporation(OAR).
-@c All rights reserved.
-
-@chapter Message Passing Manager
-
-@section Introduction
-
-The message passing manager is the means to provide communication and
-synchronization capabilities using POSIX message queues.
-
-The directives provided by the message passing manager are:
-
-@itemize @bullet
-@item @code{mq_open} - Open a Message Queue
-@item @code{mq_close} - Close a Message Queue
-@item @code{mq_unlink} - Remove a Message Queue
-@item @code{mq_send} - Send a Message to a Message Queue
-@item @code{mq_receive} - Receive a Message from a Message Queue
-@item @code{mq_notify} - Notify Process that a Message is Available
-@item @code{mq_setattr} - Set Message Queue Attributes
-@item @code{mq_getattr} - Get Message Queue Attributes
-@end itemize
-
-@section Background
-
-@subsection Theory
-
-Message queues are named objects that operate with readers and writers.
-In addition, a message queue is a priority queue of discrete messages.
-POSIX message queues offer a certain, basic amount of application access
-to, and control over, the message queue geometry that can be changed.
-
-@subsection Messages
-
-A message is a variable length buffer where information can be stored to
-support communication. The length of the message and the information
-stored in that message are user-defined and can be actual data,
-pointer(s), or empty. There is a maximum acceptable length for a message
-that is associated with each message queue.
-
-@subsection Message Queues
-
-Message queues are named objects similar to the pipes of POSIX. They are
-a means of communicating data between multiple processes and for passing
-messages among tasks and ISRs. Message queues can contain a variable
-number of messages from 0 to an upper limit that is user defined. The
-maximum length of the message can be set on a per message queue basis.
-Normally messages are sent and received from the message queue in FIFO
-order. However, messages can also be prioritized and a priority queue
-established for the passing of messages. Synchronization is needed when a
-task waits for a message to arrive at a queue. Also, a task may poll a
-queue for the arrival of a message.
-
-@findex mqd_t
-The message queue descriptor @code{mqd_t} represents the message queue. It is
-passed as an argument to all of the message queue functions.
-
-@subsection Building a Message Queue Attribute Set
-
-The mq_attr structure is used to define the characteristics of the message
-queue.
-
-@findex mq_attr
-@example
-@group
-typedef struct mq_attr@{
- long mq_flags;
- long mq_maxmsg;
- long mq_msgsize;
- long mq_curmsgs;
-@};
-@end group
-@end example
-
-All of these attributes are set when the message queue is created using
-mq_open. The mq_flags field is not used in the creation of a message
-queue, it is only used by mq_setattr and mq_getattr. The structure
-mq_attr is passed as an argument to mq_setattr and mq_getattr.
-
-The mq_flags contain information affecting the behavior of the message
-queue. The O_NONBLOCK mq_flag is the only flag that is defined. In
-mq_setattr, the mq_flag can be set to dynamically change the blocking and
-non-blocking behavior of the message queue. If the non-block flag is set
-then the message queue is non-blocking, and requests to send and receive
-messages do not block waiting for resources. For a blocking message
-queue, a request to send might have to wait for an empty message queue,
-and a request to receive might have to wait for a message to arrive on the
-queue. Both mq_maxmsg and mq_msgsize affect the sizing of the message
-queue. mq_maxmsg specifies how many messages the queue can hold at any
-one time. mq_msgsize specifies the size of any one message on the queue.
-If either of these limits is exceeded, an error message results.
-
-Upon return from mq_getattr, the mq_curmsgs is set according to the
-current state of the message queue. This specifies the number of messages
-currently on the queue.
-
-@subsection Notification of a Message on the Queue
-
-Every message queue has the ability to notify one (and only one) process
-whenever the queue's state changes from empty (0 messages) to nonempty.
-This means that the process does not have to block or constantly poll
-while it waits for a message. By calling mq_notify, you can attach a
-notification request to a message queue. When a message is received by an
-empty queue, if there are no processes blocked and waiting for the
-message, then the queue notifies the requesting process of a message
-arrival. There is only one signal sent by the message queue, after that
-the notification request is de-registered and another process can attach
-its notification request. After receipt of a notification, a process must
-re-register if it wishes to be notified again.
-
-If there is a process blocked and waiting for the message, that process
-gets the message, and notification is not sent. It is also possible for
-another process to receive the message after the notification is sent but
-before the notified process has sent its receive request.
-
-Only one process can have a notification request attached to a message
-queue at any one time. If another process attempts to register a
-notification request, it fails. You can de-register for a message queue
-by passing a NULL to mq_notify, this removes any notification request
-attached to the queue. Whenever the message queue is closed, all
-notification attachments are removed.
-
-@subsection POSIX Interpretation Issues
-
-There is one significant point of interpretation related to
-the RTEMS implementation of POSIX message queues:
-
-@cite{What happens to threads already blocked on a message queue when the
-mode of that same message queue is changed from blocking to non-blocking?}
-
-
-The RTEMS POSIX implementation decided to unblock all waiting tasks
-with an @code{EAGAIN} status just as if a non-blocking version of
-the same operation had returned unsatisfied. This case is not
-discussed in the POSIX standard and other implementations may have
-chosen alternative behaviors.
-
-@section Operations
-
-@subsection Opening or Creating a Message Queue
-
-If the message queue already exists, mq_open() opens it, if the message
-queue does not exist, mq_open() creates it. When a message queue is
-created, the geometry of the message queue is contained in the attribute
-structure that is passed in as an argument. This includes mq_msgsize that
-dictates the maximum size of a single message, and the mq_maxmsg that
-dictates the maximum number of messages the queue can hold at one time.
-The blocking or non-blocking behavior of the queue can also specified.
-
-@subsection Closing a Message Queue
-
-The mq_close() function is used to close the connection made to a message
-queue that was made during mq_open. The message queue itself and the
-messages on the queue are persistent and remain after the queue is closed.
-
-@subsection Removing a Message Queue
-
-The mq_unlink() function removes the named message queue. If the message
-queue is not open when mq_unlink is called, then the queue is immediately
-eliminated. Any messages that were on the queue are lost, and the queue
-can not be opened again. If processes have the queue open when mq_unlink
-is called, the removal of the queue is delayed until the last process
-using the queue has finished. However, the name of the message queue is
-removed so that no other process can open it.
-
-@subsection Sending a Message to a Message Queue
-
-The mq_send() function adds the message in priority order to the message
-queue. Each message has an assigned a priority. The highest priority
-message is be at the front of the queue.
-
-The maximum number of messages that a message queue may accept is
-specified at creation by the mq_maxmsg field of the attribute structure.
-If this amount is exceeded, the behavior of the process is determined
-according to what oflag was used when the message queue was opened. If
-the queue was opened with O_NONBLOCK flag set, the process does not block,
-and an error is returned. If the O_NONBLOCK flag was not set, the process
-does block and wait for space on the queue.
-
-@subsection Receiving a Message from a Message Queue
-
-The mq_receive() function is used to receive the oldest of the highest
-priority message(s) from the message queue specified by mqdes. The
-messages are received in FIFO order within the priorities. The received
-message's priority is stored in the location referenced by the msg_prio.
-If the msg_prio is a NULL, the priority is discarded. The message is
-removed and stored in an area pointed to by msg_ptr whose length is of
-msg_len. The msg_len must be at least equal to the mq_msgsize attribute
-of the message queue.
-
-The blocking behavior of the message queue is set by O_NONBLOCK at mq_open
-or by setting O_NONBLOCK in mq_flags in a call to mq_setattr. If this is
-a blocking queue, the process does block and wait on an empty queue. If
-this a non-blocking queue, the process does not block. Upon successful
-completion, mq_receive returns the length of the selected message in bytes
-and the message is removed from the queue.
-
-@subsection Notification of Receipt of a Message on an Empty Queue
-
-The mq_notify() function registers the calling process to be notified of
-message arrival at an empty message queue. Every message queue has the
-ability to notify one (and only one) process whenever the queue's state
-changes from empty (0 messages) to nonempty. This means that the process
-does not have to block or constantly poll while it waits for a message.
-By calling mq_notify, a notification request is attached to a message
-queue. When a message is received by an empty queue, if there are no
-processes blocked and waiting for the message, then the queue notifies the
-requesting process of a message arrival. There is only one signal sent by
-the message queue, after that the notification request is de-registered
-and another process can attach its notification request. After receipt of
-a notification, a process must re-register if it wishes to be notified
-again.
-
-If there is a process blocked and waiting for the message, that process
-gets the message, and notification is not sent. Only one process can have
-a notification request attached to a message queue at any one time. If
-another process attempts to register a notification request, it fails.
-You can de-register for a message queue by passing a NULL to mq_notify,
-this removes any notification request attached to the queue. Whenever the
-message queue is closed, all notification attachments are removed.
-
-@subsection Setting the Attributes of a Message Queue
-
-The mq_setattr() function is used to set attributes associated with the
-open message queue description referenced by the message queue descriptor
-specified by mqdes. The *omqstat represents the old or previous
-attributes. If omqstat is non-NULL, the function mq_setattr() stores, in
-the location referenced by omqstat, the previous message queue attributes
-and the current queue status. These values are the same as would be
-returned by a call to mq_getattr() at that point.
-
-There is only one mq_attr.mq_flag that can be altered by this call. This
-is the flag that deals with the blocking and non-blocking behavior of the
-message queue. If the flag is set then the message queue is non-blocking,
-and requests to send or receive do not block while waiting for resources.
-If the flag is not set, then message send and receive may involve waiting
-for an empty queue or waiting for a message to arrive.
-
-@subsection Getting the Attributes of a Message Queue
-
-The mq_getattr() function is used to get status information and attributes
-of the message queue associated with the message queue descriptor. The
-results are returned in the mq_attr structure referenced by the mqstat
-argument. All of these attributes are set at create time, except the
-blocking/non-blocking behavior of the message queue which can be
-dynamically set by using mq_setattr. The attribute mq_curmsg is set to
-reflect the number of messages on the queue at the time that mq_getattr
-was called.
-
-@section Directives
-
-This section details the message passing manager's directives. A
-subsection is dedicated to each of this manager's directives and describes
-the calling sequence, related constants, usage, and status codes.
-
-@c
-@c
-@c
-@page
-@subsection mq_open - Open a Message Queue
-
-@findex mq_open
-@cindex open a message queue
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <mqueue.h>
-
-mqd_t mq_open(
- const char *name,
- int oflag,
- mode_t mode,
- struct mq_attr *attr
-);
-@end example
-
-@subheading STATUS CODES:
-
-@code{EACCES} - Either the message queue exists and the permissions
-requested in oflags were denied, or the message does not exist and
-permission to create one is denied.
-
-@code{EEXIST} - You tried to create a message queue that already exists.
-
-@code{EINVAL} - An inappropriate name was given for the message queue, or
-the values of mq-maxmsg or mq_msgsize were less than 0.
-
-@code{ENOENT} - The message queue does not exist, and you did not specify
-to create it.
-
-@code{EINTR} - The call to mq_open was interrupted by a signal.
-
-@code{EMFILE} - The process has too many files or message queues open.
-This is a process limit error.
-
-@code{ENFILE} - The system has run out of resources to support more open
-message queues. This is a system error.
-
-@code{ENAMETOOLONG} - mq_name is too long.
-
-@subheading DESCRIPTION:
-
-The mq_open () function establishes the connection between a process and a
-message queue with a message queue descriptor. If the message queue
-already exists, mq_open opens it, if the message queue does not exist,
-mq_open creates it. Message queues can have multiple senders and
-receivers. If mq_open is successful, the function returns a message queue
-descriptor. Otherwise, the function returns a -1 and sets 'errno' to
-indicate the error.
-
-The name of the message queue is used as an argument. For the best of
-portability, the name of the message queue should begin with a "/" and no
-other "/" should be in the name. Different systems interpret the name in
-different ways.
-
-The oflags contain information on how the message is opened if the queue
-already exists. This may be O_RDONLY for read only, O_WRONLY for write
-only, of O_RDWR, for read and write.
-
-In addition, the oflags contain information needed in the creation of a
-message queue. @code{O_NONBLOCK} - If the non-block flag is set then the
-message queue is non-blocking, and requests to send and receive messages
-do not block waiting for resources. If the flag is not set then the
-message queue is blocking, and a request to send might have to wait for an
-empty message queue. Similarly, a request to receive might have to wait
-for a message to arrive on the queue. @code{O_CREAT} - This call specifies
-that the call the mq_open is to create a new message queue. In this case
-the mode and attribute arguments of the function call are utilized. The
-message queue is created with a mode similar to the creation of a file,
-read and write permission creator, group, and others.
-
-The geometry of the message queue is contained in the attribute structure.
-This includes mq_msgsize that dictates the maximum size of a single
-message, and the mq_maxmsg that dictates the maximum number of messages
-the queue can hold at one time. If a NULL is used in the mq_attr
-argument, then the message queue is created with implementation defined
-defaults. @code{O_EXCL} - is always set if O_CREAT flag is set. If the
-message queue already exists, O_EXCL causes an error message to be
-returned, otherwise, the new message queue fails and appends to the
-existing one.
-
-@subheading NOTES:
-
-The mq_open () function does not add or remove messages from the queue.
-When a new message queue is being created, the mq_flag field of the
-attribute structure is not used.
-
-@c
-@c
-@c
-@page
-@subsection mq_close - Close a Message Queue
-
-@findex mq_close
-@cindex close a message queue
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <mqueue.h>
-
-int mq_close(
- mqd_t mqdes
-);
-@end example
-
-@subheading STATUS CODES:
-
-@code{EINVAL} - The descriptor does not represent a valid open message
-queue
-
-@subheading DESCRIPTION:
-
-The mq_close function removes the association between the message queue
-descriptor, mqdes, and its message queue. If mq_close() is successfully
-completed, the function returns a value of zero; otherwise, the function
-returns a value of -1 and sets errno to indicate the error.
-
-@subheading NOTES:
-
-If the process had successfully attached a notification request to the
-message queue via mq_notify, this attachment is removed, and the message
-queue is available for another process to attach for notification.
-mq_close has no effect on the contents of the message queue, all the
-messages that were in the queue remain in the queue.
-
-@c
-@c
-@c
-@page
-@subsection mq_unlink - Remove a Message Queue
-
-@findex mq_unlink
-@cindex remove a message queue
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <mqueue.h>
-
-int mq_unlink(
- const char *name
-);
-@end example
-
-@subheading STATUS CODES:
-
-@code{EINVAL} - The descriptor does not represent a valid message queue
-
-@subheading DESCRIPTION:
-
-The mq_unlink() function removes the named message queue. If the message
-queue is not open when mq_unlink is called, then the queue is immediately
-eliminated. Any messages that were on the queue are lost, and the queue
-can not be opened again. If processes have the queue open when mq_unlink
-is called, the removal of the queue is delayed until the last process
-using the queue has finished. However, the name of the message queue is
-removed so that no other process can open it. Upon successful completion,
-the function returns a value of zero. Otherwise, the named message queue
-is not changed by this function call, and the function returns a value of
--1 and sets errno to indicate the error.
-
-@subheading NOTES:
-
-Calls to mq_open() to re-create the message queue may fail until the
-message queue is actually removed. However, the mq_unlink() call need not
-block until all references have been closed; it may return immediately.
-
-@c
-@c
-@c
-@page
-@subsection mq_send - Send a Message to a Message Queue
-
-@findex mq_send
-@cindex send a message to a message queue
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include<mqueue.h>
-int mq_send(
- mqd_t mqdes,
- const char *msg_ptr,
- size_t msg_len,
- unsigned int msg_prio
-);
-@end example
-
-@subheading STATUS CODES:
-
-@code{EBADF} - The descriptor does not represent a valid message queue, or the queue was opened for read only O_RDONLY
-@code{EINVAL} - The value of msg_prio was greater than the MQ_PRIO_MAX.
-@code{EMSGSIZE} - The msg_len is greater than the mq_msgsize attribute of the message queue
-@code{EAGAIN} - The message queue is non-blocking, and there is no room on the queue for another message as specified by the mq_maxmsg.
-@code{EINTR} - The message queue is blocking. While the process was waiting for free space on the queue, a signal arrived that interrupted the wait.
-
-@subheading DESCRIPTION:
-
-The mq_send() function adds the message pointed to by the argument msg_ptr
-to the message queue specified by mqdes. Each message is assigned a
-priority , from 0 to MQ_PRIO_MAX. MQ_PRIO_MAX is defined in <limits.h> and
-must be at least 32. Messages are added to the queue in order of their
-priority. The highest priority message is at the front of the queue.
-
-The maximum number of messages that a message queue may accept is
-specified at creation by the mq_maxmsg field of the attribute structure.
-If this amount is exceeded, the behavior of the process is determined
-according to what oflag was used when the message queue was opened. If
-the queue was opened with O_NONBLOCK flag set, then the EAGAIN error is
-returned. If the O_NONBLOCK flag was not set, the process blocks and
-waits for space on the queue, unless it is interrupted by a signal.
-
-Upon successful completion, the mq_send () function returns a value of
-zero. Otherwise, no message is enqueued, the function returns -1, and
-errno is set to indicate the error.
-
-@subheading NOTES:
-
-If the specified message queue is not full, mq_send inserts the message at
-the position indicated by the msg_prio argument.
-
-@c
-@c
-@c
-@page
-@subsection mq_receive - Receive a Message from a Message Queue
-
-@findex mq_receive
-@cindex receive a message from a message queue
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <mqueue.h>
-
-size_t mq_receive(
- mqd_t mqdes,
- char *msg_ptr,
- size_t msg_len,
- unsigned int *msg_prio
-);
-@end example
-
-@subheading STATUS CODES:
-
-@code{EBADF} - The descriptor does not represent a valid message queue, or the queue was opened for write only O_WRONLY
-@code{EMSGSIZE} - The msg_len is less than the mq_msgsize attribute of the message queue
-@code{EAGAIN} - The message queue is non-blocking, and the queue is empty
-@code{EINTR} - The message queue is blocking. While the process was waiting for a message to arrive on the queue, a signal arrived that interrupted the wait.
-
-@subheading DESCRIPTION:
-
-The mq_receive function is used to receive the oldest of the highest
-priority message(s) from the message queue specified by mqdes. The
-messages are received in FIFO order within the priorities. The received
-message's priority is stored in the location referenced by the msg_prio.
-If the msg_prio is a NULL, the priority is discarded. The message is
-removed and stored in an area pointed to by msg_ptr whose length is of
-msg_len. The msg_len must be at least equal to the mq_msgsize attribute
-of the message queue.
-
-The blocking behavior of the message queue is set by O_NONBLOCK at mq_open
-or by setting O_NONBLOCK in mq_flags in a call to mq_setattr. If this is
-a blocking queue, the process blocks and waits on an empty queue. If this
-a non-blocking queue, the process does not block.
-
-Upon successful completion, mq_receive returns the length of the selected
-message in bytes and the message is removed from the queue. Otherwise, no
-message is removed from the queue, the function returns a value of -1, and
-sets errno to indicate the error.
-
-@subheading NOTES:
-
-If the size of the buffer in bytes, specified by the msg_len argument, is
-less than the mq_msgsize attribute of the message queue, the function
-fails and returns an error
-
-@c
-@c
-@c
-@page
-@subsection mq_notify - Notify Process that a Message is Available
-
-@findex mq_notify
-@cindex notify process that a message is available
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <mqueue.h>
-
-int mq_notify(
- mqd_t mqdes,
- const struct sigevent *notification
-);
-@end example
-
-@subheading STATUS CODES:
-
-@code{EBADF} - The descriptor does not refer to a valid message queue
-@code{EBUSY} - A notification request is already attached to the queue
-
-@subheading DESCRIPTION:
-
-If the argument notification is not NULL, this function registers the
-calling process to be notified of message arrival at an empty message
-queue associated with the specified message queue descriptor, mqdes.
-
-Every message queue has the ability to notify one (and only one) process
-whenever the queue's state changes from empty (0 messages) to nonempty.
-This means that the process does not have to block or constantly poll
-while it waits for a message. By calling mq_notify, a notification
-request is attached to a message queue. When a message is received by an
-empty queue, if there are no processes blocked and waiting for the
-message, then the queue notifies the requesting process of a message
-arrival. There is only one signal sent by the message queue, after that
-the notification request is de-registered and another process can attach
-its notification request. After receipt of a notification, a process must
-re-register if it wishes to be notified again.
-
-If there is a process blocked and waiting for the message, that process
-gets the message, and notification is not be sent. Only one process can
-have a notification request attached to a message queue at any one time.
-If another process attempts to register a notification request, it fails.
-You can de-register for a message queue by passing a NULL to mq_notify;
-this removes any notification request attached to the queue. Whenever the
-message queue is closed, all notification attachments are removed.
-
-Upon successful completion, mq_notify returns a value of zero; otherwise,
-the function returns a value of -1 and sets errno to indicate the error.
-
-@subheading NOTES:
-
-It is possible for another process to receive the message after the notification is sent but before the notified process has sent its receive request.
-
-@c
-@c
-@c
-@page
-@subsection mq_setattr - Set Message Queue Attributes
-
-@findex mq_setattr
-@cindex set message queue attributes
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <mqueue.h>
-
-int mq_setattr(
- mqd_t mqdes,
- const struct mq_attr *mqstat,
- struct mq_attr *omqstat
-);
-@end example
-
-@subheading STATUS CODES:
-
-@code{EBADF} - The message queue descriptor does not refer to a valid, open queue.
-@code{EINVAL} - The mq_flag value is invalid.
-
-@subheading DESCRIPTION:
-
-The mq_setattr function is used to set attributes associated with the open
-message queue description referenced by the message queue descriptor
-specified by mqdes. The *omqstat represents the old or previous
-attributes. If omqstat is non-NULL, the function mq_setattr() stores, in
-the location referenced by omqstat, the previous message queue attributes
-and the current queue status. These values are the same as would be
-returned by a call to mq_getattr() at that point.
-
-There is only one mq_attr.mq_flag which can be altered by this call.
-This is the flag that deals with the blocking and non-blocking behavior of
-the message queue. If the flag is set then the message queue is
-non-blocking, and requests to send or receive do not block while waiting
-for resources. If the flag is not set, then message send and receive may
-involve waiting for an empty queue or waiting for a message to arrive.
-
-Upon successful completion, the function returns a value of zero and the
-attributes of the message queue have been changed as specified.
-Otherwise, the message queue attributes is unchanged, and the function
-returns a value of -1 and sets errno to indicate the error.
-
-@subheading NOTES:
-
-All other fields in the mq_attr are ignored by this call.
-
-@c
-@c
-@c
-@page
-@subsection mq_getattr - Get Message Queue Attributes
-
-@findex mq_getattr
-@cindex get message queue attributes
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <mqueue.h>
-int mq_getattr(
- mqd_t mqdes,
- struct mq_attr *mqstat
-);
-@end example
-
-@subheading STATUS CODES:
-
-@code{EBADF} - The message queue descriptor does not refer to a valid,
-open message queue.
-
-@subheading DESCRIPTION:
-
-The mqdes argument specifies a message queue descriptor. The mq_getattr
-function is used to get status information and attributes of the message
-queue associated with the message queue descriptor. The results are
-returned in the mq_attr structure referenced by the mqstat argument. All
-of these attributes are set at create time, except the
-blocking/non-blocking behavior of the message queue which can be
-dynamically set by using mq_setattr. The attribute mq_curmsg is set to
-reflect the number of messages on the queue at the time that mq_getattr
-was called.
-
-Upon successful completion, the mq_getattr function returns zero.
-Otherwise, the function returns -1 and sets errno to indicate the error.
-
-@subheading NOTES:
-
diff --git a/doc/posix_users/mutex.t b/doc/posix_users/mutex.t
deleted file mode 100644
index 47f094dad4..0000000000
--- a/doc/posix_users/mutex.t
+++ /dev/null
@@ -1,745 +0,0 @@
-@c
-@c COPYRIGHT (c) 1989-2008.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Mutex Manager
-
-@section Introduction
-
-The mutex manager implements the functionality required of the mutex
-manager as defined by POSIX 1003.1b-1996. This standard requires that
-a compliant operating system provide the facilties to ensure that
-threads can operate with mutual exclusion from one another and
-defines the API that must be provided.
-
-The services provided by the mutex manager are:
-
-@itemize @bullet
-@item @code{pthread_mutexattr_init} - Initialize a Mutex Attribute Set
-@item @code{pthread_mutexattr_destroy} - Destroy a Mutex Attribute Set
-@item @code{pthread_mutexattr_setprotocol} - Set the Blocking Protocol
-@item @code{pthread_mutexattr_getprotocol} - Get the Blocking Protocol
-@item @code{pthread_mutexattr_setprioceiling} - Set the Priority Ceiling
-@item @code{pthread_mutexattr_getprioceiling} - Get the Priority Ceiling
-@item @code{pthread_mutexattr_setpshared} - Set the Visibility
-@item @code{pthread_mutexattr_getpshared} - Get the Visibility
-@item @code{pthread_mutex_init} - Initialize a Mutex
-@item @code{pthread_mutex_destroy} - Destroy a Mutex
-@item @code{pthread_mutex_lock} - Lock a Mutex
-@item @code{pthread_mutex_trylock} - Poll to Lock a Mutex
-@item @code{pthread_mutex_timedlock} - Lock a Mutex with Timeout
-@item @code{pthread_mutex_unlock} - Unlock a Mutex
-@item @code{pthread_mutex_setprioceiling} - Dynamically Set the Priority Ceiling
-@item @code{pthread_mutex_getprioceiling} - Dynamically Get the Priority Ceiling
-@end itemize
-
-@section Background
-
-@subsection Mutex Attributes
-
-Mutex attributes are utilized only at mutex creation time. A mutex
-attribute structure may be initialized and passed as an argument to
-the @code{mutex_init} routine. Note that the priority ceiling of
-a mutex may be set at run-time.
-
-@table @b
-@item blocking protcol
-is the XXX
-
-@item priority ceiling
-is the XXX
-
-@item pshared
-is the XXX
-
-@end table
-
-@subsection PTHREAD_MUTEX_INITIALIZER
-
-This is a special value that a variable of type @code{pthread_mutex_t}
-may be statically initialized to as shown below:
-
-@example
-pthread_mutex_t my_mutex = PTHREAD_MUTEX_INITIALIZER;
-@end example
-
-This indicates that @code{my_mutex} will be automatically initialized
-by an implicit call to @code{pthread_mutex_init} the first time
-the mutex is used.
-
-Note that the mutex will be initialized with default attributes.
-
-@section Operations
-
-There is currently no text in this section.
-
-@section Services
-
-This section details the mutex manager's services.
-A subsection is dedicated to each of this manager's services
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-@c
-@c
-@c
-@page
-@subsection pthread_mutexattr_init - Initialize a Mutex Attribute Set
-
-@findex pthread_mutexattr_init
-@cindex initialize a mutex attribute set
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_mutexattr_init(
- pthread_mutexattr_t *attr
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The attribute pointer argument is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_mutexattr_init} routine initializes the mutex attributes
-object specified by @code{attr} with the default value for all of the
-individual attributes.
-
-@subheading NOTES:
-
-XXX insert list of default attributes here.
-
-@c
-@c
-@c
-@page
-@subsection pthread_mutexattr_destroy - Destroy a Mutex Attribute Set
-
-@findex pthread_mutexattr_destroy
-@cindex destroy a mutex attribute set
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_mutexattr_destroy(
- pthread_mutexattr_t *attr
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The attribute pointer argument is invalid.
-
-@item EINVAL
-The attribute set is not initialized.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_mutex_attr_destroy} routine is used to destroy a mutex
-attributes object. The behavior of using an attributes object after
-it is destroyed is implementation dependent.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection pthread_mutexattr_setprotocol - Set the Blocking Protocol
-
-@findex pthread_mutexattr_setprotocol
-@cindex set the blocking protocol
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_mutexattr_setprotocol(
- pthread_mutexattr_t *attr,
- int protocol
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The attribute pointer argument is invalid.
-
-@item EINVAL
-The attribute set is not initialized.
-
-@item EINVAL
-The protocol argument is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_mutexattr_setprotocol} routine is used to set value of the
-@code{protocol} attribute. This attribute controls the order in which
-threads waiting on this mutex will receive it.
-
-The @code{protocol} can be one of the following:
-
-@table @b
-
-@item @code{PTHREAD_PRIO_NONE}
-in which case blocking order is FIFO.
-
-@item @code{PTHREAD_PRIO_INHERIT}
-in which case blocking order is priority with the priority inheritance
-protocol in effect.
-
-@item @code{PTHREAD_PRIO_PROTECT}
-in which case blocking order is priority with the priority ceiling
-protocol in effect.
-
-@end table
-
-@subheading NOTES:
-
-There is currently no way to get simple priority blocking ordering
-with POSIX mutexes even though this could easily by supported by RTEMS.
-
-@c
-@c
-@c
-@page
-@subsection pthread_mutexattr_getprotocol - Get the Blocking Protocol
-
-@findex pthread_mutexattr_getprotocol
-@cindex get the blocking protocol
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_mutexattr_getprotocol(
- pthread_mutexattr_t *attr,
- int *protocol
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The attribute pointer argument is invalid.
-
-@item EINVAL
-The attribute set is not initialized.
-
-@item EINVAL
-The protocol pointer argument is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_mutexattr_getprotocol} routine is used to obtain
-the value of the @code{protocol} attribute. This attribute controls
-the order in which threads waiting on this mutex will receive it.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection pthread_mutexattr_setprioceiling - Set the Priority Ceiling
-
-@findex pthread_mutexattr_setprioceiling
-@cindex set the priority ceiling
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_mutexattr_setprioceiling(
- pthread_mutexattr_t *attr,
- int prioceiling
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The attribute pointer argument is invalid.
-
-@item EINVAL
-The attribute set is not initialized.
-
-@item EINVAL
-The prioceiling argument is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_mutexattr_setprioceiling} routine is used to set value of the
-@code{prioceiling} attribute. This attribute specifies the priority that
-is the ceiling for threads obtaining this mutex. Any task obtaining this
-mutex may not be of greater priority that the ceiling. If it is of lower
-priority, then its priority will be elevated to @code{prioceiling}.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection pthread_mutexattr_getprioceiling - Get the Priority Ceiling
-
-@findex pthread_mutexattr_getprioceiling
-@cindex get the priority ceiling
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_mutexattr_getprioceiling(
- const pthread_mutexattr_t *attr,
- int *prioceiling
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The attribute pointer argument is invalid.
-
-@item EINVAL
-The attribute set is not initialized.
-
-@item EINVAL
-The prioceiling pointer argument is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_mutexattr_getprioceiling} routine is used to obtain the
-value of the @code{prioceiling} attribute. This attribute specifies the
-priority ceiling for this mutex.
-
-
-@subheading NOTES:
-
-
-NONE
-@c
-@c
-@c
-@page
-@subsection pthread_mutexattr_setpshared - Set the Visibility
-
-@findex pthread_mutexattr_setpshared
-@cindex set the visibility
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_mutexattr_setpshared(
- pthread_mutexattr_t *attr,
- int pshared
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The attribute pointer argument is invalid.
-
-@item EINVAL
-The attribute set is not initialized.
-
-@item EINVAL
-The pshared argument is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection pthread_mutexattr_getpshared - Get the Visibility
-
-@findex pthread_mutexattr_getpshared
-@cindex get the visibility
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_mutexattr_getpshared(
- const pthread_mutexattr_t *attr,
- int *pshared
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The attribute pointer argument is invalid.
-
-@item EINVAL
-The attribute set is not initialized.
-
-@item EINVAL
-The pshared pointer argument is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection pthread_mutex_init - Initialize a Mutex
-
-@findex pthread_mutex_init
-@cindex initialize a mutex
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_mutex_init(
- pthread_mutex_t *mutex,
- const pthread_mutexattr_t *attr
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The attribute set is not initialized.
-
-@item EINVAL
-The specified protocol is invalid.
-
-@item EAGAIN
-The system lacked the necessary resources to initialize another mutex.
-
-@item ENOMEM
-Insufficient memory exists to initialize the mutex.
-
-@item EBUSY
-Attempted to reinialize the object reference by mutex, a previously
-initialized, but not yet destroyed.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection pthread_mutex_destroy - Destroy a Mutex
-
-@findex pthread_mutex_destroy
-@cindex destroy a mutex
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_mutex_destroy(
- pthread_mutex_t *mutex
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The specified mutex is invalid.
-
-@item EBUSY
-Attempted to destroy the object reference by mutex, while it is locked or
-referenced by another thread.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection pthread_mutex_lock - Lock a Mutex
-
-@findex pthread_mutex_lock
-@cindex lock a mutex
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_mutex_lock(
- pthread_mutex_t *mutex
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The specified mutex is invalid.
-
-@item EINVAL
-The mutex has the protocol attribute of PTHREAD_PRIO_PROTECT and the
-priority of the calling thread is higher than the current priority
-ceiling.
-
-@item EDEADLK
-The current thread already owns the mutex.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection pthread_mutex_trylock - Poll to Lock a Mutex
-
-@findex pthread_mutex_trylock
-@cindex poll to lock a mutex
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_mutex_trylock(
- pthread_mutex_t *mutex
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The specified mutex is invalid.
-
-@item EINVAL
-The mutex has the protocol attribute of PTHREAD_PRIO_PROTECT and the
-priority of the calling thread is higher than the current priority
-ceiling.
-
-@item EBUSY
-The mutex is already locked.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection pthread_mutex_timedlock - Lock a Mutex with Timeout
-
-@findex pthread_mutex_timedlock
-@cindex lock a mutex with timeout
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-#include <time.h>
-
-int pthread_mutex_timedlock(
- pthread_mutex_t *mutex,
- const struct timespec *timeout
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The specified mutex is invalid.
-
-@item EINVAL
-The nanoseconds field of timeout is invalid.
-
-@item EINVAL
-The mutex has the protocol attribute of PTHREAD_PRIO_PROTECT and the
-priority of the calling thread is higher than the current priority
-ceiling.
-
-@item EDEADLK
-The current thread already owns the mutex.
-
-@item ETIMEDOUT
-The calling thread was unable to obtain the mutex within the specified
-timeout period.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-
-@c
-@c
-@c
-@page
-@subsection pthread_mutex_unlock - Unlock a Mutex
-
-@findex pthread_mutex_unlock
-@cindex unlock a mutex
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_mutex_unlock(
- pthread_mutex_t *mutex
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The specified mutex is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection pthread_mutex_setprioceiling - Dynamically Set the Priority Ceiling
-
-@findex pthread_mutex_setprioceiling
-@cindex dynamically set the priority ceiling
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_mutex_setprioceiling(
- pthread_mutex_t *mutex,
- int prioceiling,
- int *oldceiling
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The oldceiling pointer parameter is invalid.
-
-@item EINVAL
-The prioceiling parameter is an invalid priority.
-
-@item EINVAL
-The specified mutex is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection pthread_mutex_getprioceiling - Get the Current Priority Ceiling
-
-@findex pthread_mutex_getprioceiling
-@cindex get the current priority ceiling
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_mutex_getprioceiling(
- pthread_mutex_t *mutex,
- int *prioceiling
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The prioceiling pointer parameter is invalid.
-
-@item EINVAL
-The specified mutex is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
diff --git a/doc/posix_users/posix_users.texi b/doc/posix_users/posix_users.texi
deleted file mode 100644
index 31b35b0645..0000000000
--- a/doc/posix_users/posix_users.texi
+++ /dev/null
@@ -1,151 +0,0 @@
-\input texinfo @c -*-texinfo-*-
-@c %**start of header
-@setfilename posix_users.info
-@setcontentsaftertitlepage
-@syncodeindex vr fn
-@synindex ky cp
-@paragraphindent 0
-@c %**end of header
-
-@c
-@c COPYRIGHT (c) 1989-2013.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@c
-@c Master file for the POSIX API User's Guide
-@c
-
-@c Joel's Questions
-@c
-@c 1. Why does paragraphindent only impact makeinfo?
-@c 2. Why does paragraphindent show up in HTML?
-@c
-
-@include version.texi
-@include common/setup.texi
-@include common/rtems.texi
-
-@ifset use-ascii
-@dircategory RTEMS On-Line Manual
-@direntry
-* RTEMS Posix API User's Guide: (posix_users).
- Posix API User's Guide Plan
-@end direntry
-@end ifset
-
-@c variable substitution info:
-@c
-@c Note: At the moment we do not document the Ada interface but by building
-@c in the infrastructure Florist support should be simple to add.
-@set is-C
-@clear is-Ada
-@set LANGUAGE C
-@set STRUCTURE structure
-@set ROUTINE function
-@set OR |
-@set RPREFIX RTEMS_
-@set DIRPREFIX rtems_
-@c the language is @value{LANGUAGE}
-@c NOTE: don't use underscore in the name
-@c
-
-@c
-@c Title Page Stuff
-@c
-
-@c
-@c I don't really like having a short title page. --joel
-@c
-@c @shorttitlepage RTEMS POSIX API User's Guide
-
-@setchapternewpage odd
-@settitle RTEMS POSIX API User's Guide
-@titlepage
-@finalout
-
-@title RTEMS POSIX API User's Guide
-@subtitle Edition @value{EDITION}, for RTEMS @value{VERSION}
-@sp 1
-@subtitle @value{UPDATED}
-@author On-Line Applications Research Corporation
-@page
-@include common/cpright.texi
-@end titlepage
-
-@c This prevents a black box from being printed on "overflow" lines.
-@c The alternative is to rework a sentence to avoid this problem.
-
-@contents
-
-@ifnottex
-@node Top, Preface, (dir), (dir)
-@top RTEMS POSIX API User's Guide
-
-@menu
-* Preface::
-* Process Creation and Execution Manager::
-* Signal Manager::
-* Process Environment Manager::
-* Files and Directories Manager::
-* Input and Output Primitives Manager::
-* Device- and Class- Specific Functions Manager::
-* Language-Specific Services for the C Programming Language Manager::
-* System Databases Manager::
-* Semaphore Manager::
-* Mutex Manager::
-* Condition Variable Manager::
-* Memory Management Manager::
-* Scheduler Manager::
-* Clock Manager::
-* Timer Manager::
-* Message Passing Manager::
-* Thread Manager::
-* Key Manager::
-* Thread Cancellation Manager::
-* Services Provided by C Library (libc)::
-* Services Provided by the Math Library (libm)::
-* Status of Implementation::
-* Command and Variable Index::
-* Concept Index::
-@end menu
-@end ifnottex
-
-@include preface.texi
-@include process.texi
-@include signal.texi
-@include procenv.texi
-@include files.texi
-@include io.texi
-@include device.texi
-@include cspecific.texi
-@include systemdb.texi
-@include semaphores.texi
-@include mutex.texi
-@include cond.texi
-@include memorymgmt.texi
-@include sched.texi
-@include clock.texi
-@include timer.texi
-@include message.texi
-@include thread.texi
-@include key.texi
-@include cancel.texi
-@include libc.texi
-@include libm.texi
-@include status.texi
-@node Command and Variable Index, Concept Index, , Top
-@unnumbered Command and Variable Index
-
-@c There are currently no Command and Variable Index entries.
-
-@printindex fn
-
-@node Concept Index, , Command and Variable Index, Top
-@unnumbered Concept Index
-
-@c There are currently no Concept Index entries.
-@printindex cp
-
-@bye
-
diff --git a/doc/posix_users/preface.texi b/doc/posix_users/preface.texi
deleted file mode 100644
index de3fce0472..0000000000
--- a/doc/posix_users/preface.texi
+++ /dev/null
@@ -1,35 +0,0 @@
-@c
-@c COPYRIGHT (c) 1989-2011.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@node Preface, , Top, Top
-@unnumbered Preface
-
-This is the User's Guide for the POSIX API support
-provided in RTEMS.
-
-The functionality described in this document is based
-on the following standards:
-
-@itemize @bullet
-
-@item POSIX 1003.1b-1993.
-
-@item POSIX 1003.1h/D3.
-
-@item Open Group Single UNIX Specification.
-
-@end itemize
-
-Much of the POSIX API standard is actually implemented in the
-Cygnus Newlib ANSI C Library. Please refer to documentation on
-Newlib for more information on the functionality it supplies.
-
-This manual is still under construction and improvements
-are welcomed from users.
-
-@unnumberedsec Acknowledgements
-
-@include common/opengroup_preface_acknowledgement.texi
-
diff --git a/doc/posix_users/procenv.t b/doc/posix_users/procenv.t
deleted file mode 100644
index 074b94b037..0000000000
--- a/doc/posix_users/procenv.t
+++ /dev/null
@@ -1,961 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Process Environment Manager
-
-@section Introduction
-
-The process environment manager is responsible for providing the
-functions related to user and group Id management.
-
-The directives provided by the process environment manager are:
-
-@itemize @bullet
-@item @code{getpid} - Get Process ID
-@item @code{getppid} - Get Parent Process ID
-@item @code{getuid} - Get User ID
-@item @code{geteuid} - Get Effective User ID
-@item @code{getgid} - Get Real Group ID
-@item @code{getegid} - Get Effective Group ID
-@item @code{setuid} - Set User ID
-@item @code{setgid} - Set Group ID
-@item @code{getgroups} - Get Supplementary Group IDs
-@item @code{getlogin} - Get User Name
-@item @code{getlogin_r} - Reentrant Get User Name
-@item @code{getpgrp} - Get Process Group ID
-@item @code{setsid} - Create Session and Set Process Group ID
-@item @code{setpgid} - Set Process Group ID for Job Control
-@item @code{uname} - Get System Name
-@item @code{times} - Get Process Times
-@item @code{getenv} - Get Environment Variables
-@item @code{setenv} - Set Environment Variables
-@item @code{ctermid} - Generate Terminal Pathname
-@item @code{ttyname} - Determine Terminal Device Name
-@item @code{ttyname_r} - Reentrant Determine Terminal Device Name
-@item @code{isatty} - Determine if File Descriptor is Terminal
-@item @code{sysconf} - Get Configurable System Variables
-@end itemize
-
-@section Background
-
-@subsection Users and Groups
-
-RTEMS provides a single process, multi-threaded execution environment.
-In this light, the notion of user and group is somewhat without meaning.
-But RTEMS does provide services to provide a synthetic version of
-user and group. By default, a single user and group is associated
-with the application. Thus unless special actions are taken,
-every thread in the application shares the same user and group Id.
-The initial rationale for providing user and group Id functionality
-in RTEMS was for the filesystem infrastructure to implement
-file permission checks. The effective user/group Id capability
-has since been used to implement permissions checking by
-the @code{ftpd} server.
-
-In addition to the "real" user and group Ids, a process may
-have an effective user/group Id. This allows a process to
-function using a more limited permission set for certain operations.
-
-@subsection User and Group Names
-
-POSIX considers user and group Ids to be a unique integer that
-may be associated with a name. This is usually accomplished
-via a file named @code{/etc/passwd} for user Id mapping and
-@code{/etc/groups} for group Id mapping. Again, although
-RTEMS is effectively a single process and thus single user
-system, it provides limited support for user and group
-names. When configured with an appropriate filesystem, RTEMS
-will access the appropriate files to map user and group Ids
-to names.
-
-If these files do not exist, then RTEMS will synthesize
-a minimal version so this family of services return without
-error. It is important to remember that a design goal of
-the RTEMS POSIX services is to provide useable and
-meaningful results even though a full process model
-is not available.
-
-@subsection Environment Variables
-
-POSIX allows for variables in the run-time environment. These are
-name/value pairs that make be dynamically set and obtained by
-programs. In a full POSIX environment with command line shell
-and multiple processes, environment variables may be set in
-one process -- such as the shell -- and inherited by child
-processes. In RTEMS, there is only one process and thus
-only one set of environment variables across all processes.
-
-
-@section Operations
-
-@subsection Accessing User and Group Ids
-
-The user Id associated with the current thread may be obtain
-using the @code{getuid()} service. Similarly, the group Id
-may be obtained using the @code{getgid()} service.
-
-@subsection Accessing Environment Variables
-
-The value associated with an environment variable may be
-obtained using the @code{getenv()} service and set using
-the @code{putenv()} service.
-
-@section Directives
-
-This section details the process environment manager's directives.
-A subsection is dedicated to each of this manager's directives
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-@c
-@c
-@c
-@page
-@subsection getpid - Get Process ID
-
-@findex getpid
-@cindex get process id
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int getpid( void );
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-The process Id is returned.
-
-@subheading DESCRIPTION:
-
-This service returns the process Id.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection getppid - Get Parent Process ID
-
-@findex getppid
-@cindex get parent process id
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int getppid( void );
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-The parent process Id is returned.
-
-@subheading DESCRIPTION:
-
-This service returns the parent process Id.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection getuid - Get User ID
-
-@findex getuid
-@cindex get user id
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int getuid( void );
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-The effective user Id is returned.
-
-@subheading DESCRIPTION:
-
-This service returns the effective user Id.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection geteuid - Get Effective User ID
-
-@findex geteuid
-@cindex get effective user id
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int geteuid( void );
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-The effective group Id is returned.
-
-@subheading DESCRIPTION:
-
-This service returns the effective group Id.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection getgid - Get Real Group ID
-
-@findex getgid
-@cindex get real group id
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int getgid( void );
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-The group Id is returned.
-
-@subheading DESCRIPTION:
-
-This service returns the group Id.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection getegid - Get Effective Group ID
-
-@findex getegid
-@cindex get effective group id
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int getegid( void );
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-The effective group Id is returned.
-
-@subheading DESCRIPTION:
-
-This service returns the effective group Id.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection setuid - Set User ID
-
-@findex setuid
-@cindex set user id
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int setuid(
- uid_t uid
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-This service returns 0.
-
-@subheading DESCRIPTION:
-
-This service sets the user Id to @code{uid}.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection setgid - Set Group ID
-
-@findex setgid
-@cindex set group id
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int setgid(
- gid_t gid
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-This service returns 0.
-
-@subheading DESCRIPTION:
-
-This service sets the group Id to @code{gid}.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection getgroups - Get Supplementary Group IDs
-
-@findex getgroups
-@cindex get supplementary group ids
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int getgroups(
- int gidsetsize,
- gid_t grouplist[]
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-NA
-
-@subheading DESCRIPTION:
-
-This service is not implemented as RTEMS has no notion of
-supplemental groups.
-
-@subheading NOTES:
-
-If supported, this routine would only be allowed for
-the super-user.
-
-@c
-@c
-@c
-@page
-@subsection getlogin - Get User Name
-
-@findex getlogin
-@cindex get user name
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-char *getlogin( void );
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-Returns a pointer to a string containing the name of the
-current user.
-
-@subheading DESCRIPTION:
-
-This routine returns the name of the current user.
-
-@subheading NOTES:
-
-This routine is not reentrant and subsequent calls to
-@code{getlogin()} will overwrite the same buffer.
-
-@c
-@c
-@c
-@page
-@subsection getlogin_r - Reentrant Get User Name
-
-@findex getlogin_r
-@cindex reentrant get user name
-@cindex get user name, reentrant
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int getlogin_r(
- char *name,
- size_t namesize
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The arguments were invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This is a reentrant version of the @code{getlogin()} service. The
-caller specified their own buffer, @code{name}, as well as the
-length of this buffer, @code{namesize}.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection getpgrp - Get Process Group ID
-
-@findex getpgrp
-@cindex get process group id
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-pid_t getpgrp( void );
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-The procress group Id is returned.
-
-@subheading DESCRIPTION:
-
-This service returns the current progress group Id.
-
-@subheading NOTES:
-
-This routine is implemented in a somewhat meaningful
-way for RTEMS but is truly not functional.
-
-@c
-@c
-@c
-@page
-@subsection setsid - Create Session and Set Process Group ID
-
-@findex setsid
-@cindex create session and set process group id
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-pid_t setsid( void );
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EPERM
-The application does not have permission to create a process group.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This routine always returns @code{EPERM} as RTEMS has no way
-to create new processes and thus no way to create a new process
-group.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection setpgid - Set Process Group ID for Job Control
-
-@findex setpgid
-@cindex set process group id for job control
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int setpgid(
- pid_t pid,
- pid_t pgid
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item ENOSYS
-The routine is not implemented.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This service is not implemented for RTEMS as process groups are not
-supported.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection uname - Get System Name
-
-@findex uname
-@cindex get system name
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int uname(
- struct utsname *name
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EPERM
-The provided structure pointer is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This service returns system information to the caller. It does this
-by filling in the @code{struct utsname} format structure for the
-caller.
-
-@subheading NOTES:
-
-The information provided includes the operating system (RTEMS in
-all configurations), the node number, the release as the RTEMS
-version, and the CPU family and model. The CPU model name
-will indicate the multilib executive variant being used.
-
-@c
-@c
-@c
-@page
-@subsection times - Get process times
-
-@findex times
-@cindex get process times
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <sys/time.h>
-
-clock_t times(
- struct tms *ptms
-);
-@end example
-
-@subheading STATUS CODES:
-
-This routine returns the number of clock ticks that have elapsed
-since the system was initialized (e.g. the application was
-started).
-
-@subheading DESCRIPTION:
-
-@code{times} stores the current process times in @code{ptms}. The
-format of @code{struct tms} is as defined in
-@code{<sys/times.h>}. RTEMS fills in the field @code{tms_utime}
-with the number of ticks that the calling thread has executed
-and the field @code{tms_stime} with the number of clock ticks
-since system boot (also returned). All other fields in the
-@code{ptms} are left zero.
-
-@subheading NOTES:
-
-RTEMS has no way to distinguish between user and system time
-so this routine returns the most meaningful information
-possible.
-
-@c
-@c
-@c
-@page
-@subsection getenv - Get Environment Variables
-
-@findex getenv
-@cindex get environment variables
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-char *getenv(
- const char *name
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item NULL
-when no match
-
-@item pointer to value
-when successful
-
-@end table
-
-@subheading DESCRIPTION:
-
-This service searches the set of environment variables for
-a string that matches the specified @code{name}. If found,
-it returns the associated value.
-
-@subheading NOTES:
-
-The environment list consists of name value pairs that
-are of the form @i{name = value}.
-
-@c
-@c
-@c
-@page
-@subsection setenv - Set Environment Variables
-
-@findex setenv
-@cindex set environment variables
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int setenv(
- const char *name,
- const char *value,
- int overwrite
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-Returns 0 if successful and -1 otherwise.
-
-@subheading DESCRIPTION:
-
-This service adds the variable @code{name} to the environment with
-@code{value}. If @code{name} is not already exist, then it is
-created. If @code{name} exists and @code{overwrite} is zero, then
-the previous value is not overwritten.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection ctermid - Generate Terminal Pathname
-
-@findex ctermid
-@cindex generate terminal pathname
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-char *ctermid(
- char *s
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-Returns a pointer to a string indicating the pathname for the controlling
-terminal.
-
-@subheading DESCRIPTION:
-
-This service returns the name of the terminal device associated with
-this process. If @code{s} is NULL, then a pointer to a static buffer
-is returned. Otherwise, @code{s} is assumed to have a buffer of
-sufficient size to contain the name of the controlling terminal.
-
-@subheading NOTES:
-
-By default on RTEMS systems, the controlling terminal is @code{/dev/console}.
-Again this implementation is of limited meaning, but it provides
-true and useful results which should be sufficient to ease porting
-applications from a full POSIX implementation to the reduced
-profile supported by RTEMS.
-
-@c
-@c
-@c
-@page
-@subsection ttyname - Determine Terminal Device Name
-
-@findex ttyname
-@cindex determine terminal device name
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-char *ttyname(
- int fd
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-Pointer to a string containing the terminal device name or
-NULL is returned on any error.
-
-@subheading DESCRIPTION:
-
-This service returns a pointer to the pathname of the terminal
-device that is open on the file descriptor @code{fd}. If
-@code{fd} is not a valid descriptor for a terminal device,
-then NULL is returned.
-
-@subheading NOTES:
-
-This routine uses a static buffer.
-
-@c
-@c
-@c
-@page
-@subsection ttyname_r - Reentrant Determine Terminal Device Name
-
-@findex ttyname_r
-@cindex reentrant determine terminal device name
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int ttyname_r(
- int fd,
- char *name,
- int namesize
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-This routine returns -1 and sets @code{errno} as follows:
-
-@table @b
-@item EBADF
-If not a valid descriptor for a terminal device.
-
-@item EINVAL
-If @code{name} is NULL or @code{namesize} are insufficient.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This service the pathname of the terminal device that is open
-on the file descriptor @code{fd}.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection isatty - Determine if File Descriptor is Terminal
-
-@findex isatty
-@cindex determine if file descriptor is terminal
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int isatty(
- int fd
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-Returns 1 if @code{fd} is a terminal device and 0 otherwise.
-
-@subheading DESCRIPTION:
-
-This service returns 1 if @code{fd} is an open file descriptor
-connected to a terminal and 0 otherwise.
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection sysconf - Get Configurable System Variables
-
-@findex sysconf
-@cindex get configurable system variables
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-long sysconf(
- int name
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-The value returned is the actual value of the system resource.
-If the requested configuration name is a feature flag, then
-1 is returned if the available and 0 if it is not. On any
-other error condition, -1 is returned.
-
-@subheading DESCRIPTION:
-
-This service is the mechanism by which an application determines
-values for system limits or options at runtime.
-
-@subheading NOTES:
-
-Much of the information that may be obtained via @code{sysconf}
-has equivalent macros in @code{<unistd.h}. However, those
-macros reflect conservative limits which may have been altered
-by application configuration.
diff --git a/doc/posix_users/process.t b/doc/posix_users/process.t
deleted file mode 100644
index 1120fb8639..0000000000
--- a/doc/posix_users/process.t
+++ /dev/null
@@ -1,493 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Process Creation and Execution Manager
-
-@section Introduction
-
-The process creation and execution manager provides the
-functionality associated with the creation and termination
-of processes.
-
-
-The directives provided by the process creation and execution manager are:
-
-@itemize @bullet
-@item @code{fork} - Create a Process
-@item @code{execl} - Execute a File
-@item @code{execv} - Execute a File
-@item @code{execle} - Execute a File
-@item @code{execve} - Execute a File
-@item @code{execlp} - Execute a File
-@item @code{execvp} - Execute a File
-@item @code{pthread_atfork} - Register Fork Handlers
-@item @code{wait} - Wait for Process Termination
-@item @code{waitpid} - Wait for Process Termination
-@item @code{_exit} - Terminate a Process
-@end itemize
-
-@section Background
-
-POSIX process functionality can not be completely
-supported by RTEMS. This is because RTEMS provides no memory
-protection and implements a @i{single process, multi-threaded
-execution model}. In this light, RTEMS provides none of the
-routines that are associated with the creation of new processes.
-However, since the entire RTEMS application (e.g. executable)
-is logically a single POSIX process, RTEMS is able to provide
-implementations of many operations on processes. The rule of
-thumb is that those routines provide a meaningful result.
-For example, @code{getpid()} returns the node number.
-
-@section Operations
-
-The only functionality method defined by this manager which is
-supported by RTEMS is the @code{_exit} service. The
-implementation of @code{_exit} shuts the application down and
-is equivalent to invoking either @code{exit} or
-@code{rtems_shutdown_executive}.
-
-@section Directives
-
-This section details the process creation and execution manager's directives.
-A subsection is dedicated to each of this manager's directives
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-@c
-@c
-@c
-@page
-@subsection fork - Create a Process
-
-@findex fork
-@cindex create a process
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <sys/types.h>
-
-int fork( void );
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item ENOSYS
-This routine is not supported by RTEMS.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This routine is not supported by RTEMS.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection execl - Execute a File
-
-@findex execl
-@cindex execute a file
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int execl(
- const char *path,
- const char *arg,
- ...
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item ENOSYS
-This routine is not supported by RTEMS.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This routine is not supported by RTEMS.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection execv - Execute a File
-
-@findex execv
-@cindex execute a file
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int execv(
- const char *path,
- char const *argv[],
- ...
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item ENOSYS
-This routine is not supported by RTEMS.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This routine is not supported by RTEMS.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection execle - Execute a File
-
-@findex execle
-@cindex execute a file
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int execle(
- const char *path,
- const char *arg,
- ...
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item ENOSYS
-This routine is not supported by RTEMS.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This routine is not supported by RTEMS.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection execve - Execute a File
-
-@findex execve
-@cindex execute a file
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int execve(
- const char *path,
- char *const argv[],
- char *const envp[]
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item ENOSYS
-This routine is not supported by RTEMS.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This routine is not supported by RTEMS.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection execlp - Execute a File
-
-@findex execlp
-@cindex execute a file
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int execlp(
- const char *file,
- const char *arg,
- ...
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item ENOSYS
-This routine is not supported by RTEMS.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This routine is not supported by RTEMS.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection execvp - Execute a File
-
-@findex execvp
-@cindex execute a file
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int execvp(
- const char *file,
- char *const argv[]
- ...
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item ENOSYS
-This routine is not supported by RTEMS.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This routine is not supported by RTEMS.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection pthread_atfork - Register Fork Handlers
-
-@findex pthread_atfork
-@cindex register fork handlers
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <sys/types.h>
-
-int pthread_atfork(
- void (*prepare)(void),
- void (*parent)(void),
- void (*child)(void)
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item ENOSYS
-This routine is not supported by RTEMS.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This routine is not supported by RTEMS.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection wait - Wait for Process Termination
-
-@findex wait
-@cindex wait for process termination
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <sys/types.h>
-#include <sys/wait.h>
-
-int wait(
- int *stat_loc
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item ENOSYS
-This routine is not supported by RTEMS.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This routine is not supported by RTEMS.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection waitpid - Wait for Process Termination
-
-@findex waitpid
-@cindex wait for process termination
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int wait(
- pid_t pid,
- int *stat_loc,
- int options
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item ENOSYS
-This routine is not supported by RTEMS.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This routine is not supported by RTEMS.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection _exit - Terminate a Process
-
-@findex _exit
-@cindex terminate a process
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-void _exit(
- int status
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-NONE
-
-@subheading DESCRIPTION:
-
-The @code{_exit()} function terminates the calling process.
-
-@subheading NOTES:
-
-In RTEMS, a process is equivalent to the entire application on a single
-processor. Invoking this service terminates the application.
diff --git a/doc/posix_users/sched.t b/doc/posix_users/sched.t
deleted file mode 100644
index 14c0185341..0000000000
--- a/doc/posix_users/sched.t
+++ /dev/null
@@ -1,216 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Scheduler Manager
-
-@section Introduction
-
-The scheduler manager ...
-
-The directives provided by the scheduler manager are:
-
-@itemize @bullet
-@item @code{sched_get_priority_min} - Get Minimum Priority Value
-@item @code{sched_get_priority_max} - Get Maximum Priority Value
-@item @code{sched_rr_get_interval} - Get Timeslicing Quantum
-@item @code{sched_yield} - Yield the Processor
-@end itemize
-
-@section Background
-
-@subsection Priority
-
-In the RTEMS implementation of the POSIX API, the priorities range from
-the low priority of @code{sched_get_priority_min()} to the highest priority of
-@code{sched_get_priority_max()}. Numerically higher values represent higher
-priorities.
-
-@subsection Scheduling Policies
-
-The following scheduling policies are available:
-
-@table @b
-@item SCHED_FIFO
-Priority-based, preemptive scheduling with no timeslicing. This is equivalent
-to what is called "manual round-robin" scheduling.
-
-@item SCHED_RR
-Priority-based, preemptive scheduling with timeslicing. Time quantums are
-maintained on a per-thread basis and are not reset at each context switch.
-Thus, a thread which is preempted and subsequently resumes execution will
-attempt to complete the unused portion of its time quantum.
-
-@item SCHED_OTHER
-Priority-based, preemptive scheduling with timeslicing. Time quantums are
-maintained on a per-thread basis and are reset at each context switch.
-
-@item SCHED_SPORADIC
-Priority-based, preemptive scheduling utilizing three additional parameters:
-budget, replenishment period, and low priority. Under this policy, the
-thread is allowed to execute for "budget" amount of time before its priority
-is lowered to "low priority". At the end of each replenishment period,
-the thread resumes its initial priority and has its budget replenished.
-
-@end table
-
-@section Operations
-
-There is currently no text in this section.
-
-@section Directives
-
-This section details the scheduler manager's directives.
-A subsection is dedicated to each of this manager's directives
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-@c
-@c
-@c
-@page
-@subsection sched_get_priority_min - Get Minimum Priority Value
-
-@findex sched_get_priority_min
-@cindex get minimum priority value
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <sched.h>
-
-int sched_get_priority_min(
- int policy
-);
-@end example
-
-@subheading STATUS CODES:
-
-On error, this routine returns -1 and sets errno to one of the following:
-
-@table @b
-@item EINVAL
-The indicated policy is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This routine return the minimum (numerically and logically lowest) priority
-for the specified @code{policy}.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection sched_get_priority_max - Get Maximum Priority Value
-
-@findex sched_get_priority_max
-@cindex get maximum priority value
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <sched.h>
-
-int sched_get_priority_max(
- int policy
-);
-@end example
-
-@subheading STATUS CODES:
-
-On error, this routine returns -1 and sets errno to one of the following:
-
-@table @b
-@item EINVAL
-The indicated policy is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This routine return the maximum (numerically and logically highest) priority
-for the specified @code{policy}.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection sched_rr_get_interval - Get Timeslicing Quantum
-
-@findex sched_rr_get_interval
-@cindex get timeslicing quantum
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <sched.h>
-
-int sched_rr_get_interval(
- pid_t pid,
- struct timespec *interval
-);
-@end example
-
-@subheading STATUS CODES:
-
-On error, this routine returns -1 and sets errno to one of the following:
-
-@table @b
-@item ESRCH
-The indicated process id is invalid.
-
-@item EINVAL
-The specified interval pointer parameter is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This routine returns the length of the timeslice quantum in the
-@code{interval} parameter for the specified @code{pid}.
-
-@subheading NOTES:
-
-The @code{pid} argument should be 0 to indicate the calling process.
-
-@c
-@c
-@c
-@page
-@subsection sched_yield - Yield the Processor
-
-@findex sched_yield
-@cindex yield the processor
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <sched.h>
-
-int sched_yield( void );
-@end example
-
-@subheading STATUS CODES:
-
-This routine always returns zero to indicate success.
-
-@subheading DESCRIPTION:
-
-This call forces the calling thread to yield the processor to another
-thread. Normally this is used to implement voluntary round-robin
-task scheduling.
-
-@subheading NOTES:
-
-NONE
diff --git a/doc/posix_users/semaphores.t b/doc/posix_users/semaphores.t
deleted file mode 100644
index 71b5c38367..0000000000
--- a/doc/posix_users/semaphores.t
+++ /dev/null
@@ -1,595 +0,0 @@
-@c
-@c COPYRIGHT(c) 1988-2002.
-@c On-Line Applications Research Corporation(OAR).
-@c All rights reserved.
-
-@chapter Semaphore Manager
-
-@section Introduction
-
-The semaphore manager provides functions to allocate, delete, and control
-semaphores. This manager is based on the POSIX 1003.1 standard.
-
-The directives provided by the semaphore manager are:
-
-@itemize @bullet
-@item @code{sem_init} - Initialize an unnamed semaphore
-@item @code{sem_destroy} - Destroy an unnamed semaphore
-@item @code{sem_open} - Open a named semaphore
-@item @code{sem_close} - Close a named semaphore
-@item @code{sem_unlink} - Remove a named semaphore
-@item @code{sem_wait} - Lock a semaphore
-@item @code{sem_trywait} - Lock a semaphore
-@item @code{sem_timedwait} - Wait on a Semaphore for a Specified Time
-@item @code{sem_post} - Unlock a semaphore
-@item @code{sem_getvalue} - Get the value of a semeaphore
-@end itemize
-
-@section Background
-
-@subsection Theory
-Semaphores are used for synchronization and mutual exclusion by indicating the
-availability and number of resources. The task (the task which is returning
-resources) notifying other tasks of an event increases the number of resources
-held by the semaphore by one. The task (the task which will obtain resources)
-waiting for the event decreases the number of resources held by the semaphore
-by one. If the number of resources held by a semaphore is insufficient (namely
-0), the task requiring resources will wait until the next time resources are
-returned to the semaphore. If there is more than one task waiting for a
-semaphore, the tasks will be placed in the queue.
-
-@subsection "sem_t" Structure
-
-@findex sem_t
-
-The @code{sem_t} structure is used to represent semaphores. It is passed as an
-argument to the semaphore directives and is defined as follows:
-
-@example
-typedef int sem_t;
-@end example
-
-@subsection Building a Semaphore Attribute Set
-
-@section Operations
-
-@subsection Using as a Binary Semaphore
-Although POSIX supports mutexes, they are only visible between threads. To work
-between processes, a binary semaphore must be used.
-
-Creating a semaphore with a limit on the count of 1 effectively restricts the
-semaphore to being a binary semaphore. When the binary semaphore is available,
-the count is 1. When the binary semaphore is unavailable, the count is 0.
-
-Since this does not result in a true binary semaphore, advanced binary features like the Priority Inheritance and Priority Ceiling Protocols are not available.
-
-There is currently no text in this section.
-
-@section Directives
-
-This section details the semaphore manager's directives.
-A subsection is dedicated to each of this manager's directives
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-@c
-@c
-@c
-@page
-@subsection sem_init - Initialize an unnamed semaphore
-
-@findex sem_init
-@cindex initialize an unnamed semaphore
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int sem_init(
- sem_t *sem,
- int pshared,
- unsigned int value
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The value argument exceeds SEM_VALUE_MAX
-
-@item ENOSPC
-A resource required to initialize the semaphore has been exhausted
-The limit on semaphores (SEM_VALUE_MAX) has been reached
-
-@item ENOSYS
-The function sem_init is not supported by this implementation
-
-@item EPERM
-The process lacks appropriate privileges to initialize the semaphore
-
-@end table
-
-@subheading DESCRIPTION:
-The sem_init function is used to initialize the unnamed semaphore referred to
-by "sem". The value of the initialized semaphore is the parameter "value". The
-semaphore remains valid until it is destroyed.
-
-ADD MORE HERE XXX
-
-@subheading NOTES:
-If the functions completes successfully, it shall return a value of zero.
-Otherwise, it shall return a value of -1 and set "errno" to specify the error
-that occurred.
-
-Multiprocessing is currently not supported in this implementation.
-
-@c
-@c
-@c
-@page
-@subsection sem_destroy - Destroy an unnamed semaphore
-
-@findex sem_destroy
-@cindex destroy an unnamed semaphore
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int sem_destroy(
- sem_t *sem
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The value argument exceeds SEM_VALUE_MAX
-
-@item ENOSYS
-The function sem_init is not supported by this implementation
-
-@item EBUSY
-There are currently processes blocked on the semaphore
-
-@end table
-
-@subheading DESCRIPTION:
-The sem_destroy function is used to destroy an unnamed semaphore refered to by
-"sem". sem_destroy can only be used on a semaphore that was created using
-sem_init.
-
-@subheading NOTES:
-If the functions completes successfully, it shall return a value of zero.
-Otherwise, it shall return a value of -1 and set "errno" to specify the error
-that occurred.
-
-Multiprocessing is currently not supported in this implementation.
-
-
-@c
-@c
-@c
-@page
-@subsection sem_open - Open a named semaphore
-
-@findex sem_open
-@cindex open a named semaphore
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int sem_open(
- const char *name,
- int oflag
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading ARGUMENTS:
-
-The following flag bit may be set in oflag:
-
-@code{O_CREAT} - Creates the semaphore if it does not already exist. If O_CREAT
-is set and the semaphore already exists then O_CREAT has no effect. Otherwise,
-sem_open() creates a semaphore. The O_CREAT flag requires the third and fourth
-argument: mode and value of type mode_t and unsigned int, respectively.
-
-@code{O_EXCL} - If O_EXCL and O_CREAT are set, all call to sem_open() shall fail
-if the semaphore name exists
-
-@subheading STATUS CODES:
-
-@table @b
-@item EACCES
-Valid name specified but oflag permissions are denied, or the semaphore name
-specified does not exist and permission to create the named semaphore is denied.
-
-@item EEXIST
-O_CREAT and O_EXCL are set and the named semaphore already exists.
-
-@item EINTR
-The sem_open() operation was interrupted by a signal.
-
-@item EINVAL
-The sem_open() operation is not supported for the given name.
-
-@item EMFILE
-Too many semaphore descriptors or file descriptors in use by this process.
-
-@item ENAMETOOLONG
-The length of the name exceed PATH_MAX or name component is longer than NAME_MAX
-while POSIX_NO_TRUNC is in effect.
-
-@item ENOENT
-O_CREAT is not set and the named semaphore does not exist.
-
-@item ENOSPC
-There is insufficient space for the creation of a new named semaphore.
-
-@item ENOSYS
-The function sem_open() is not supported by this implementation.
-
-@end table
-
-@subheading DESCRIPTION:
-The sem_open() function establishes a connection between a specified semaphore and
-a process. After a call to sem_open with a specified semaphore name, a process
-can reference to semaphore by the associated name using the address returned by
-the call. The oflag arguments listed above control the state of the semaphore by
-determining if the semaphore is created or accessed by a call to sem_open().
-
-@subheading NOTES:
-
-
-@c
-@c
-@c
-@page
-@subsection sem_close - Close a named semaphore
-
-@findex sem_close
-@cindex close a named semaphore
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int sem_close(
- sem_t *sem_close
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EACCES
-The semaphore argument is not a valid semaphore descriptor.
-
-@item ENOSYS
-The function sem_close is not supported by this implementation.
-
-@end table
-
-@subheading DESCRIPTION:
-The sem_close() function is used to indicate that the calling process is finished
-using the named semaphore indicated by sem. The function sem_close deallocates
-any system resources that were previously allocated by a sem_open system call. If
-sem_close() completes successfully it returns a 1, otherwise a value of -1 is
-return and errno is set.
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection sem_unlink - Unlink a semaphore
-
-@findex sem_unlink
-@cindex unlink a semaphore
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int sem_unlink(
- const char *name
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EACCESS
-Permission is denied to unlink a semaphore.
-
-@item ENAMETOOLONG
-The length of the strong name exceed NAME_MAX while POSIX_NO_TRUNC is in effect.
-
-@item ENOENT
-The name of the semaphore does not exist.
-
-@item ENOSPC
-There is insufficient space for the creation of a new named semaphore.
-
-@item ENOSYS
-The function sem_unlink is not supported by this implementation.
-
-@end table
-
-@subheading DESCRIPTION:
-The sem_unlink() function shall remove the semaphore name by the string name. If
-a process is currently accessing the name semaphore, the sem_unlink command has
-no effect. If one or more processes have the semaphore open when the sem_unlink
-function is called, the destruction of semaphores shall be postponed until all
-reference to semaphore are destroyed by calls to sem_close, _exit(), or exec.
-After all references have been destroyed, it returns immediately.
-
-If the termination is successful, the function shall return 0. Otherwise, a -1
-is returned and the errno is set.
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection sem_wait - Wait on a Semaphore
-
-@findex sem_wait
-@cindex wait on a semaphore
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int sem_wait(
- sem_t *sem
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The "sem" argument does not refer to a valid semaphore
-
-@end table
-
-@subheading DESCRIPTION:
-This function attempts to lock a semaphore specified by @code{sem}. If the
-semaphore is available, then the semaphore is locked (i.e., the semaphore
-value is decremented). If the semaphore is unavailable (i.e., the semaphore
-value is zero), then the function will block until the semaphore becomes
-available. It will then successfully lock the semaphore. The semaphore
-remains locked until released by a @code{sem_post()} call.
-
-If the call is unsuccessful, then the function returns -1 and sets errno to the
-appropriate error code.
-
-@subheading NOTES:
-Multiprocessing is not supported in this implementation.
-
-@c
-@c
-@c
-@page
-@subsection sem_trywait - Non-blocking Wait on a Semaphore
-
-@findex sem_trywait
-@cindex non
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int sem_trywait(
- sem_t *sem
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EAGAIN
-The semaphore is not available (i.e., the semaphore value is zero), so the
-semaphore could not be locked.
-
-@item EINVAL
-The @code{sem} argument does not refewr to a valid semaphore
-
-@end table
-
-@subheading DESCRIPTION:
-This function attempts to lock a semaphore specified by @code{sem}. If the
-semaphore is available, then the semaphore is locked (i.e., the semaphore
-value is decremented) and the function returns a value of 0. The semaphore
-remains locked until released by a @code{sem_post()} call. If the semaphore
-is unavailable (i.e., the semaphore value is zero), then the function will
-return a value of -1 immediately and set @code{errno} to EAGAIN.
-
-If the call is unsuccessful, then the function returns -1 and sets
-@code{errno} to the appropriate error code.
-
-@subheading NOTES:
-Multiprocessing is not supported in this implementation.
-
-@c
-@c
-@c
-@page
-@subsection sem_timedwait - Wait on a Semaphore for a Specified Time
-
-@findex sem_timedwait
-@cindex wait on a semaphore for a specified time
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int sem_timedwait(
- sem_t *sem,
- const struct timespec *abstime
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EAGAIN
-The semaphore is not available (i.e., the semaphore value is zero), so the
-semaphore could not be locked.
-
-@item EINVAL
-The @code{sem} argument does not refewr to a valid semaphore
-
-@end table
-
-@subheading DESCRIPTION:
-
-This function attemtps to lock a semaphore specified by @code{sem},
-and will wait for the semaphore until the absolute time specified by
-@code{abstime}. If the semaphore is available, then the semaphore is
-locked (i.e., the semaphore value is decremented) and the function
-returns a value of 0. The semaphore remains locked until released by
-a @code{sem_post()} call. If the semaphore is unavailable, then the
-function will wait for the semaphore to become available for the amount
-of time specified by @code{timeout}.
-
-If the semaphore does not become available within the interval specified by
-@code{timeout}, then the function returns -1 and sets @code{errno} to EAGAIN.
-If any other error occurs, the function returns -1 and sets @code{errno} to
-the appropriate error code.
-
-@subheading NOTES:
-Multiprocessing is not supported in this implementation.
-
-@c
-@c
-@c
-@page
-@subsection sem_post - Unlock a Semaphore
-
-@findex sem_post
-@cindex unlock a semaphore
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int sem_post(
- sem_t *sem
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The @code{sem} argument does not refer to a valid semaphore
-
-@end table
-
-@subheading DESCRIPTION:
-This function attempts to release the semaphore specified by @code{sem}. If
-other tasks are waiting on the semaphore, then one of those tasks (which one
-depends on the scheduler being used) is allowed to lock the semaphore and
-return from its @code{sem_wait()}, @code{sem_trywait()}, or
-@code{sem_timedwait()} call. If there are no other tasks waiting on the
-semaphore, then the semaphore value is simply incremented. @code{sem_post()}
-returns 0 upon successful completion.
-
-If an error occurs, the function returns -1 and sets @code{errno} to the
-appropriate error code.
-
-@subheading NOTES:
-Multiprocessing is not supported in this implementation.
-
-@c
-@c
-@c
-@page
-@subsection sem_getvalue - Get the value of a semaphore
-
-@findex sem_getvalue
-@cindex get the value of a semaphore
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int sem_getvalue(
- sem_t *sem,
- int *sval
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The "sem" argument does not refer to a valid semaphore
-
-@item ENOSYS
-The function sem_getvalue is not supported by this implementation
-
-@end table
-
-@subheading DESCRIPTION:
-The sem_getvalue functions sets the location referenced by the "sval" argument
-to the value of the semaphore without affecting the state of the semaphore. The
-updated value represents a semaphore value that occurred at some point during
-the call, but is not necessarily the actual value of the semaphore when it
-returns to the calling process.
-
-If "sem" is locked, the value returned by sem_getvalue will be zero or a
-negative number whose absolute value is the number of processes waiting for the
-semaphore at some point during the call.
-
-@subheading NOTES:
-If the functions completes successfully, it shall return a value of zero.
-Otherwise, it shall return a value of -1 and set "errno" to specify the error
-that occurred.
diff --git a/doc/posix_users/signal.t b/doc/posix_users/signal.t
deleted file mode 100644
index 1b7dc554c0..0000000000
--- a/doc/posix_users/signal.t
+++ /dev/null
@@ -1,1071 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Signal Manager
-
-@section Introduction
-
-The signal manager provides the functionality associated with
-the generation, delivery, and management of process-oriented
-signals.
-
-The directives provided by the signal manager are:
-
-@itemize @bullet
-@item @code{sigaddset} - Add a Signal to a Signal Set
-@item @code{sigdelset} - Delete a Signal from a Signal Set
-@item @code{sigfillset} - Fill a Signal Set
-@item @code{sigismember} - Is Signal a Member of a Signal Set
-@item @code{sigemptyset} - Empty a Signal Set
-@item @code{sigaction} - Examine and Change Signal Action
-@item @code{pthread_kill} - Send a Signal to a Thread
-@item @code{sigprocmask} - Examine and Change Process Blocked Signals
-@item @code{pthread_sigmask} - Examine and Change Thread Blocked Signals
-@item @code{kill} - Send a Signal to a Process
-@item @code{sigpending} - Examine Pending Signals
-@item @code{sigsuspend} - Wait for a Signal
-@item @code{pause} - Suspend Process Execution
-@item @code{sigwait} - Synchronously Accept a Signal
-@item @code{sigwaitinfo} - Synchronously Accept a Signal
-@item @code{sigtimedwait} - Synchronously Accept a Signal with Timeout
-@item @code{sigqueue} - Queue a Signal to a Process
-@item @code{alarm} - Schedule Alarm
-@item @code{ualarm} - Schedule Alarm in Microseconds
-@end itemize
-
-@section Background
-
-@subsection Signals
-
-POSIX signals are an asynchronous event mechanism. Each process
-and thread has a set of signals associated with it. Individual
-signals may be enabled (e.g. unmasked) or blocked (e.g. ignored)
-on both a per-thread and process level. Signals which are
-enabled have a signal handler associated with them. When the
-signal is generated and conditions are met, then the signal
-handler is invoked in the proper process or thread context
-asynchronous relative to the logical thread of execution.
-
-If a signal has been blocked when it is generated, then it
-is queued and kept pending until the thread or process unblocks
-the signal or explicitly checks for it.
-Traditional, non-real-time POSIX signals do not queue. Thus
-if a process or thread has blocked a particular signal, then
-multiple occurrences of that signal are recorded as a
-single occurrence of that signal.
-@c TODO: SIGRTMIN and SIGRTMAX ?
-
-One can check for the set of outstanding signals that have been
-blocked. Services are provided to check for outstanding process
-or thread directed signals.
-
-@subsection Signal Delivery
-
-Signals which are directed at a thread are delivered to the specified thread.
-
-Signals which are directed at a process are delivered to a thread which
-is selected based on the following algorithm:
-
-@enumerate
-@item If the action for this signal is currently @code{SIG_IGN},
-then the signal is simply ignored.
-
-@item If the currently executing thread has the signal unblocked, then
-the signal is delivered to it.
-
-@item If any threads are currently blocked waiting for this signal
-(@code{sigwait()}), then the signal is delivered to the highest priority
-thread waiting for this signal.
-
-@item If any other threads are willing to accept delivery of the signal, then
-the signal is delivered to the highest priority thread of this set. In the
-event, multiple threads of the same priority are willing to accept this
-signal, then priority is given first to ready threads, then to threads
-blocked on calls which may be interrupted, and finally to threads blocked
-on non-interruptible calls.
-
-@item In the event the signal still can not be delivered, then it is left
-pending. The first thread to unblock the signal (@code{sigprocmask()} or
-@code{pthread_sigprocmask()}) or to wait for this signal
-(@code{sigwait()}) will be the recipient of the signal.
-
-@end enumerate
-
-@section Operations
-
-@subsection Signal Set Management
-
-Each process and each thread within that process has a set of
-individual signals and handlers associated with it. Services
-are provided to construct signal sets for the purposes of building
-signal sets -- type @code{sigset_t} -- that are used to
-provide arguments to the services that mask, unmask, and
-check on pending signals.
-
-@subsection Blocking Until Signal Generation
-
-A thread may block until receipt of a signal. The "sigwait"
-and "pause" families of functions block until the requested
-signal is received or if using @code{sigtimedwait()} until the specified
-timeout period has elapsed.
-
-@subsection Sending a Signal
-
-This is accomplished
-via one of a number of services that sends a signal to either a
-process or thread. Signals may be directed at a process by
-the service @code{kill()} or at a thread by the service
-@code{pthread_kill()}
-
-@section Directives
-
-This section details the signal manager's directives.
-A subsection is dedicated to each of this manager's directives
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-@c
-@c
-@c
-@page
-@subsection sigaddset - Add a Signal to a Signal Set
-
-@findex sigaddset
-@cindex add a signal to a signal set
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <signal.h>
-
-int sigaddset(
- sigset_t *set,
- int signo
-);
-@end example
-
-@subheading STATUS CODES:
-
-The function returns 0 on success, otherwise it returns -1 and sets
-@code{errno} to indicate the error. @code{errno} may be set to:
-
-@table @b
-@item EINVAL
-Invalid argument passed.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This function adds the signal @code{signo} to the specified signal @code{set}.
-
-@subheading NOTES:
-
-The set must be initialized using either @code{sigemptyset} or @code{sigfillset}
-before using this function.
-
-@c
-@c
-@c
-@page
-@subsection sigdelset - Delete a Signal from a Signal Set
-
-@findex sigdelset
-@cindex delete a signal from a signal set
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <signal.h>
-
-int sigdelset(
- sigset_t *set,
- int signo
-);
-@end example
-
-@subheading STATUS CODES:
-
-The function returns 0 on success, otherwise it returns -1 and sets
-@code{errno} to indicate the error. @code{errno} may be set to:
-
-@table @b
-@item EINVAL
-Invalid argument passed.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This function deletes the signal specified by @code{signo} from the specified
-signal @code{set}.
-
-@subheading NOTES:
-
-The set must be initialized using either @code{sigemptyset} or @code{sigfillset}
-before using this function.
-
-@c
-@c
-@c
-@page
-@subsection sigfillset - Fill a Signal Set
-
-@findex sigfillset
-@cindex fill a signal set
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <signal.h>
-
-int sigfillset(
- sigset_t *set
-);
-@end example
-
-@subheading STATUS CODES:
-
-The function returns 0 on success, otherwise it returns -1 and sets
-@code{errno} to indicate the error. @code{errno} may be set to:
-
-@table @b
-@item EINVAL
-Invalid argument passed.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This function fills the specified signal @code{set} such that all
-signals are set.
-
-@c
-@c
-@c
-@page
-@subsection sigismember - Is Signal a Member of a Signal Set
-
-@findex sigismember
-@cindex is signal a member of a signal set
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <signal.h>
-
-int sigismember(
- const sigset_t *set,
- int signo
-);
-@end example
-
-@subheading STATUS CODES:
-
-The function returns either 1 or 0 if completed successfully, otherwise it
-returns -1 and sets @code{errno} to indicate the error. @code{errno} may be set
-to:
-
-@table @b
-
-@item EINVAL
-Invalid argument passed.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This function returns returns 1 if @code{signo} is a member of @code{set}
-and 0 otherwise.
-
-@subheading NOTES:
-
-The set must be initialized using either @code{sigemptyset} or @code{sigfillset}
-before using this function.
-
-@c
-@c
-@c
-@page
-@subsection sigemptyset - Empty a Signal Set
-
-@findex sigemptyset
-@cindex empty a signal set
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <signal.h>
-
-int sigemptyset(
- sigset_t *set
-);
-@end example
-
-@subheading STATUS CODES:
-
-The function returns 0 on success, otherwise it returns -1 and sets
-@code{errno} to indicate the error. @code{errno} may be set to:
-
-@table @b
-@item EINVAL
-Invalid argument passed.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This function initializes an empty signal set pointed to by @code{set}.
-
-@c
-@c
-@c
-@page
-@subsection sigaction - Examine and Change Signal Action
-
-@findex sigaction
-@cindex examine and change signal action
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <signal.h>
-
-int sigaction(
- int sig,
- const struct sigaction *act,
- struct sigaction *oact
-);
-@end example
-
-@subheading STATUS CODES:
-
-The function returns 0 on success, otherwise it returns -1 and sets
-@code{errno} to indicate the error. @code{errno} may be set to:
-
-@table @b
-@item EINVAL
-Invalid argument passed.
-
-@item ENOTSUP
-Realtime Signals Extension option not supported.
-
-@end table
-
-@subheading DESCRIPTION:
-
-If the argument act is not a null pointer, it points to a structure specifying
-the action to be associated with the specified signal. If the argument oact is
-not a null pointer, the action previously associated with the signal is stored
-in the location pointed to by the argument oact. If the argument act is a null
-pointer, signal handling is unchanged; thus, the call can be used to enquire
-about the current handling of a given signal.
-
-The structure @code{sigaction} has the following members:
-
-@table @code
-
-@item void(*)(int) sa_handler
-Pointer to a signal-catching function or one of the macros SIG_IGN or SIG_DFL.
-
-@item sigset_t sa_mask
-Additional set of signals to be blocked during execution of signal-catching function.
-
-@item int sa_flags
-Special flags to affect behavior of signal.
-
-@item void(*)(int, siginfo_t*, void*) sa_sigaction
-Alternative pointer to a signal-catching function.
-
-@end table
-
-@code{sa_handler} and @code{sa_sigaction} should never be used at the same time as their storage may overlap.
-
-If the @code{SA_SIGINFO} flag (see below) is set in @code{sa_flags}, the
-@code{sa_sigaction} field specifies a signal-catching function, otherwise
-@code{sa_handler} specifies the action to be associated with the signal, which
-may be a signal-catching function or one of the macros @code{SIG_IGN} or
-@code{SIG_DFN}.
-
-The following flags can be set in the @code{sa_flags} field:
-
-@table @code
-
-@c I found no evidence that other flags are used in the source code.
-@c I did a fulltext search in cpukit/posix/, maybe I looked in the wrong place?
-@item SA_SIGINFO
-If not set, the signal-catching function should be declared as @code{void
-func(int signo)} and the address of the function should be set in
-@code{sa_handler}. If set, the signal-catching function should be declared as
-@code{void func(int signo, siginfo_t* info, void* context)} and the address of
-the function should be set in @code{sa_sigaction}.
-
-@end table
-
-The prototype of the @code{siginfo_t} structure is the following:
-@example
-typedef struct
-@{
- int si_signo; /* Signal number */
- int si_code; /* Cause of the signal */
- pid_t si_pid; /* Sending process ID */
- uid_t si_uid; /* Real user ID of sending process */
- void* si_addr; /* Address of faulting instruction */
- int si_status; /* Exit value or signal */
- union sigval
- @{
- int sival_int; /* Integer signal value */
- void* sival_ptr; /* Pointer signal value */
- @} si_value; /* Signal value */
-@}
-@end example
-
-@subheading NOTES:
-
-The signal number cannot be SIGKILL.
-
-@c
-@c
-@c
-@page
-@subsection pthread_kill - Send a Signal to a Thread
-
-@findex pthread_kill
-@cindex send a signal to a thread
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <signal.h>
-
-int pthread_kill(
- pthread_t thread,
- int sig
-);
-@end example
-
-@subheading STATUS CODES:
-
-The function returns 0 on success, otherwise it returns -1 and sets
-@code{errno} to indicate the error. @code{errno} may be set to:
-
-@table @b
-
-@item ESRCH
-The thread indicated by the parameter thread is invalid.
-
-@item EINVAL
-Invalid argument passed.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This functions sends the specified signal @code{sig} to a thread referenced
-to by @code{thread}.
-
-If the signal code is @code{0}, arguments are validated and no signal is sent.
-
-
-@c
-@c
-@c
-@page
-@subsection sigprocmask - Examine and Change Process Blocked Signals
-
-@findex sigprocmask
-@cindex examine and change process blocked signals
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <signal.h>
-
-int sigprocmask(
- int how,
- const sigset_t *set,
- sigset_t *oset
-);
-@end example
-
-@subheading STATUS CODES:
-
-The function returns 0 on success, otherwise it returns -1 and sets
-@code{errno} to indicate the error. @code{errno} may be set to:
-
-@table @b
-
-@item EINVAL
-Invalid argument passed.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This function is used to alter the set of currently blocked signals
-on a process wide basis. A blocked signal will not be received by the
-process. The behavior of this function is dependent on the value of
-@code{how} which may be one of the following:
-
-@table @code
-
-@item SIG_BLOCK
-The set of blocked signals is set to the union of @code{set} and
-those signals currently blocked.
-
-@item SIG_UNBLOCK
-The signals specific in @code{set} are removed from the currently
-blocked set.
-
-@item SIG_SETMASK
-The set of currently blocked signals is set to @code{set}.
-
-@end table
-
-If @code{oset} is not @code{NULL}, then the set of blocked signals prior to
-this call is returned in @code{oset}. If @code{set} is @b{NULL}, no change is
-done, allowing to examine the set of currently blocked signals.
-
-@subheading NOTES:
-
-It is not an error to unblock a signal which is not blocked.
-
-In the current implementation of RTEMS POSIX API sigprocmask() is technically
-mapped to pthread_sigmask().
-
-@c
-@c
-@c
-@page
-@subsection pthread_sigmask - Examine and Change Thread Blocked Signals
-
-@findex pthread_sigmask
-@cindex examine and change thread blocked signals
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <signal.h>
-
-int pthread_sigmask(
- int how,
- const sigset_t *set,
- sigset_t *oset
-);
-@end example
-
-@subheading STATUS CODES:
-
-The function returns 0 on success, otherwise it returns -1 and sets
-@code{errno} to indicate the error. @code{errno} may be set to:
-
-@table @b
-
-@item EINVAL
-Invalid argument passed.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This function is used to alter the set of currently blocked signals
-for the calling thread. A blocked signal will not be received by the
-process. The behavior of this function is dependent on the value of
-@code{how} which may be one of the following:
-
-@table @code
-@item SIG_BLOCK
-The set of blocked signals is set to the union of @code{set} and
-those signals currently blocked.
-
-@item SIG_UNBLOCK
-The signals specific in @code{set} are removed from the currently
-blocked set.
-
-@item SIG_SETMASK
-The set of currently blocked signals is set to @code{set}.
-
-@end table
-
-If @code{oset} is not @code{NULL}, then the set of blocked signals prior to
-this call is returned in @code{oset}. If @code{set} is @b{NULL}, no change is
-done, allowing to examine the set of currently blocked signals.
-
-@subheading NOTES:
-
-It is not an error to unblock a signal which is not blocked.
-
-
-@c
-@c
-@c
-@page
-@subsection kill - Send a Signal to a Process
-
-@findex kill
-@cindex send a signal to a process
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <sys/types.h>
-#include <signal.h>
-
-int kill(
- pid_t pid,
- int sig
-);
-@end example
-
-@subheading STATUS CODES:
-
-The function returns 0 on success, otherwise it returns -1 and sets
-@code{errno} to indicate the error. @code{errno} may be set to:
-
-@table @b
-@item EINVAL
-Invalid argument passed.
-
-@item EPERM
-Process does not have permission to send the signal to any receiving process.
-
-@item ESRCH
-The process indicated by the parameter pid is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This function sends the signal @code{sig} to the process @code{pid}.
-
-@subheading NOTES:
-
-Since RTEMS is a single-process system, a signal can only be sent to the calling
-process (i.e. the current node).
-
-@c
-@c
-@c
-@page
-@subsection sigpending - Examine Pending Signals
-
-@findex sigpending
-@cindex examine pending signals
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <signal.h>
-
-int sigpending(
- const sigset_t *set
-);
-@end example
-
-@subheading STATUS CODES:
-
-The function returns 0 on success, otherwise it returns -1 and sets
-@code{errno} to indicate the error. @code{errno} may be set to:
-
-@table @b
-
-@item EFAULT
-Invalid address for set.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This function allows the caller to examine the set of currently pending
-signals. A pending signal is one which has been raised but is currently
-blocked. The set of pending signals is returned in @code{set}.
-
-@c
-@c
-@c
-@page
-@subsection sigsuspend - Wait for a Signal
-
-@findex sigsuspend
-@cindex wait for a signal
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <signal.h>
-
-int sigsuspend(
- const sigset_t *sigmask
-);
-@end example
-
-@subheading STATUS CODES:
-
-The function returns 0 on success, otherwise it returns -1 and sets
-@code{errno} to indicate the error. @code{errno} may be set to:
-
-@table @b
-
-@item EINTR
-Signal interrupted this function.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This function temporarily replaces the signal mask for the process
-with that specified by @code{sigmask} and blocks the calling thread
-until a signal is raised.
-
-@c
-@c
-@c
-@page
-@subsection pause - Suspend Process Execution
-
-@findex pause
-@cindex suspend process execution
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <signal.h>
-
-int pause( void );
-@end example
-
-@subheading STATUS CODES:
-
-The function returns 0 on success, otherwise it returns -1 and sets
-@code{errno} to indicate the error. @code{errno} may be set to:
-
-@table @b
-
-@item EINTR
-Signal interrupted this function.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This function causes the calling thread to be blocked until an
-unblocked signal is received.
-
-@c
-@c
-@c
-@page
-@subsection sigwait - Synchronously Accept a Signal
-
-@findex sigwait
-@cindex synchronously accept a signal
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <signal.h>
-
-int sigwait(
- const sigset_t *set,
- int *sig
-);
-@end example
-
-@subheading STATUS CODES:
-
-The function returns 0 on success, otherwise it returns -1 and sets
-@code{errno} to indicate the error. @code{errno} may be set to:
-
-@table @b
-
-@item EINVAL
-Invalid argument passed.
-
-@item EINTR
-Signal interrupted this function.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This function selects a pending signal based on the set specified in
-@code{set}, atomically clears it from the set of pending signals, and
-returns the signal number for that signal in @code{sig}.
-
-@c
-@c
-@c
-@page
-@subsection sigwaitinfo - Synchronously Accept a Signal
-
-@findex sigwaitinfo
-@cindex synchronously accept a signal
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <signal.h>
-
-int sigwaitinfo(
- const sigset_t *set,
- siginfo_t *info
-);
-@end example
-
-@subheading STATUS CODES:
-
-The function returns 0 on success, otherwise it returns -1 and sets
-@code{errno} to indicate the error. @code{errno} may be set to:
-
-@table @b
-
-@item EINTR
-Signal interrupted this function.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This function selects a pending signal based on the set specified in
-@code{set}, atomically clears it from the set of pending signals, and
-returns information about that signal in @code{info}.
-
-The prototype of the @code{siginfo_t} structure is the following:
-@example
-typedef struct
-@{
- int si_signo; /* Signal number */
- int si_code; /* Cause of the signal */
- pid_t si_pid; /* Sending process ID */
- uid_t si_uid; /* Real user ID of sending process */
- void* si_addr; /* Address of faulting instruction */
- int si_status; /* Exit value or signal */
- union sigval
- @{
- int sival_int; /* Integer signal value */
- void* sival_ptr; /* Pointer signal value */
- @} si_value; /* Signal value */
-@}
-@end example
-
-@c
-@c
-@c
-@page
-@subsection sigtimedwait - Synchronously Accept a Signal with Timeout
-
-@findex sigtimedwait
-@cindex synchronously accept a signal with timeout
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <signal.h>
-
-int sigtimedwait(
- const sigset_t *set,
- siginfo_t *info,
- const struct timespec *timeout
-);
-@end example
-
-@subheading STATUS CODES:
-
-The function returns 0 on success, otherwise it returns -1 and sets
-@code{errno} to indicate the error. @code{errno} may be set to:
-
-@table @b
-
-@item EAGAIN
-Timed out while waiting for the specified signal set.
-
-@item EINVAL
-Nanoseconds field of the timeout argument is invalid.
-
-@item EINTR
-Signal interrupted this function.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This function selects a pending signal based on the set specified in
-@code{set}, atomically clears it from the set of pending signals, and
-returns information about that signal in @code{info}. The calling thread
-will block up to @code{timeout} waiting for the signal to arrive.
-
-The @code{timespec} structure is defined as follows:
-@example
-struct timespec
-@{
- time_t tv_sec; /* Seconds */
- long tv_nsec; /* Nanoseconds */
-@}
-@end example
-
-@subheading NOTES:
-
-If @code{timeout} is NULL, then the calling thread will wait forever for
-the specified signal set.
-
-@c
-@c
-@c
-@page
-@subsection sigqueue - Queue a Signal to a Process
-
-@findex sigqueue
-@cindex queue a signal to a process
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <signal.h>
-
-int sigqueue(
- pid_t pid,
- int signo,
- const union sigval value
-);
-@end example
-
-@subheading STATUS CODES:
-
-The function returns 0 on success, otherwise it returns -1 and sets
-@code{errno} to indicate the error. @code{errno} may be set to:
-
-@table @b
-
-@item EAGAIN
-No resources available to queue the signal. The process has already
-queued SIGQUEUE_MAX signals that are still pending at the receiver
-or the systemwide resource limit has been exceeded.
-
-@item EINVAL
-The value of the signo argument is an invalid or unsupported signal
-number.
-
-@item EPERM
-The process does not have the appropriate privilege to send the signal
-to the receiving process.
-
-@item ESRCH
-The process pid does not exist.
-
-@end table
-
-@subheading DESCRIPTION:
-
-This function sends the signal specified by @code{signo} to the
-process @code{pid}
-
-The @code{sigval} union is specified as:
-@example
-union sigval
-@{
- int sival_int; /* Integer signal value */
- void* sival_ptr; /* Pointer signal value */
-@}
-@end example
-
-@subheading NOTES:
-
-Since RTEMS is a single-process system, a signal can only be sent to the calling
-process (i.e. the current node).
-
-@c
-@c
-@c
-@page
-@subsection alarm - Schedule Alarm
-
-@findex alarm
-@cindex schedule alarm
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <unistd.h>
-
-unsigned int alarm(
- unsigned int seconds
-);
-@end example
-
-@subheading STATUS CODES:
-
-This call always succeeds.
-
-If there was a previous @code{alarm()} request with time remaining,
-then this routine returns the number of seconds until that outstanding
-alarm would have fired. If no previous @code{alarm()} request was
-outstanding, then zero is returned.
-
-@subheading DESCRIPTION:
-
-The @code{alarm()} service causes the @code{SIGALRM} signal to
-be generated after the number of seconds specified by
-@code{seconds} has elapsed.
-
-@subheading NOTES:
-
-Alarm requests do not queue. If @code{alarm} is called while
-a previous request is outstanding, the call will result in
-rescheduling the time at which the @code{SIGALRM} signal
-will be generated.
-
-If the notification signal, @code{SIGALRM}, is not caught or ignored, the
-calling process is terminated.
-
-@c
-@c
-@c
-@page
-@subsection ualarm - Schedule Alarm in Microseconds
-
-@findex alarm
-@findex microseonds alarm
-@findex usecs alarm
-@cindex schedule alarm in microseonds
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <unistd.h>
-
-useconds_t ualarm(
- useconds_t useconds,
- useconds_t interval
-);
-@end example
-
-@subheading STATUS CODES:
-
-This call always succeeds.
-
-If there was a previous @code{ualarm()} request with time remaining,
-then this routine returns the number of seconds until that outstanding
-alarm would have fired. If no previous @code{alarm()} request was
-outstanding, then zero is returned.
-
-@subheading DESCRIPTION:
-
-The @code{ualarm()} service causes the @code{SIGALRM} signal to
-be generated after the number of microseconds specified by
-@code{useconds} has elapsed.
-
-When @code{interval} is non-zero, repeated timeout notification occurs
-with a period in microseconds specified by @code{interval}.
-
-@subheading NOTES:
-
-Alarm requests do not queue. If @code{alarm} is called while
-a previous request is outstanding, the call will result in
-rescheduling the time at which the @code{SIGALRM} signal
-will be generated.
-
-If the notification signal, @code{SIGALRM}, is not caught or ignored, the
-calling process is terminated.
-
diff --git a/doc/posix_users/stamp-vti b/doc/posix_users/stamp-vti
deleted file mode 100644
index 5634951ec8..0000000000
--- a/doc/posix_users/stamp-vti
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 24 February 2013
-@set UPDATED-MONTH February 2013
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0
diff --git a/doc/posix_users/status.t b/doc/posix_users/status.t
deleted file mode 100644
index d67fa2e019..0000000000
--- a/doc/posix_users/status.t
+++ /dev/null
@@ -1,58 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Status of Implementation
-
-This chapter provides an overview of the status of the implementation
-of the POSIX API for RTEMS. The @i{POSIX 1003.1b Compliance Guide}
-provides more detailed information regarding the implementation of
-each of the numerous functions, constants, and macros specified by
-the POSIX 1003.1b standard.
-
-RTEMS supports many of the process and user/group oriented services
-in a "single user/single process" manner. This means that although
-these services may be of limited usefulness or functionality, they
-are provided and do work in a coherent manner. This is significant
-when porting existing code from UNIX to RTEMS.
-
-@itemize @bullet
-@item Implementation
-@itemize @bullet
-@item The current implementation of @code{dup()} is insufficient.
-@item FIFOs @code{mkfifo()} are not currently implemented.
-@item Asynchronous IO is not implemented.
-@item The @code{flockfile()} family is not implemented
-@item getc/putc unlocked family is not implemented
-@item Shared Memory is not implemented
-@item Mapped Memory is not implemented
-@item NOTES:
-@itemize @bullet
-@item For Shared Memory and Mapped Memory services, it is unclear what
-level of support is appropriate and possible for RTEMS.
-@end itemize
-@end itemize
-
-
-@item Functional Testing
-@itemize @bullet
-@item Tests for unimplemented services
-@end itemize
-
-@item Performance Testing
-@itemize @bullet
-@item There are no POSIX Performance Tests.
-@end itemize
-
-@item Documentation
-@itemize @bullet
-@item Many of the service description pages are not complete in this
-manual. These need to be completed and information added to the
-background and operations sections.
-@item Example programs (not just tests) would be very nice.
-@end itemize
-
-@end itemize
-
-
diff --git a/doc/posix_users/systemdb.t b/doc/posix_users/systemdb.t
deleted file mode 100644
index d6ffc43765..0000000000
--- a/doc/posix_users/systemdb.t
+++ /dev/null
@@ -1,304 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter System Databases Manager
-
-@section Introduction
-
-The
-system databases manager is ...
-
-The directives provided by the system databases manager are:
-
-@itemize @bullet
-@item @code{getgrgid} - Get Group File Entry for ID
-@item @code{getgrgid_r} - Reentrant Get Group File Entry
-@item @code{getgrnam} - Get Group File Entry for Name
-@item @code{getgrnam_r} - Reentrant Get Group File Entry for Name
-@item @code{getpwuid} - Get Password File Entry for UID
-@item @code{getpwuid_r} - Reentrant Get Password File Entry for UID
-@item @code{getpwnam} - Get Password File Entry for Name
-@item @code{getpwnam_r} - Reentrant Get Password File Entry for Name
-@end itemize
-
-@section Background
-
-There is currently no text in this section.
-
-@section Operations
-
-There is currently no text in this section.
-
-@section Directives
-
-This section details the system databases manager's directives.
-A subsection is dedicated to each of this manager's directives
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-@c
-@c
-@c
-@page
-@subsection getgrgid - Get Group File Entry for ID
-
-@findex getgrgid
-@cindex get group file entry for id
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int getgrgid(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection getgrgid_r - Reentrant Get Group File Entry
-
-@findex getgrgid_r
-@cindex reentrant get group file entry
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int getgrgid_r(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection getgrnam - Get Group File Entry for Name
-
-@findex getgrnam
-@cindex get group file entry for name
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int getgrnam(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection getgrnam_r - Reentrant Get Group File Entry for Name
-
-@findex getgrnam_r
-@cindex reentrant get group file entry for name
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int getgrnam_r(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection getpwuid - Get Password File Entry for UID
-
-@findex getpwuid
-@cindex get password file entry for uid
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int getpwuid(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection getpwuid_r - Reentrant Get Password File Entry for UID
-
-@findex getpwuid_r
-@cindex reentrant get password file entry for uid
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int getpwuid_r(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection getpwnam - Password File Entry for Name
-
-@findex getpwnam
-@cindex password file entry for name
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int getpwnam(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-@c
-@c
-@c
-@page
-@subsection getpwnam_r - Reentrant Get Password File Entry for Name
-
-@findex getpwnam_r
-@cindex reentrant get password file entry for name
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int getpwnam_r(
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item E
-The
-
-@end table
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
diff --git a/doc/posix_users/thread.t b/doc/posix_users/thread.t
deleted file mode 100644
index c630e03d6e..0000000000
--- a/doc/posix_users/thread.t
+++ /dev/null
@@ -1,1577 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2014.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Thread Manager
-
-@section Introduction
-
-The thread manager implements the functionality required of the thread
-manager as defined by POSIX 1003.1b. This standard requires that
-a compliant operating system provide the facilties to manage multiple
-threads of control and defines the API that must be provided.
-
-The services provided by the thread manager are:
-
-@itemize @bullet
-@item @code{pthread_attr_init} - Initialize a Thread Attribute Set
-@item @code{pthread_attr_destroy} - Destroy a Thread Attribute Set
-@item @code{pthread_attr_setdetachstate} - Set Detach State
-@item @code{pthread_attr_getdetachstate} - Get Detach State
-@item @code{pthread_attr_setstacksize} - Set Thread Stack Size
-@item @code{pthread_attr_getstacksize} - Get Thread Stack Size
-@item @code{pthread_attr_setstackaddr} - Set Thread Stack Address
-@item @code{pthread_attr_getstackaddr} - Get Thread Stack Address
-@item @code{pthread_attr_setscope} - Set Thread Scheduling Scope
-@item @code{pthread_attr_getscope} - Get Thread Scheduling Scope
-@item @code{pthread_attr_setinheritsched} - Set Inherit Scheduler Flag
-@item @code{pthread_attr_getinheritsched} - Get Inherit Scheduler Flag
-@item @code{pthread_attr_setschedpolicy} - Set Scheduling Policy
-@item @code{pthread_attr_getschedpolicy} - Get Scheduling Policy
-@item @code{pthread_attr_setschedparam} - Set Scheduling Parameters
-@item @code{pthread_attr_getschedparam} - Get Scheduling Parameters
-@item @code{pthread_attr_getaffinity_np} - Get Thread Affinity Attribute
-@item @code{pthread_attr_setaffinity_np} - Set Thread Affinity Attribute
-@item @code{pthread_create} - Create a Thread
-@item @code{pthread_exit} - Terminate the Current Thread
-@item @code{pthread_detach} - Detach a Thread
-@item @code{pthread_getattr_np} - Get Thread Attributes
-@item @code{pthread_join} - Wait for Thread Termination
-@item @code{pthread_self} - Get Thread ID
-@item @code{pthread_equal} - Compare Thread IDs
-@item @code{pthread_once} - Dynamic Package Initialization
-@item @code{pthread_setschedparam} - Set Thread Scheduling Parameters
-@item @code{pthread_getschedparam} - Get Thread Scheduling Parameters
-@item @code{pthread_getaffinity_np} - Get Thread Affinity
-@item @code{pthread_setaffinity_np} - Set Thread Affinity
-@end itemize
-
-@section Background
-
-@subsection Thread Attributes
-
-Thread attributes are utilized only at thread creation time. A thread
-attribute structure may be initialized and passed as an argument to
-the @code{pthread_create} routine.
-
-@table @b
-@item stack address
-is the address of the optionally user specified stack area for this thread.
-If this value is NULL, then RTEMS allocates the memory for the thread stack
-from the RTEMS Workspace Area. Otherwise, this is the user specified
-address for the memory to be used for the thread's stack. Each thread must
-have a distinct stack area. Each processor family has different alignment
-rules which should be followed.
-
-@item stack size
-is the minimum desired size for this thread's stack area.
-If the size of this area as specified by the stack size attribute
-is smaller than the minimum for this processor family and the stack
-is not user specified, then RTEMS will automatically allocate a
-stack of the minimum size for this processor family.
-
-@item contention scope
-specifies the scheduling contention scope. RTEMS only supports the
-PTHREAD_SCOPE_PROCESS scheduling contention scope.
-
-@item scheduling inheritance
-specifies whether a user specified or the scheduling policy and
-parameters of the currently executing thread are to be used. When
-this is PTHREAD_INHERIT_SCHED, then the scheduling policy and
-parameters of the currently executing thread are inherited by
-the newly created thread.
-
-@item scheduling policy and parameters
-specify the manner in which the thread will contend for the processor.
-The scheduling parameters are interpreted based on the specified policy.
-All policies utilize the thread priority parameter.
-
-@end table
-
-@section Operations
-
-There is currently no text in this section.
-
-@section Services
-
-This section details the thread manager's services.
-A subsection is dedicated to each of this manager's services
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-@c
-@c
-@c
-@page
-@subsection pthread_attr_init - Initialize a Thread Attribute Set
-
-@findex pthread_attr_init
-@cindex initialize a thread attribute set
-
-@subheading CALLING SEQUENCE:
-
-
-@example
-#include <pthread.h>
-
-int pthread_attr_init(
- pthread_attr_t *attr
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The attribute pointer argument is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_attr_init} routine initializes the thread attributes
-object specified by @code{attr} with the default value for all of the
-individual attributes.
-
-@subheading NOTES:
-
-The settings in the default attributes are implementation defined. For
-RTEMS, the default attributes are as follows:
-
-@itemize @bullet
-
-@item stackadr
-is not set to indicate that RTEMS is to allocate the stack memory.
-
-@item stacksize
-is set to @code{PTHREAD_MINIMUM_STACK_SIZE}.
-
-@item contentionscope
-is set to @code{PTHREAD_SCOPE_PROCESS}.
-
-@item inheritsched
-is set to @code{PTHREAD_INHERIT_SCHED} to indicate that the created
-thread inherits its scheduling attributes from its parent.
-
-@item detachstate
-is set to @code{PTHREAD_CREATE_JOINABLE}.
-
-@end itemize
-
-
-@c
-@c
-@c
-@page
-@subsection pthread_attr_destroy - Destroy a Thread Attribute Set
-
-@findex pthread_attr_destroy
-@cindex destroy a thread attribute set
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_attr_destroy(
- pthread_attr_t *attr
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The attribute pointer argument is invalid.
-
-@item EINVAL
-The attribute set is not initialized.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_attr_destroy} routine is used to destroy a thread
-attributes object. The behavior of using an attributes object after
-it is destroyed is implementation dependent.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection pthread_attr_setdetachstate - Set Detach State
-
-@findex pthread_attr_setdetachstate
-@cindex set detach state
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_attr_setdetachstate(
- pthread_attr_t *attr,
- int detachstate
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The attribute pointer argument is invalid.
-
-@item EINVAL
-The attribute set is not initialized.
-
-@item EINVAL
-The detachstate argument is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_attr_setdetachstate} routine is used to value of the
-@code{detachstate} attribute. This attribute controls whether the
-thread is created in a detached state.
-
-The @code{detachstate} can be either @code{PTHREAD_CREATE_DETACHED} or
-@code{PTHREAD_CREATE_JOINABLE}. The default value for all threads is
-@code{PTHREAD_CREATE_JOINABLE}.
-
-@subheading NOTES:
-
-If a thread is in a detached state,
-then the use of the ID with the @code{pthread_detach} or
-@code{pthread_join} routines is an error.
-
-@c
-@c
-@c
-@page
-@subsection pthread_attr_getdetachstate - Get Detach State
-
-@findex pthread_attr_getdetachstate
-@cindex get detach state
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_attr_getdetachstate(
- const pthread_attr_t *attr,
- int *detachstate
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The attribute pointer argument is invalid.
-
-@item EINVAL
-The attribute set is not initialized.
-
-@item EINVAL
-The detatchstate pointer argument is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_attr_getdetachstate} routine is used to obtain the
-current value of the @code{detachstate} attribute as specified
-by the @code{attr} thread attribute object.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection pthread_attr_setstacksize - Set Thread Stack Size
-
-@findex pthread_attr_setstacksize
-@cindex set thread stack size
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_attr_setstacksize(
- pthread_attr_t *attr,
- size_t stacksize
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The attribute pointer argument is invalid.
-
-@item EINVAL
-The attribute set is not initialized.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_attr_setstacksize} routine is used to set the
-@code{stacksize} attribute in the @code{attr} thread attribute
-object.
-
-@subheading NOTES:
-
-As required by POSIX, RTEMS defines the feature symbol
-@code{_POSIX_THREAD_ATTR_STACKSIZE} to indicate that this
-routine is supported.
-
-If the specified stacksize is below the minimum required for this CPU
-(@code{PTHREAD_STACK_MIN}, then the stacksize will be set to the minimum
-for this CPU.
-
-@c
-@c
-@c
-@page
-@subsection pthread_attr_getstacksize - Get Thread Stack Size
-
-@findex pthread_attr_getstacksize
-@cindex get thread stack size
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_attr_getstacksize(
- const pthread_attr_t *attr,
- size_t *stacksize
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The attribute pointer argument is invalid.
-
-@item EINVAL
-The attribute set is not initialized.
-
-@item EINVAL
-The stacksize pointer argument is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_attr_getstacksize} routine is used to obtain the
-@code{stacksize} attribute in the @code{attr} thread attribute
-object.
-
-@subheading NOTES:
-
-As required by POSIX, RTEMS defines the feature symbol
-@code{_POSIX_THREAD_ATTR_STACKSIZE} to indicate that this
-routine is supported.
-
-@c
-@c
-@c
-@page
-@subsection pthread_attr_setstackaddr - Set Thread Stack Address
-
-@findex pthread_attr_setstackaddr
-@cindex set thread stack address
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_attr_setstackaddr(
- pthread_attr_t *attr,
- void *stackaddr
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The attribute pointer argument is invalid.
-
-@item EINVAL
-The attribute set is not initialized.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_attr_setstackaddr} routine is used to set the
-@code{stackaddr} attribute in the @code{attr} thread attribute
-object.
-
-@subheading NOTES:
-
-As required by POSIX, RTEMS defines the feature symbol
-@code{_POSIX_THREAD_ATTR_STACKADDR} to indicate that this
-routine is supported.
-
-It is imperative to the proper operation of the system that
-each thread have sufficient stack space.
-
-@c
-@c
-@c
-@page
-@subsection pthread_attr_getstackaddr - Get Thread Stack Address
-
-@findex pthread_attr_getstackaddr
-@cindex get thread stack address
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_attr_getstackaddr(
- const pthread_attr_t *attr,
- void **stackaddr
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The attribute pointer argument is invalid.
-
-@item EINVAL
-The attribute set is not initialized.
-
-@item EINVAL
-The stackaddr pointer argument is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_attr_getstackaddr} routine is used to obtain the
-@code{stackaddr} attribute in the @code{attr} thread attribute
-object.
-
-@subheading NOTES:
-
-As required by POSIX, RTEMS defines the feature symbol
-@code{_POSIX_THREAD_ATTR_STACKADDR} to indicate that this
-routine is supported.
-
-@c
-@c
-@c
-@page
-@subsection pthread_attr_setscope - Set Thread Scheduling Scope
-
-@findex pthread_attr_setscope
-@cindex set thread scheduling scope
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_attr_setscope(
- pthread_attr_t *attr,
- int contentionscope
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The attribute pointer argument is invalid.
-
-@item EINVAL
-The attribute set is not initialized.
-
-@item EINVAL
-The contention scope specified is not valid.
-
-@item ENOTSUP
-The contention scope specified (PTHREAD_SCOPE_SYSTEM) is not supported.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_attr_setscope} routine is used to set the contention
-scope field in the thread attribute object @code{attr} to the value
-specified by @code{contentionscope}.
-
-The @code{contentionscope} must be either @code{PTHREAD_SCOPE_SYSTEM}
-to indicate that the thread is to be within system scheduling contention
-or @code{PTHREAD_SCOPE_PROCESS} indicating that the thread is to be
-within the process scheduling contention scope.
-
-@subheading NOTES:
-
-As required by POSIX, RTEMS defines the feature symbol
-@code{_POSIX_THREAD_PRIORITY_SCHEDULING} to indicate that the
-family of routines to which this routine belongs is supported.
-
-@c
-@c
-@c
-@page
-@subsection pthread_attr_getscope - Get Thread Scheduling Scope
-
-@findex pthread_attr_getscope
-@cindex get thread scheduling scope
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_attr_getscope(
- const pthread_attr_t *attr,
- int *contentionscope
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The attribute pointer argument is invalid.
-
-@item EINVAL
-The attribute set is not initialized.
-
-@item EINVAL
-The contentionscope pointer argument is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_attr_getscope} routine is used to obtain the
-value of the contention scope field in the thread attributes
-object @code{attr}. The current value is returned in
-@code{contentionscope}.
-
-@subheading NOTES:
-
-As required by POSIX, RTEMS defines the feature symbol
-@code{_POSIX_THREAD_PRIORITY_SCHEDULING} to indicate that the
-family of routines to which this routine belongs is supported.
-@c
-@c
-@c
-@page
-@subsection pthread_attr_setinheritsched - Set Inherit Scheduler Flag
-
-@findex pthread_attr_setinheritsched
-@cindex set inherit scheduler flag
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_attr_setinheritsched(
- pthread_attr_t *attr,
- int inheritsched
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The attribute pointer argument is invalid.
-
-@item EINVAL
-The attribute set is not initialized.
-
-@item EINVAL
-The specified scheduler inheritance argument is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_attr_setinheritsched} routine is used to set the
-inherit scheduler field in the thread attribute object @code{attr} to
-the value specified by @code{inheritsched}.
-
-The @code{contentionscope} must be either @code{PTHREAD_INHERIT_SCHED}
-to indicate that the thread is to inherit the scheduling policy
-and parameters fromthe creating thread, or @code{PTHREAD_EXPLICIT_SCHED}
-to indicate that the scheduling policy and parameters for this thread
-are to be set from the corresponding values in the attributes object.
-If @code{contentionscope} is @code{PTHREAD_INHERIT_SCHED}, then the
-scheduling attributes in the @code{attr} structure will be ignored
-at thread creation time.
-
-@subheading NOTES:
-
-As required by POSIX, RTEMS defines the feature symbol
-@code{_POSIX_THREAD_PRIORITY_SCHEDULING} to indicate that the
-family of routines to which this routine belongs is supported.
-
-@c
-@c
-@c
-@page
-@subsection pthread_attr_getinheritsched - Get Inherit Scheduler Flag
-
-@findex pthread_attr_getinheritsched
-@cindex get inherit scheduler flag
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_attr_getinheritsched(
- const pthread_attr_t *attr,
- int *inheritsched
-);
-@end example
-
-@subheading STATUS CODES:
-@table @b
-@item EINVAL
-The attribute pointer argument is invalid.
-
-@item EINVAL
-The attribute set is not initialized.
-
-@item EINVAL
-The inheritsched pointer argument is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_attr_getinheritsched} routine is used to
-object the current value of the inherit scheduler field in
-the thread attribute object @code{attr}.
-
-@subheading NOTES:
-
-As required by POSIX, RTEMS defines the feature symbol
-@code{_POSIX_THREAD_PRIORITY_SCHEDULING} to indicate that the
-family of routines to which this routine belongs is supported.
-
-@c
-@c
-@c
-@page
-@subsection pthread_attr_setschedpolicy - Set Scheduling Policy
-
-@findex pthread_attr_setschedpolicy
-@cindex set scheduling policy
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_attr_setschedpolicy(
- pthread_attr_t *attr,
- int policy
-);
-@end example
-
-@subheading STATUS CODES:
-@table @b
-@item EINVAL
-The attribute pointer argument is invalid.
-
-@item EINVAL
-The attribute set is not initialized.
-
-@item ENOTSUP
-The specified scheduler policy argument is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_attr_setschedpolicy} routine is used to set the
-scheduler policy field in the thread attribute object @code{attr} to
-the value specified by @code{policy}.
-
-Scheduling policies may be one of the following:
-
-@itemize @bullet
-
-@item @code{SCHED_DEFAULT}
-@item @code{SCHED_FIFO}
-@item @code{SCHED_RR}
-@item @code{SCHED_SPORADIC}
-@item @code{SCHED_OTHER}
-
-@end itemize
-
-The precise meaning of each of these is discussed elsewhere in this
-manual.
-
-@subheading NOTES:
-
-As required by POSIX, RTEMS defines the feature symbol
-@code{_POSIX_THREAD_PRIORITY_SCHEDULING} to indicate that the
-family of routines to which this routine belongs is supported.
-
-@c
-@c
-@c
-@page
-@subsection pthread_attr_getschedpolicy - Get Scheduling Policy
-
-@findex pthread_attr_getschedpolicy
-@cindex get scheduling policy
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_attr_getschedpolicy(
- const pthread_attr_t *attr,
- int *policy
-);
-@end example
-
-@subheading STATUS CODES:
-@table @b
-@item EINVAL
-The attribute pointer argument is invalid.
-
-@item EINVAL
-The attribute set is not initialized.
-
-@item EINVAL
-The specified scheduler policy argument pointer is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_attr_getschedpolicy} routine is used to obtain the
-scheduler policy field from the thread attribute object @code{attr}.
-The value of this field is returned in @code{policy}.
-
-@subheading NOTES:
-
-As required by POSIX, RTEMS defines the feature symbol
-@code{_POSIX_THREAD_PRIORITY_SCHEDULING} to indicate that the
-family of routines to which this routine belongs is supported.
-
-@c
-@c
-@c
-@page
-@subsection pthread_attr_setschedparam - Set Scheduling Parameters
-
-@findex pthread_attr_setschedparam
-@cindex set scheduling parameters
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_attr_setschedparam(
- pthread_attr_t *attr,
- const struct sched_param param
-);
-@end example
-
-@subheading STATUS CODES:
-@table @b
-@item EINVAL
-The attribute pointer argument is invalid.
-
-@item EINVAL
-The attribute set is not initialized.
-
-@item EINVAL
-The specified scheduler parameter argument is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_attr_setschedparam} routine is used to set the
-scheduler parameters field in the thread attribute object @code{attr} to
-the value specified by @code{param}.
-
-@subheading NOTES:
-
-As required by POSIX, RTEMS defines the feature symbol
-@code{_POSIX_THREAD_PRIORITY_SCHEDULING} to indicate that the
-family of routines to which this routine belongs is supported.
-
-@c
-@c
-@c
-@page
-@subsection pthread_attr_getschedparam - Get Scheduling Parameters
-
-@findex pthread_attr_getschedparam
-@cindex get scheduling parameters
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_attr_getschedparam(
- const pthread_attr_t *attr,
- struct sched_param *param
-);
-@end example
-
-@subheading STATUS CODES:
-@table @b
-@item EINVAL
-The attribute pointer argument is invalid.
-
-@item EINVAL
-The attribute set is not initialized.
-
-@item EINVAL
-The specified scheduler parameter argument pointer is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_attr_getschedparam} routine is used to obtain the
-scheduler parameters field from the thread attribute object @code{attr}.
-The value of this field is returned in @code{param}.
-
-@subheading NOTES:
-
-As required by POSIX, RTEMS defines the feature symbol
-@code{_POSIX_THREAD_PRIORITY_SCHEDULING} to indicate that the
-family of routines to which this routine belongs is supported.
-
-@c
-@c
-@c
-@page
-@subsection pthread_attr_getaffinity_np - Get Thread Affinity Attribute
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#define _GNU_SOURCE
-#include <pthread.h>
-
-int pthread_attr_getaffinity_np(
- const pthread_attr_t *attr,
- size_t cpusetsize,
- cpu_set_t *cpuset
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EFAULT
-The attribute pointer argument is invalid.
-
-@item EFAULT
-The cpuset pointer argument is invalid.
-
-@item EINVAL
-The @code{cpusetsize} does not match the value of @code{affinitysetsize}
-field in the thread attribute object.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_attr_getaffinity_np} routine is used to obtain the
-@code{affinityset} field from the thread attribute object @code{attr}.
-The value of this field is returned in @code{cpuset}.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection pthread_attr_setaffinity_np - Set Thread Affinity Attribute
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#define _GNU_SOURCE
-#include <pthread.h>
-
-int pthread_attr_setaffinity_np(
- pthread_attr_t *attr,
- size_t cpusetsize,
- const cpu_set_t *cpuset
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EFAULT
-The attribute pointer argument is invalid.
-
-@item EFAULT
-The cpuset pointer argument is invalid.
-
-@item EINVAL
-The @code{cpusetsize} does not match the value of @code{affinitysetsize}
-field in the thread attribute object.
-
-@item EINVAL
-The @code{cpuset} did not select a valid cpu.
-
-@item EINVAL
-The @code{cpuset} selected a cpu that was invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_attr_setaffinity_np} routine is used to set the
-@code{affinityset} field in the thread attribute object @code{attr}.
-The value of this field is returned in @code{cpuset}.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection pthread_create - Create a Thread
-
-@findex pthread_create
-@cindex create a thread
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_create(
- pthread_t *thread,
- const pthread_attr_t *attr,
- void (*start_routine)( void *),
- void *arg
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-
-@item EINVAL
-The attribute set is not initialized.
-
-@item EINVAL
-The user specified a stack address and the size of the area was not
-large enough to meet this processor's minimum stack requirements.
-
-@item EINVAL
-The specified scheduler inheritance policy was invalid.
-
-@item ENOTSUP
-The specified contention scope was PTHREAD_SCOPE_PROCESS.
-
-@item EINVAL
-The specified thread priority was invalid.
-
-@item EINVAL
-The specified scheduling policy was invalid.
-
-@item EINVAL
-The scheduling policy was SCHED_SPORADIC and the specified replenishment
-period is less than the initial budget.
-
-@item EINVAL
-The scheduling policy was SCHED_SPORADIC and the specified low priority
-is invalid.
-
-@item EAGAIN
-The system lacked the necessary resources to create another thread, or the
-self imposed limit on the total number of threads in a process
-PTHREAD_THREAD_MAX would be exceeded.
-
-@item EINVAL
-Invalid argument passed.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_create} routine is used to create a new thread with
-the attributes specified by @code{attr}. If the @code{attr} argument
-is @code{NULL}, then the default attribute set will be used. Modification
-of the contents of @code{attr} after this thread is created does not
-have an impact on this thread.
-
-The thread begins execution at the address specified by @code{start_routine}
-with @code{arg} as its only argument. If @code{start_routine} returns,
-then it is functionally equivalent to the thread executing the
-@code{pthread_exit} service.
-
-Upon successful completion, the ID of the created thread is returned in the
-@code{thread} argument.
-
-@subheading NOTES:
-
-There is no concept of a single main thread in RTEMS as there is in
-a tradition UNIX system. POSIX requires that the implicit return of
-the main thread results in the same effects as if there were a call
-to @code{exit}. This does not occur in RTEMS.
-
-The signal mask of the newly created thread is inherited from its
-creator and the set of pending signals for this thread is empty.
-
-@c
-@c
-@c
-@page
-@subsection pthread_exit - Terminate the Current Thread
-
-@findex pthread_exit
-@cindex terminate the current thread
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-void pthread_exit(
- void *status
-);
-@end example
-
-@subheading STATUS CODES:
-@table @b
-@item NONE
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_exit} routine is used to terminate the calling thread.
-The @code{status} is made available to any successful join with the
-terminating thread.
-
-When a thread returns from its start routine, it results in an
-implicit call to the @code{pthread_exit} routine with the return
-value of the function serving as the argument to @code{pthread_exit}.
-
-@subheading NOTES:
-
-Any cancellation cleanup handlers that hace been pushed and not yet popped
-shall be popped in reverse of the order that they were pushed. After
-all cancellation cleanup handlers have been executed, if the
-thread has any thread-specific data, destructors for that data will
-be invoked.
-
-Thread termination does not release or free any application visible
-resources including byt not limited to mutexes, file descriptors, allocated
-memory, etc.. Similarly, exitting a thread does not result in any
-process-oriented cleanup activity.
-
-There is no concept of a single main thread in RTEMS as there is in
-a tradition UNIX system. POSIX requires that the implicit return of
-the main thread results in the same effects as if there were a call
-to @code{exit}. This does not occur in RTEMS.
-
-All access to any automatic variables allocated by the threads is lost
-when the thread exits. Thus references (i.e. pointers) to local variables
-of a thread should not be used in a global manner without care. As
-a specific example, a pointer to a local variable should NOT be used
-as the return value.
-
-
-@c
-@c
-@c
-@page
-@subsection pthread_detach - Detach a Thread
-
-@findex pthread_detach
-@cindex detach a thread
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_detach(
- pthread_t thread
-);
-@end example
-
-@subheading STATUS CODES:
-@table @b
-@item ESRCH
-The thread specified is invalid.
-
-@item EINVAL
-The thread specified is not a joinable thread.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_detach} routine is used to to indicate that storage
-for @code{thread} can be reclaimed when the thread terminates without
-another thread joinging with it.
-
-@subheading NOTES:
-
-If any threads have previously joined with the specified thread, then they
-will remain joined with that thread. Any subsequent calls to
-@code{pthread_join} on the specified thread will fail.
-
-@c
-@c pthread_getattr_np
-@c
-@page
-@subsection pthread_getattr_np - Get Thread Attributes
-
-@findex pthread_getattr_np
-@cindex get thread attributes
-
-@subheading CALLING SEQUENCE:
-
-@example
-#define _GNU_SOURCE
-#include <pthread.h>
-
-int pthread_getattr_np(
- pthread_t thread,
- pthread_attr_t *attr
-);
-@end example
-
-@subheading STATUS CODES:
-@table @b
-@item ESRCH
-The thread specified is invalid.
-
-@item EINVAL
-The attribute pointer argument is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_getattr_np} routine is used to obtain the
-attributes associated with @code{thread}.
-
-@subheading NOTES:
-
-Modification of the execution modes and priority through the Classic API
-may result in a combination that is not representable in the POSIX API.
-
-@c
-@c
-@c
-@page
-@subsection pthread_join - Wait for Thread Termination
-
-@findex pthread_join
-@cindex wait for thread termination
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_join(
- pthread_t thread,
- void **value_ptr
-);
-@end example
-
-@subheading STATUS CODES:
-@table @b
-@item ESRCH
-The thread specified is invalid.
-
-@item EINVAL
-The thread specified is not a joinable thread.
-
-@item EDEADLK
-A deadlock was detected or thread is the calling thread.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_join} routine suspends execution of the calling thread
-until @code{thread} terminates. If @code{thread} has already terminated,
-then this routine returns immediately. The value returned by @code{thread}
-(i.e. passed to @code{pthread_exit} is returned in @code{value_ptr}.
-
-When this routine returns, then @code{thread} has been terminated.
-
-@subheading NOTES:
-
-The results of multiple simultaneous joins on the same thread is undefined.
-
-If any threads have previously joined with the specified thread, then they
-will remain joined with that thread. Any subsequent calls to
-@code{pthread_join} on the specified thread will fail.
-
-If value_ptr is NULL, then no value is returned.
-
-@c
-@c
-@c
-@page
-@subsection pthread_self - Get Thread ID
-
-@findex pthread_self
-@cindex get thread id
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-pthread_t pthread_self( void );
-@end example
-
-@subheading STATUS CODES:
-
-The value returned is the ID of the calling thread.
-
-@subheading DESCRIPTION:
-
-This routine returns the ID of the calling thread.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c
-@c
-@page
-@subsection pthread_equal - Compare Thread IDs
-
-@findex pthread_equal
-@cindex compare thread ids
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_equal(
- pthread_t t1,
- pthread_t t2
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item zero
-The thread ids are not equal.
-
-@item non-zero
-The thread ids are equal.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_equal} routine is used to compare two thread
-IDs and determine if they are equal.
-
-@subheading NOTES:
-
-The behavior is undefined if the thread IDs are not valid.
-
-@c
-@c
-@c
-@page
-@subsection pthread_once - Dynamic Package Initialization
-
-@findex pthread_once
-@cindex dynamic package initialization
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-pthread_once_t once_control = PTHREAD_ONCE_INIT;
-
-int pthread_once(
- pthread_once_t *once_control,
- void (*init_routine)(void)
-);
-@end example
-
-@subheading STATUS CODES:
-
-NONE
-
-@subheading DESCRIPTION:
-
-The @code{pthread_once} routine is used to provide controlled initialization
-of variables. The first call to @code{pthread_once} by any thread with the
-same @code{once_control} will result in the @code{init_routine} being
-invoked with no arguments. Subsequent calls to @code{pthread_once} with
-the same @code{once_control} will have no effect.
-
-The @code{init_routine} is guaranteed to have run to completion when
-this routine returns to the caller.
-
-@subheading NOTES:
-
-The behavior of @code{pthread_once} is undefined if @code{once_control}
-is automatic storage (i.e. on a task stack) or is not initialized using
-@code{PTHREAD_ONCE_INIT}.
-
-@c
-@c
-@c
-@page
-@subsection pthread_setschedparam - Set Thread Scheduling Parameters
-
-@findex pthread_setschedparam
-@cindex set thread scheduling parameters
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_setschedparam(
- pthread_t thread,
- int policy,
- struct sched_param *param
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The scheduling parameters indicated by the parameter param is invalid.
-
-@item EINVAL
-The value specified by policy is invalid.
-
-@item EINVAL
-The scheduling policy was SCHED_SPORADIC and the specified replenishment
-period is less than the initial budget.
-
-@item EINVAL
-The scheduling policy was SCHED_SPORADIC and the specified low priority
-is invalid.
-
-@item ESRCH
-The thread indicated was invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_setschedparam} routine is used to set the
-scheduler parameters currently associated with the thread specified
-by @code{thread} to the policy specified by @code{policy}. The
-contents of @code{param} are interpreted based upon the @code{policy}
-argument.
-
-@subheading NOTES:
-
-As required by POSIX, RTEMS defines the feature symbol
-@code{_POSIX_THREAD_PRIORITY_SCHEDULING} to indicate that the
-family of routines to which this routine belongs is supported.
-
-@c
-@c
-@c
-@page
-@subsection pthread_getschedparam - Get Thread Scheduling Parameters
-
-@findex pthread_getschedparam
-@cindex get thread scheduling parameters
-
-@subheading CALLING SEQUENCE:
-
-@example
-#include <pthread.h>
-
-int pthread_getschedparam(
- pthread_t thread,
- int *policy,
- struct sched_param *param
-);
-@end example
-
-@subheading STATUS CODES:
-
-@table @b
-@item EINVAL
-The policy pointer argument is invalid.
-
-@item EINVAL
-The scheduling parameters pointer argument is invalid.
-
-@item ESRCH
-The thread indicated by the parameter thread is invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_getschedparam} routine is used to obtain the
-scheduler policy and parameters associated with @code{thread}.
-The current policy and associated parameters values returned in
-@code{policy} and @code{param}, respectively.
-
-@subheading NOTES:
-
-As required by POSIX, RTEMS defines the feature symbol
-@code{_POSIX_THREAD_PRIORITY_SCHEDULING} to indicate that the
-family of routines to which this routine belongs is supported.
-
-@c
-@c pthread_getaffinity_np
-@c
-@page
-@subsection pthread_getaffinity_np - Get Thread Affinity
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#define _GNU_SOURCE
-#include <pthread.h>
-
-int pthread_getaffinity_np(
- const pthread_t id,
- size_t cpusetsize,
- cpu_set_t *cpuset
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EFAULT
-The cpuset pointer argument is invalid.
-
-@item EINVAL
-The @code{cpusetsize} does not match the value of @code{affinitysetsize}
-field in the thread attribute object.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_getaffinity_np} routine is used to obtain the
-@code{affinity.set} field from the thread control object associated
-with the @code{id}. The value of this field is returned in @code{cpuset}.
-
-@subheading NOTES:
-
-NONE
-
-@c
-@c pthread_setaffinity_np
-@c
-@page
-@subsection pthread_setaffinity_np - Set Thread Affinity
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#define _GNU_SOURCE
-#include <pthread.h>
-
-int pthread_setaffinity_np(
- pthread_t id,
- size_t cpusetsize,
- const cpu_set_t *cpuset
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@table @b
-@item EFAULT
-The cpuset pointer argument is invalid.
-
-@item EINVAL
-The @code{cpusetsize} does not match the value of @code{affinitysetsize}
-field in the thread attribute object.
-
-@item EINVAL
-The @code{cpuset} did not select a valid cpu.
-
-@item EINVAL
-The @code{cpuset} selected a cpu that was invalid.
-
-@end table
-
-@subheading DESCRIPTION:
-
-The @code{pthread_setaffinity_np} routine is used to set the
-@code{affinityset} field of the thread object @code{id}.
-The value of this field is returned in @code{cpuset}
-
-@subheading NOTES:
-
-NONE
diff --git a/doc/posix_users/timer.t b/doc/posix_users/timer.t
deleted file mode 100644
index 6ee3e5c808..0000000000
--- a/doc/posix_users/timer.t
+++ /dev/null
@@ -1,193 +0,0 @@
-@c
-@c This is the chapter from the RTEMS POSIX 1003.1b API User's Guide that
-@c documents the services provided by the timer @c manager.
-
-@chapter Timer Manager
-
-@section Introduction
-
-The timer manager is ...
-
-The services provided by the timer manager are:
-
-@itemize @bullet
-@item @code{timer_create} - Create a Per-Process Timer
-@item @code{timer_delete} - Delete a Per-Process Timer
-@item @code{timer_settime} - Set Next Timer Expiration
-@item @code{timer_gettime} - Get Time Remaining on Timer
-@item @code{timer_getoverrun} - Get Timer Overrun Count
-@end itemize
-
-@section Background
-
-@section Operations
-
-@section System Calls
-
-This section details the timer manager's services.
-A subsection is dedicated to each of this manager's services
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-
-@c
-@c timer_create
-@c
-
-@page
-@subsection timer_create - Create a Per-Process Timer
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <time.h>
-#include <signal.h>
-
-int timer_create(
- clockid_t clock_id,
- struct sigevent *evp,
- timer_t *timerid
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@code{EXXX} -
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-
-@c
-@c timer_delete
-@c
-
-@page
-@subsection timer_delete - Delete a Per-Process Timer
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <time.h>
-
-int timer_delete(
- timer_t timerid
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@code{EXXX} -
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-
-@c
-@c timer_settime
-@c
-
-@page
-@subsection timer_settime - Set Next Timer Expiration
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <time.h>
-
-int timer_settime(
- timer_t timerid,
- int flags,
- const struct itimerspec *value,
- struct itimerspec *ovalue
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@code{EXXX} -
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-
-@c
-@c timer_gettime
-@c
-
-@page
-@subsection timer_gettime - Get Time Remaining on Timer
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <time.h>
-
-int timer_gettime(
- timer_t timerid,
- struct itimerspec *value
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@code{EXXX} -
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
-
-@c
-@c timer_getoverrun
-@c
-
-@page
-@subsection timer_getoverrun - Get Timer Overrun Count
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-#include <time.h>
-
-int timer_getoverrun(
- timer_t timerid
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-@code{EXXX} -
-
-@subheading DESCRIPTION:
-
-@subheading NOTES:
-
diff --git a/doc/posix_users/version.texi b/doc/posix_users/version.texi
deleted file mode 100644
index c0e4bbb7b6..0000000000
--- a/doc/posix_users/version.texi
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 17 July 2015
-@set UPDATED-MONTH July 2015
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0
diff --git a/doc/project.am b/doc/project.am
deleted file mode 100644
index 8b5a335cc2..0000000000
--- a/doc/project.am
+++ /dev/null
@@ -1,88 +0,0 @@
-# HACK: makeinfo is locale sensitive
-LANG=C
-
-SUFFIXES = .t
-
-MAINTAINERCLEANFILES =
-CLEANFILES =
-MOSTLYCLEANFILES =
-CLEANFILES += $(GENERATED_FILES)
-
-AM_MAKEINFOFLAGS = -I $(top_builddir) -I $(top_srcdir)
-TEXI2DVI = @TEXI2DVI@ -I $(top_builddir) -I $(top_srcdir)
-TEXI2PDF = @TEXI2PDF@ -I $(top_builddir) -I $(top_srcdir)
-
-# Without $(srcdir) in TEXINPUTS, dvips doesn't find the *.eps
-# we distribute in $(srcdir)
-.dvi.ps:
- TEXINPUTS="$(srcdir)${PATH_SEPARATOR}$$TEXINPUTS" \
- $(DVIPS) -o $@ $<
-
-## DVI support
-dvidir = $(pkgdocdir)/dvi
-
-## PS support
-psdir = $(pkgdocdir)/ps
-
-## PDF support
-pdfdir = $(pkgdocdir)/pdf
-
-if EPSTOPDF
-.eps.pdf:
- $(EPSTOPDF) $< --outfile=$@
-endif
-
-$(PROJECT).pdf: $(PROJECT).texi $($(PROJECT)_TEXINFOS) $(PDF_IMAGES)
-CLEANFILES += $(PROJECT).pdf
-
-MOSTLYCLEANFILES += $(PDF_IMAGES)
-
-## HTML
-SUFFIXES += .html
-
-if USE_HTML
-
-html_project_DATA =
-
-MOSTLYCLEANFILES += $(PROJECT)/*.html
-html_project_DATA += $(PROJECT)/*.html
-
-# Share as much as possible between the texi2html and texi2any rules
-$(PROJECT)/*.html: $(PROJECT).texi $($(PROJECT)_TEXINFOS)
- rm -rf $(PROJECT).html
-if USE_TEXI2HTML
- $(TEXI2HTML) $(TEXI2HTML_ARGS) --menu $<
-endif # USE_TEXI2HTML
-if USE_TEXI2ANY
- $(TEXI2ANY) $(TEXI2ANY_ARGS) $<
-endif # USE_TEXI2ANY
-
-endif # USE_HTML
-
-
-if USE_DVI
-dvi_DATA = $(PROJECT).dvi
-endif # USE_DVI
-
-if USE_PS
-ps_DATA = $(PROJECT).ps
-endif # USE_PS
-
-if USE_PDF
-pdf_DATA = $(PROJECT).pdf
-endif
-
-COMMON_FILES = $(top_srcdir)/common/setup.texi
-COMMON_FILES += $(top_builddir)/common/rtems.texi
-
-$(top_builddir)/common/rtems.texi: $(top_srcdir)/common/rtems.texi.in $(top_builddir)/common/rtems.sed
- sed -f $(top_builddir)/common/rtems.sed \
- $(top_srcdir)/common/rtems.texi.in > $(top_builddir)/common/rtems.texi
-
-$(srcdir)/version.texi:
-
-clean-local: clean-local-check
-.PHONY: clean-local-check
-
-clean-local-check:
- -rm -rf $(PROJECT)
diff --git a/doc/relnotes/Makefile.am b/doc/relnotes/Makefile.am
deleted file mode 100644
index a0fce4f011..0000000000
--- a/doc/relnotes/Makefile.am
+++ /dev/null
@@ -1,18 +0,0 @@
-#
-# COPYRIGHT (c) 1988-2002.
-# On-Line Applications Research Corporation (OAR).
-# All rights reserved.
-
-PROJECT = relnotes
-
-include $(top_srcdir)/project.am
-include $(top_srcdir)/main.am
-
-COMMON_FILES += $(top_srcdir)/common/cpright.texi
-
-FILES = install.texi intro.texi probrep.texi relnotes.texi status.texi
-
-info_TEXINFOS = relnotes.texi
-relnotes_TEXINFOS = $(FILES) $(COMMON_FILES)
-
-CLEANFILES += relnotes.info
diff --git a/doc/relnotes/install.texi b/doc/relnotes/install.texi
deleted file mode 100644
index 969272c1fb..0000000000
--- a/doc/relnotes/install.texi
+++ /dev/null
@@ -1,157 +0,0 @@
-@c
-@c COPYRIGHT (c) 1989-2011.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@node Installation Procedure, Installation Procedure Introduction, Introduction Documentation, Top
-@chapter Installation Procedure
-@menu
-* Installation Procedure Introduction::
-* Installation Procedure RTEMS FTP Site Organization::
-* Installation Procedure Unarchiving the RTEMS and GNU Components::
-* Installation Procedure Installing a Cross-Development GNU Toolset::
-* Installation Procedure Installing RTEMS::
-@end menu
-
-@node Installation Procedure Introduction, Installation Procedure RTEMS FTP Site Organization, Installation Procedure, Installation Procedure
-@section Introduction
-
-This chapter describes the process of installing and
-configuring RTEMS and a cross-development environment based on
-freely available tools and libraries.
-
-@node Installation Procedure RTEMS FTP Site Organization, Installation Procedure Unarchiving the RTEMS and GNU Components, Installation Procedure Introduction, Installation Procedure
-@section RTEMS FTP Site Organization
-
-RTEMS is distributed only via anonymous ftp.
-
-This section will discuss how to navigate the RTEMS
-ftp site and unarchive the files in the RTEMS and GNU package
-distributions. All example commands will be given in a shell
-independent fashion unless otherwise noted.
-
-Throughout the rest of this manual
-<RTEMS_distribution> will be used as the parent of components
-within the RTEMS distribution. For persons using the ftp
-distribution found on the primary ftp site for RTEMS,
-<RTEMS_distribution> are found under this directory
-@uref{ftp://ftp.rtems.com/pub/rtems/}. HTTP access to the
-ftp site is available via @uref{http://www.rtems.org/ftp/pub/rtems}.
-
-The archive files for RTEMS Release @value{VERSION} are found
-under the directory <RTEMS_distribution>. This directory
-contains the files which comprise this relase as well as any
-patches which may be required for other tools.
-
-The complete source code and documentation set for
-the C language implementation of RTEMS is provided.
-
-@node Installation Procedure Unarchiving the RTEMS and GNU Components, Installation Procedure Installing a Cross-Development GNU Toolset, Installation Procedure RTEMS FTP Site Organization, Installation Procedure
-@section Unarchiving the RTEMS and GNU Components
-
-Many of the components of the RTEMS release are
-"tarred, zipped" files and have the .tar.gz or .tgz extension.
-The GNU zip package is required to unarchives these files on the
-RTEMS ftp site. If this package is not installed, the source
-can be found in the files
-@uref{ftp://ftp.gnu.org/pub/gnu/gzip/gzip-1.2.4.shar} or
-@uref{ftp://ftp.gnu.org/pub/gnu/gzip/gzip-1.2.4.tar}. It may be
-restored using a command similar to the following:
-
-@example
-@group
-tar xvf gzip-1.2.4.tar
-
-OR
-
-sh gzip-1.2.4.shar
-@end group
-@end example
-
-This will create a subdirectory gzip-1.2.4 in the
-current directory. Please examine the files README and INSTALL
-and follow the instructions provided there.
-
-[Note: The GNU tools follow a standard packaging procedure
-They will unarchive into a directory based on the package name and version
-number. For detailed instructions on compilation and
-installation of the GNU tools, please refer to the instructions for
-each GNU tool.]
-
-Files which have been "tarred, zipped" (i.e. .tar.gz
-or .tgz extension) may be unarchived with a command similar to
-one of the following:
-
-@example
-@group
-gzcat <file>.tgz | tar xvof -
-
-OR
-
-gunzip -c <file>.tgz | tar xvof -
-
-OR
-
-gtar xzvf <file>.tgz
-@end group
-@end example
-
-NOTE: gunzip -c is equivalent to gzcat, while gtar is GNU tar.
-
-Given that the necessary utility programs are
-installed, any of the above commands will extract the contents
-of <file>.tar.gz into the current directory. All of the RTEMS
-components will be extracted into the subdirectory rtems-@value{VERSION}.
-To view the contents of a component without restoring any files,
-use a command similar to the following:
-
-@example
-@group
-gzcat <file>.tgz | tar tvf -
-@end group
-@end example
-
-@node Installation Procedure Installing a Cross-Development GNU Toolset, Installation Procedure Installing RTEMS, Installation Procedure Unarchiving the RTEMS and GNU Components, Installation Procedure
-@section Installing a Cross-Development GNU Toolset
-
-This sections describes how to build and install the
-FSF GNU tools for use as a cross-compilation system. These
-tools are used by the RTEMS developers. Every effort has been
-made to make these instructions accurate and complete. However,
-it is recommended that the individual doing the installation
-read the appropriate installation notes for each of the tools in
-the cross toolset. This will help insure that there are no
-special requirements for a particular host.
-
-If the host and target processors are the same, then
-it may be possible to use the host development tools. An
-example of this scenario is using a SPARC based workstation
-to develop an RTEMS application for the SPARC processor. Although
-the native toolset is useable in this scenario, it is ultimately
-more desirable to build a toolset specifically for the embedded environment.
-
-Instructions for building a cross environment using the GNU
-tools is provided in the crossgcc FAQ available from ftp.cygnus.com
-in /pub/embedded/crossgcc. It is recommended that the user following
-these instructions.
-
-After the cross development toolset has been built
-and installed, it will be necessary to modify the environment of
-each RTEMS application developer to reflect at least the path of
-the newly installed cross development toolset.
-
-The documentation for the FSF GNU and open source tools is
-formatted using TeX. The RTEMS developers use TeX to
-format the manuals for their own use. This document does not
-contain instructions on the acquisition or installation of TeX
-and supporting tools.
-
-NOTE: For "UNIX" processors, the native compiler binary utilities
-should be used.
-
-@node Installation Procedure Installing RTEMS, Development Environment Status, Installation Procedure Installing a Cross-Development GNU Toolset, Installation Procedure
-@section Installing RTEMS
-
-For instructions on building and installing RTEMS, please refer to
-the file README.configure in the source distribution.
-
diff --git a/doc/relnotes/intro.texi b/doc/relnotes/intro.texi
deleted file mode 100644
index 30e0914be8..0000000000
--- a/doc/relnotes/intro.texi
+++ /dev/null
@@ -1,147 +0,0 @@
-@c
-@c COPYRIGHT (c) 1989-2014.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@node Introduction, Introduction Supporting Tools, Top, Top
-@chapter Introduction
-@menu
-* Introduction Supporting Tools::
-* Introduction Documentation::
-@end menu
-
-This document describes the contents, installation
-procedure, and current status of Release @value{VERSION} of the RTEMS
-executive. An installation procedure is provided which
-describes the steps necessary to load and configure the RTEMS
-environment, including the GNU Development Environment and the
-NEWLIB ANSI C Library, on a host computer. The status of
-the RTEMS environment is given, which includes supported
-processors and target boards, versions of the GNU utilities
-which were used by the RTEMS developers for this release,
-support libraries status, features which are not implemented,
-and any known existing problems.
-
-This RTEMS release package contains the following general components:
-
-@itemize @bullet
-@item RTEMS C Executive
-
-@item RTEMS C Documentation Set
-
-@item RTEMS NEWLIB ANSI C Library
-
-@item Patches to GNU Development Tools
-
-@end itemize
-
-There are multiple mailing lists dedicated to RTEMS.
-Each list may be subscribed to, archives view, etc. by visiting
-@uref{http://www.rtems.org/mailman/listinfo}.
-
-@node Introduction Supporting Tools, GNU Development Tools, Introduction, Introduction
-@section Supporting Tools
-@menu
-* GNU Development Tools::
-* ANSI C Libraries::
-* GNU C Library::
-* NEWLIB C Library::
-@end menu
-
-This section discusses the freely available tools and
-libraries which are part of the RTEMS Development Environment.
-None of the tools discussed in this section were developed by
-the RTEMS project, although many do include submissions from the
-project. All of the tools and libraries required to build RTEMS
-are freely available. The home ftp site for most of the non-RTEMS
-specific tools is either prep.ai.mit.edu (18.71.0.38) or
-ftp.cygnus.com (140.174.1.3).
-
-Specifically of interest to embedded systems developers
-using the GNU tools is the crossgcc mailing list. This is
-a Majordomo style mailing list and may be subscribed to
-by sending a message to crossgcc-request@@cygnus.com with
-the following line as the body:
-
-@example
-subscribe rtems_user@@your_email_goes_here.com
-@end example
-
-Please replace rtems_user@@your_email_goes_here.com with your
-email address. The FAQ for crossgcc is in the /pub/embedded/crossgcc
-directory on ftp.cygnus.com (205.180.83.42).
-
-@node GNU Development Tools, ANSI C Libraries, Introduction Supporting Tools, Introduction Supporting Tools
-@subsection GNU Development Tools
-
-Numerous GNU tools are used in the RTEMS Development
-Environment including C and Ada compilers, the GNU make program,
-GNU m4, the GNU assembler and binary utilities (linker,
-librarian, etc.), GNU tar, GNU zip, and the GNU debugger. These
-tools are distributed in source form and are all licensed under
-the GNU Public License which allows for unrestricted
-distribution under the condition that source code always be
-available. The Free Software Foundation is officially the
-originator of most of the GNU tools although many individuals
-have contributed to the GNU projects. In keeping with the
-spirit of the GPL, most of the time the GNU tools are
-distributed as source code without executables. It is the
-responsibility of the local site to install each tool. Numerous
-organizations and individuals supply executables for the GNU
-tools. All are required by the terms of the GPL to also make
-the source code available to the end user.
-
-The primary ftp site for the FSF GNU tools is
-prep.ai.mit.edu (18.71.0.38) in the /pub/gnu directory. These
-tools are mirrored on numerous ftp sites.
-
-@node ANSI C Libraries, GNU C Library, GNU Development Tools, Introduction Supporting Tools
-@subsection ANSI C Libraries
-
-This section discusses the following freely
-distributable ANSI C Libraries:
-
-@itemize @bullet
-@item GNU C Library, and
-
-@item NEWLIB
-@end itemize
-
-No C Library is included in the standard RTEMS
-distribution. It is the responsibility of the user to obtain
-and install a C Library separately.
-
-@node GNU C Library, NEWLIB C Library, ANSI C Libraries, Introduction Supporting Tools
-@subsection GNU C Library
-
-The GNU C Library is a robust and well-documented C
-Library which is distributed under the terms of the Library GNU
-Public License (LGPL). This library was not designed for use in
-real-time, embedded systems and the resource requirements of
-some of the routines in this library are an obvious indication
-of this. Additionally, this library does not have support for
-reentrancy in the sense that each task in a multitasking system
-could safely invoke every routine in the library. Finally, the
-distribution terms of the LGPL are considered undesirable by
-many embedded systems developers. However, the GNU C Library is
-very complete and is compliant with as many standards as
-possible. Because of this, it may be the only choice for many
-developers.
-
-@node NEWLIB C Library, Introduction Documentation, GNU C Library, Introduction Supporting Tools
-@subsection NEWLIB C Library
-
-The NEWLIB C Library was specifically designed for real-time embedded
-systems. It is a small, reasonably documented Library with support
-for reentrancy. This library is a collection of freely distributable
-and public domain source code and is freely distributable with as few
-restrictions as possible placed on the end user.
-
-@node Introduction Documentation, Installation Procedure, NEWLIB C Library, Introduction
-@section Documentation
-
-The RTEMS Documentation Set is provided online at
-@uref{http://www.rtems.org/onlinedocs.html}
-as reference information for all levels of RTEMS users.
-
-The RTEMS documentation set is available in HTML, PostScript, PDF, and DVI.
diff --git a/doc/relnotes/probrep.texi b/doc/relnotes/probrep.texi
deleted file mode 100644
index 31bf0cda1e..0000000000
--- a/doc/relnotes/probrep.texi
+++ /dev/null
@@ -1,57 +0,0 @@
-@c
-@c COPYRIGHT (c) 1989-2011.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-
-
-@node RTEMS PROBLEM REPORT, Command and Variable Index, RTEMS Problem Reporting, Top
-@chapter RTEMS PROBLEM REPORT
-
-@example
-
-Customer (Company) Name:
-
-Customer Address:
-
-Contact Name:
-
-Telephone Voice: Fax:
-
-
-
-Product: Version:
-
-Target Processor: Target System:
-
-Host Computer System:
-
-Host Operating System: Version:
-
-
-
-Report Type: Customer Impact:
-
-
-
-[ ] Problem/Error [ ] System is inoperable, cannot proceed
-
-[ ] Enhancement [ ] Must be corrected in the near future
-
-[ ] Inquiry Suggestion [ ] Problem may be avoided until fixed
-
-[ ] Other______________ [ ] Problem is not time critical
-
- [ ] Minor problem
-
-@end example
-
-
-Please provide a detailed description of the
-problem (Attachments including source code, example code,
-makefiles, possible solutions, and any other information
-describing the problem will be appreciated):
-
-
-
-
diff --git a/doc/relnotes/relnotes.texi b/doc/relnotes/relnotes.texi
deleted file mode 100644
index de7ab76072..0000000000
--- a/doc/relnotes/relnotes.texi
+++ /dev/null
@@ -1,104 +0,0 @@
-\input texinfo @c -*-texinfo-*-
-@c %**start of header
-@setfilename relnotes.info
-@setcontentsaftertitlepage
-@syncodeindex vr fn
-@synindex ky cp
-@paragraphindent 0
-@c %**end of header
-
-@c
-@c COPYRIGHT (c) 1989-2013.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@c
-@c Master file
-@c
-
-@c Joel's Questions
-@c
-@c 1. Why does paragraphindent only impact makeinfo?
-@c 2. Why does paragraphindent show up in HTML?
-@c
-
-@include version.texi
-@include common/setup.texi
-@include common/rtems.texi
-
-@ifset use-ascii
-@dircategory RTEMS On-Line Manual
-@direntry
-* RTEMS Release Notes: (relnotes). Release Notes
-@end direntry
-@end ifset
-
-@c variable substitution info:
-@c
-@c @set LANGUAGE C
-@c the language is @value{LANGUAGE}
-@c NOTE: don't use underscore in the name
-@c
-
-@c
-@c Title Page Stuff
-@c
-
-@c
-@c I don't really like having a short title page. --joel
-@c
-@c @shorttitlepage RTEMS Release Notes
-
-@setchapternewpage odd
-@settitle RTEMS Release Notes
-@titlepage
-@finalout
-
-@title RTEMS Release Notes
-@subtitle Edition @value{EDITION}, for RTEMS @value{VERSION}
-@sp 1
-@subtitle @value{UPDATED}
-@author On-Line Applications Research Corporation
-@page
-@include common/cpright.texi
-@end titlepage
-
-@c This prevents a black box from being printed on "overflow" lines.
-@c The alternative is to rework a sentence to avoid this problem.
-
-@contents
-
-@ifnottex
-@node Top, Introduction, (dir), (dir)
-@top RTEMS Release Notes
-
-@menu
-* Introduction::
-* Installation Procedure::
-* Development Environment Status::
-* RTEMS PROBLEM REPORT::
-* Command and Variable Index::
-* Concept Index::
-@end menu
-@end ifnottex
-
-@include intro.texi
-@include install.texi
-@include status.texi
-@include probrep.texi
-
-@node Command and Variable Index, Concept Index, RTEMS PROBLEM REPORT, Top
-@unnumbered Command and Variable Index
-
-There are currently no Command and Variable Index entries.
-
-@c @printindex fn
-
-@node Concept Index, , Command and Variable Index, Top
-@unnumbered Concept Index
-
-There are currently no Concept Index entries.
-@c @printindex cp
-
-@bye
-
diff --git a/doc/relnotes/stamp-vti b/doc/relnotes/stamp-vti
deleted file mode 100644
index 5634951ec8..0000000000
--- a/doc/relnotes/stamp-vti
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 24 February 2013
-@set UPDATED-MONTH February 2013
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0
diff --git a/doc/relnotes/status.texi b/doc/relnotes/status.texi
deleted file mode 100644
index 7b8c5b6bd3..0000000000
--- a/doc/relnotes/status.texi
+++ /dev/null
@@ -1,152 +0,0 @@
-@c
-@c COPYRIGHT (c) 1989-2014.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@node Development Environment Status, Development Environment Status RTEMS Executive Status, Installation Procedure Installing RTEMS, Top
-@chapter Development Environment Status
-@menu
-* Development Environment Status RTEMS Executive Status::
-* Development Environment Status Development Environment Status::
-* Development Environment Status Known Problems::
-@end menu
-
-This chapter will describe the current status of
-release version @value{VERSION} of the RTEMS Development Environment.
-
-@node Development Environment Status RTEMS Executive Status, Development Environment Status Development Environment Status, Development Environment Status, Development Environment Status
-@section RTEMS Executive Status
-
-Release @value{VERSION} of the RTEMS Executive contains support
-for both the classic RTEMS API based on the RTEID specification as well
-as support for POSIX threads and real-time extensions.
-
-The classic RTEMS API has the following managers based upon the RTEID
-specification:
-
-@itemize @bullet
-@item Task
-@item Initialization
-@item Clock
-@item Timer
-@item Interrupt
-@item Fatal Error
-@item Message
-@item Semaphore
-@item Event
-@item Signal
-@item Region
-@item Partition
-@item Dual Ported Memory
-@item I/O
-@item Multiprocessing
-@item Rate Monotonic
-@item User Extensions
-@end itemize
-
-RTEMS also has support for the following managers based upon the POSIX threads
-and real-time extensions:
-
-@itemize @bullet
-@item Thread
-@item Clock
-@item Key
-@item Condition Variable
-@item Mutex
-@item Signal
-@item Scheduler
-@end itemize
-
-This release of the C implementation supports the
-following processors and target boards:
-
-@itemize @bullet
-@item Motorola M68k family
-@itemize -
-@item DY-4 DMV152, SVME153
-@item Motorola IDP
-@item Motorola MVME135, MVME136
-@item Motorola MVME147, MVME147S
-@item Motorola MVME162
-@item EFI 68000 and 68332
-@item Generic 68302
-@item Generic 68360 and 68360 in companion mode with 68040
-@end itemize
-
-@item Intel i386 family
-@itemize -
-@item Force CPU386
-@item Intel i386ex eval board
-@item PC-AT i386 and above (go32)
-@end itemize
-
-@item PowerPC
-@itemize -
-@item Papyrus (proprietary controller)
-@end itemize
-
-@item SPARC
-@itemize -
-@item ERC32 (space-hardened V7)
-@end itemize
-
-@item MIPS
-@itemize -
-@item P4000 with R4600 or R4650
-@end itemize
-
-@end itemize
-
-Support for the NEWLIB Standard C Library is
-provided with this release which may be used on any of the RTEMS
-supported targets. The BSPs only provide support for console
-I/O only using this library. Support for the reentrancy
-capabilities of newlib is provided in the RTEMS distribution.
-
-@node Development Environment Status Development Environment Status, Development Environment Status Known Problems, Development Environment Status RTEMS Executive Status, Development Environment Status
-@section Development Environment Status
-
-This section details the versions of the tools used
-to develop and maintain RTEMS @value{VERSION}:
-
-@itemize @bullet
-@item Cross Tools
-@itemize -
-@item gcc - 2.7.2.2 with rtems patch
-@item binutils - 2.7 with rtems patch
-@item zip - 1.2.4
-@item make - 3.74
-@end itemize
-@end itemize
-
-
-@node Development Environment Status Known Problems, Executive Problems, Development Environment Status Development Environment Status, Development Environment Status
-@section Known Problems
-@menu
-* Executive Problems::
-* Development Environment Problems::
-* RTEMS Problem Reporting::
-@end menu
-
-Problems which are known to exist at the time of
-release are described in the following sections. These are
-provided as warnings to the user and where possible, workarounds
-are provided until the problem is corrected.
-
-@node Executive Problems, Development Environment Problems, Development Environment Status Known Problems, Development Environment Status Known Problems
-@subsection Executive Problems
-
-There are no known bugs in the executive itself.
-
-@node Development Environment Problems, RTEMS Problem Reporting, Executive Problems, Development Environment Status Known Problems
-@subsection Development Environment Problems
-
-There are no known major problems with the
-development environment.
-
-@node RTEMS Problem Reporting, RTEMS PROBLEM REPORT, Development Environment Problems, Development Environment Status Known Problems
-@subsection RTEMS Problem Reporting
-
-The RTEMS Project uses the Bugzilla Problem Reporting and Tracking System.
-Instructions for reporting a problem are located at
-@uref{http://rtems.org/wiki/index.php/RTEMSBugReporting}.
diff --git a/doc/relnotes/version.texi b/doc/relnotes/version.texi
deleted file mode 100644
index c0e4bbb7b6..0000000000
--- a/doc/relnotes/version.texi
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 17 July 2015
-@set UPDATED-MONTH July 2015
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0
diff --git a/doc/setup.def b/doc/setup.def
deleted file mode 100644
index e41cfa82a0..0000000000
--- a/doc/setup.def
+++ /dev/null
@@ -1,21 +0,0 @@
-#
-# RTEMS tools setup
-#
-
-binutils_version=2.18.91
-# binutils_patch_version=
-binutils_suffix=.tar.bz2
-binutils_rpm_release=1
-gdb_version=6.8
-gdb_suffix=.tar.bz2
-gdb_patch_version=rtems4.10-20080917
-gdb_rpm_release=3
-rtems_version=4.10.99.0
-rtems_rpm_release=1
-newlib_version=1.16.0
-newlib_suffix=.tar.gz
-newlib_patch_version=rtems4.10-20080925
-gcc_version=4.3.2
-gcc_suffix=.tar.bz2
-gcc_patch_version=rtems4.10-20080917
-gccnewlib_rpm_release=3
diff --git a/doc/shell/Makefile.am b/doc/shell/Makefile.am
deleted file mode 100644
index a16c886e87..0000000000
--- a/doc/shell/Makefile.am
+++ /dev/null
@@ -1,53 +0,0 @@
-#
-# COPYRIGHT (c) 1988-2007
-# On-Line Applications Research Corporation (OAR).
-# All rights reserved.
-
-PROJECT = shell
-
-include $(top_srcdir)/project.am
-include $(top_srcdir)/main.am
-
-FILES = shell.texi preface.texi
-
-GENERATED_FILES = confinit.texi general.texi file.texi memory.texi \
- rtems.texi network.texi
-
-COMMON_FILES += $(top_srcdir)/common/cpright.texi
-
-info_TEXINFOS = shell.texi
-shell_TEXINFOS = $(FILES) $(COMMON_FILES) $(GENERATED_FILES)
-
-confinit.texi: confinit.t
- $(BMENU2) -p "Preface" \
- -u "Top" \
- -n "General Commands" < $< > $@
-
-general.texi: general.t
- $(BMENU2) -p "Configuration and Initialization rtems_shell_login_check - Default login check handler" \
- -u "Top" \
- -n "File and Directory Commands" < $< > $@
-
-file.texi: file.t
- $(BMENU2) -p "General Commands exit - exit the shell" \
- -u "Top" \
- -n "Memory Commands" < $< > $@
-
-memory.texi: memory.t
- $(BMENU2) -p "File and Directory Commands unmount - unmount disk" \
- -u "Top" \
- -n "RTEMS Specific Commands" < $< > $@
-
-rtems.texi: rtems.t
- $(BMENU2) -p "Memory Commands malloc - obtain information on C program heap" \
- -u "Top" \
- -n "Network Commands" < $< > $@
-
-network.texi: network.t
- $(BMENU2) -p "RTEMS Specific Commands pthread - display information about POSIX threads" \
- -u "Top" \
- -n "Function and Variable Index" < $< > $@
-
-EXTRA_DIST = general.t file.t memory.t rtems.t network.t
-
-CLEANFILES += shell.info shell.info-? shell.info-??
diff --git a/doc/shell/confinit.t b/doc/shell/confinit.t
deleted file mode 100644
index cecd683ed0..0000000000
--- a/doc/shell/confinit.t
+++ /dev/null
@@ -1,415 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2008.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Configuration and Initialization
-
-@section Introduction
-
-This chapter provides information on how the application
-configures and initializes the RTEMS shell.
-
-@c
-@c
-@c
-@section Configuration
-
-The command set available to the application is user configurable.
-It is configured using a mechanism similar to the @code{confdefs.h}
-mechanism used to specify application configuration.
-
-In the simplest case, if the user wishes to configure a command
-set with all commands available that are neither filesystem
-management (e.g. mounting, formating, etc.) or network related,
-then the following is all that is required:
-
-@smallexample
-#define CONFIGURE_SHELL_COMMANDS_INIT
-#define CONFIGURE_SHELL_COMMANDS_ALL
-
-#include <rtems/shellconfig.h>
-@end smallexample
-
-In a slightly more complex example, if the user wishes to include
-all networking commands as well as support for mounting MS-DOS and
-NFS filesystems, then the following is all that is required:
-
-@smallexample
-#define CONFIGURE_SHELL_COMMANDS_INIT
-#define CONFIGURE_SHELL_COMMANDS_ALL
-#define CONFIGURE_SHELL_MOUNT_MSDOS
-#define CONFIGURE_SHELL_MOUNT_NFS
-
-#include <rtems/shellconfig.h>
-@end smallexample
-
-@subsection Customizing the Command Set
-
-The user can configure specific command sets by either building
-up the set from individual commands or starting with a complete
-set and disabling individual commands. Each command has two
-configuration macros associated with it.
-
-@table @b
-
-@item @code{CONFIGURE_SHELL_COMMAND_XXX}
-Each command has a constant of this form which is defined when
-building a command set by individually enabling specific
-commands.
-
-@item @code{CONFIGURE_SHELL_NO_COMMAND_XXX}
-In contrast, each command has a similar command which is
-defined when the application is configuring a command set
-by disabling specific commands in the set.
-
-@end table
-
-@subsection Adding Custom Commands
-
-One of the design goals of the RTEMS Shell was to make it
-easy for a user to add custom commands specific to their
-application. We believe this design goal was accomplished.
-In order to add a custom command, the user is required to
-do the following:
-
-@itemize @bullet
-
-@item Provide a @i{main-style} function which implements
-the command. If that command function uses a @code{getopt}
-related function to parse arguments, it @b{MUST} use the
-reentrant form.
-
-@item Provide a command definition structure of type
-@code{rtems_shell_cmd_t}.
-
-@item Configure that command using the
-@code{CONFIGURE_SHELL_USER_COMMANDS} macro.
-@end itemize
-
-Custom aliases are configured similarly but the user
-only provides an alias definition structure of type
-@code{rtems_shell_alias_t} and configures the alias
-via the @code{CONFIGURE_SHELL_USER_ALIASES} macro.
-
-In the following example, we have implemented a custom
-command named @code{usercmd} which simply prints the
-arguments it was passed. We have also provided an
-alias for @code{usercmd} named @code{userecho}.
-
-@smallexample
-#include <rtems/shell.h>
-
-int main_usercmd(int argc, char **argv)
-@{
- int i;
- printf( "UserCommand: argc=%d\n", argc );
- for (i=0 ; i<argc ; i++ )
- printf( "argv[%d]= %s\n", i, argv[i] );
- return 0;
-@}
-
-rtems_shell_cmd_t Shell_USERCMD_Command = @{
- "usercmd", /* name */
- "usercmd n1 [n2 [n3...]]", /* usage */
- "user", /* topic */
- main_usercmd, /* command */
- NULL, /* alias */
- NULL /* next */
-@};
-
-rtems_shell_alias_t Shell_USERECHO_Alias = @{
- "usercmd", /* command */
- "userecho" /* alias */
-@};
-
-#define CONFIGURE_SHELL_USER_COMMANDS &Shell_USERCMD_Command
-#define CONFIGURE_SHELL_USER_ALIASES &Shell_USERECHO_Alias
-#define CONFIGURE_SHELL_COMMANDS_INIT
-#define CONFIGURE_SHELL_COMMANDS_ALL
-#define CONFIGURE_SHELL_MOUNT_MSDOS
-
-#include <rtems/shellconfig.h>
-@end smallexample
-
-Notice in the above example, that the user wrote the
-@i{main} for their command (e.g. @code{main_usercmd})
-which looks much like any other @code{main()}. They
-then defined a @code{rtems_shell_cmd_t} structure
-named @code{Shell_USERCMD_Command} which describes that
-command. This command definition structure is registered
-into the static command set by defining
-@code{CONFIGURE_SHELL_USER_COMMANDS} to
-@code{&Shell_USERCMD_Command}.
-
-Similarly, to add the @code{userecho} alias, the user
-provides the alias definition structure named
-@code{Shell_USERECHO_Alias} and defines
-@code{CONFIGURE_SHELL_USER_ALIASES} to configure
-the alias.
-
-The user can configure any number of commands
-and aliases in this manner.
-
-@c
-@c
-@c
-@section Initialization
-
-The shell may be easily attached to a serial port or
-to the @code{telnetd} server. This section describes
-how that is accomplished.
-
-@c
-@c
-@c
-@subsection Attached to a Serial Port
-
-Starting the shell attached to the console or a serial
-port is very simple. The user invokes @code{rtems_shell_init}
-with parameters to indicate the characteristics of the task
-that will be executing the shell including name, stack size,
-and priority. The user also specifies the device that the
-shell is to be attached to.
-
-This example is taken from the @code{fileio} sample test.
-This shell portion of this test can be run on any target which
-provides a console with input and output capabilities. It does
-not include any commands which cannot be supported on all BSPs.
-The source code for this test is in @code{testsuites/samples/fileio}
-with the shell configuration in the @code{init.c} file.
-
-@smallexample
-#include <rtems/shell.h>
-
-void start_shell(void)
-@{
- printf(" =========================\n");
- printf(" starting shell\n");
- printf(" =========================\n");
- rtems_shell_init(
- "SHLL", /* task name */
- RTEMS_MINIMUM_STACK_SIZE * 4, /* task stack size */
- 100, /* task priority */
- "/dev/console", /* device name */
- false, /* run forever */
- true, /* wait for shell to terminate */
- rtems_shell_login_check /* login check function,
- use NULL to disable a login check */
- );
-@}
-@end smallexample
-
-In the above example, the call to @code{rtems_shell_init}
-spawns a task to run the RTEMS Shell attached to @code{/dev/console}
-and executing at priority 100. The caller suspends itself and
-lets the shell take over the console device. When the shell
-is exited by the user, then control returns to the caller.
-
-@c
-@c
-@c
-@subsection Attached to a Socket
-
-TBD
-
-@c
-@c
-@c
-@section Access Control
-
-@subsection Login Checks
-
-Login checks are optional for the RTEMS shell and can be configured via a login
-check handler passed to @code{rtems_shell_init()}. One login check handler is
-@code{rtems_shell_login_check()}.
-
-@subsection Configuration Files
-
-The following files are used by the login check handler
-@code{rtems_shell_login_check()} to validate a passphrase for a user and to set
-up the user environment for the shell command execution.
-
-@table @file
-
-@item /etc/passwd
-The format for each line is
-
-@example
-user_name:password:UID:GID:GECOS:directory:shell
-@end example
-
-with colon separated
-fields. For more information refer to the Linux PASSWD(5) man page. Use a
-@code{password} of @code{*} to disable the login of the user. An empty
-password allows login without a password for this user. In contrast to
-standard UNIX systems, this file is only readable and writeable for the user
-with an UID of zero by default. The @code{directory} is used to perform a
-filesystem change root operation in @code{rtems_shell_login_check()} in
-contrast to a normal usage as the HOME directory of the user. The
-@strong{default} content is
-
-@example
-root::0:0::::
-@end example
-
-so there is @strong{no password required} for the @code{root} user.
-
-@item /etc/group
-The format for each line is
-
-@example
-group_name:password:GID:user_list
-@end example
-
-with colon separated fields. The @code{user_list} is comma separated. For
-more information refer to the Linux GROUP(5) man page. In contrast to standard
-UNIX systems, this file is only readable and writeable for the user with an UID
-of zero by default. The default content is
-
-@example
-root::0:
-@end example
-
-@end table
-
-@subsection Command Visibility and Execution Permission
-
-Each command has
-
-@itemize @bullet
-@item an owner,
-@item a group, and
-@item a read permission flag for the owner, the group and all other users, and
-@item an execution permission flag for the owner, the group and all other
-users.
-@end itemize
-
-The read and write permission flags are stored in the command mode. The read
-permission flags determine the visibility of the command for the current user.
-The execution permission flags determine the ability to execute a command for
-the current user. These command properties can be displayed and changed with
-the
-
-@itemize @bullet
-@item @code{cmdls},
-@item @code{cmdchown}, and
-@item @code{cmdchmod}
-@end itemize
-
-commands. The access is determined by the effective UID, the effective GID and
-the supplementary group IDs of the current user and follows the standard
-filesystem access procedure.
-
-@subsection Add CRYPT(3) Formats
-
-By default the @code{crypt_r()} function used by
-@code{rtems_shell_login_check()} supports only plain text passphrases. Use
-@code{crypt_add_format()} to add more formats. The following formats are
-available out of the box
-
-@itemize @bullet
-@item @code{crypt_md5_format},
-@item @code{crypt_sha256_format}, and
-@item @code{crypt_sha512_format}.
-@end itemize
-
-An example follows.
-
-@findex crypt_add_format
-@example
-#include <crypt.h>
-
-void add_formats( void )
-@{
- crypt_add_format( &crypt_md5_format );
- crypt_add_format( &crypt_sha512_format );
-@}
-@end example
-
-@section Functions
-
-This section describes the Shell related C functions which are
-publicly available related to initialization and configuration.
-
-@page
-@subsection rtems_shell_init - Initialize the shell
-
-@cindex initialization
-
-@subheading CALLING SEQUENCE:
-
-@findex rtems_shell_init
-@example
-rtems_status_code rtems_shell_init(
- const char *task_name,
- size_t task_stacksize,
- rtems_task_priority task_priority,
- const char *devname,
- bool forever,
- bool wait,
- rtems_login_check login_check
-);
-@end example
-
-@subheading DIRECTIVE STATUS CODES:
-@code{RTEMS_SUCCESSFUL} - Shell task spawned successfully@*
-others - to indicate a failure condition
-
-@subheading DESCRIPTION:
-This service creates a task with the specified characteristics to
-run the RTEMS Shell attached to the specified @code{devname}.
-
-@subheading NOTES:
-
-This method invokes the @code{rtems_task_create} and @code{rtems_task_start}
-directives and as such may return any status code that those directives
-may return.
-
-There is one POSIX key necessary for all shell instances together and one POSIX
-key value pair per instance. You should make sure that your RTEMS configuration
-accounts for these resources.
-
-@page
-@subsection rtems_shell_login_check - Default login check handler
-
-@cindex initialization
-
-@subheading CALLING SEQUENCE:
-
-@findex rtems_shell_login_check
-@example
-bool rtems_shell_login_check(
- const char *user,
- const char *passphrase
-);
-@end example
-
-@subheading DIRECTIVE STATUS CODES:
-@code{true} - login is allowed, and@*
-@code{false} - otherwise.
-
-@subheading DESCRIPTION:
-
-This function checks if the specified passphrase is valid for the specified user.
-
-@subheading NOTES:
-
-As a side-effect if the specified passphrase is valid for the specified user,
-this function
-
-@itemize @bullet
-@item performs a filesystem change root operation to the directory of the
-specified user if the directory path is non-empty,
-@item changes the owner of the current shell device to the UID of the specified
-user,
-@item sets the real and effective UID of the current user environment to the
-UID of the specified user,
-@item sets the real and effective GID of the current user environment to the
-GID of the specified user, and
-@item sets the supplementary group IDs of the current user environment to the
-supplementary group IDs of the specified user.
-@end itemize
-
-In case the filesystem change root operation fails, then the environment setup
-is aborted and @code{false} is returned.
diff --git a/doc/shell/file.t b/doc/shell/file.t
deleted file mode 100644
index dc482a4df6..0000000000
--- a/doc/shell/file.t
+++ /dev/null
@@ -1,2861 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2008.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter File and Directory Commands
-
-@section Introduction
-
-The RTEMS shell has the following file and directory commands:
-
-@itemize @bullet
-
-@item @code{blksync} - sync the block driver
-@item @code{cat} - display file contents
-@item @code{cd} - alias for chdir
-@item @code{chdir} - change the current directory
-@item @code{chmod} - change permissions of a file
-@item @code{chroot} - change the root directory
-@item @code{cp} - copy files
-@item @code{dd} - format disks
-@item @code{debugrfs} - debug RFS file system
-@item @code{df} - display file system disk space usage
-@item @code{dir} - alias for ls
-@item @code{fdisk} - format disks
-@item @code{hexdump} - format disks
-@item @code{ln} - make links
-@item @code{ls} - list files in the directory
-@item @code{md5} - display file system disk space usage
-@item @code{mkdir} - create a directory
-@item @code{mkdos} - DOSFS disk format
-@item @code{mknod} - make device special file
-@item @code{mkrfs} - format RFS file system
-@item @code{mount} - mount disk
-@item @code{mv} - move files
-@item @code{pwd} - print work directory
-@item @code{rmdir} - remove empty directories
-@item @code{rm} - remove files
-@item @code{umask} - Set file mode creation mask
-@item @code{unmount} - unmount disk
-
-@end itemize
-
-@section Commands
-
-This section details the File and Directory Commands available. A
-subsection is dedicated to each of the commands and
-describes the behavior and configuration of that
-command as well as providing an example usage.
-
-@c
-@c
-@c
-@page
-@subsection blksync - sync the block driver
-
-@pgindex blksync
-
-@subheading SYNOPSYS:
-
-@example
-blksync driver
-@end example
-
-@subheading DESCRIPTION:
-
-This command XXX
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{blksync}:
-
-@example
-EXAMPLE_TBD
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_BLKSYNC
-@findex CONFIGURE_SHELL_COMMAND_BLKSYNC
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_BLKSYNC} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_BLKSYNC} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_blksync
-
-The @code{blksync} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_blksync(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{blksync} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_BLKSYNC_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection cat - display file contents
-
-@pgindex cat
-
-@subheading SYNOPSYS:
-
-@example
-cat file1 [file2 .. fileN]
-@end example
-
-@subheading DESCRIPTION:
-
-This command displays the contents of the specified files.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-It is possible to read the input from a device file using @code{cat}.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{cat}:
-
-@example
-SHLL [/] # cat /etc/passwd
-root:*:0:0:root::/:/bin/sh
-rtems:*:1:1:RTEMS Application::/:/bin/sh
-tty:!:2:2:tty owner::/:/bin/false
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_CAT
-@findex CONFIGURE_SHELL_COMMAND_CAT
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_CAT} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_CAT} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_cat
-
-The @code{cat} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_cat(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{cat} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_CAT_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection cd - alias for chdir
-
-@pgindex cd
-
-@subheading SYNOPSYS:
-
-@example
-cd directory
-@end example
-
-@subheading DESCRIPTION:
-
-This command is an alias or alternate name for the @code{chdir}.
-See @ref{File and Directory Commands chdir - change the current directory, cd}
-for more information.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{cd}:
-
-@example
-SHLL [/] $ cd etc
-SHLL [/etc] $ cd /
-SHLL [/] $ cd /etc
-SHLL [/etc] $ pwd
-/etc
-SHLL [/etc] $ cd /
-SHLL [/] $ pwd
-/
-SHLL [/] $ cd etc
-SHLL [/etc] $ cd ..
-SHLL [/] $ pwd
-/
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_CD
-@findex CONFIGURE_SHELL_COMMAND_CD
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_CD} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_CD} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_cd
-
-The @code{cd} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_cd(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{cd} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_CD_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection chdir - change the current directory
-
-@pgindex chdir
-
-@subheading SYNOPSYS:
-
-@example
-chdir [dir]
-@end example
-
-@subheading DESCRIPTION:
-
-This command is used to change the current working directory to
-the specified directory. If no arguments are given, the current
-working directory will be changed to @code{/}.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{chdir}:
-
-@example
-SHLL [/] $ pwd
-/
-SHLL [/] $ chdir etc
-SHLL [/etc] $ pwd
-/etc
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_CHDIR
-@findex CONFIGURE_SHELL_COMMAND_CHDIR
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_CHDIR} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_CHDIR} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_chdir
-
-The @code{chdir} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_chdir(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{chdir} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_CHDIR_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection chmod - change permissions of a file
-
-@pgindex chmod
-
-@subheading SYNOPSYS:
-
-@example
-chmod permissions file1 [file2...]
-@end example
-
-@subheading DESCRIPTION:
-
-This command changes the permissions on the files specified to the
-indicated @code{permissions}. The permission values are POSIX based
-with owner, group, and world having individual read, write, and
-executive permission bits.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-The @code{chmod} command only takes numeric representations of
-the permissions.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{chmod}:
-
-@example
-SHLL [/] # cd etc
-SHLL [/etc] # ls
--rw-r--r-- 1 root root 102 Jan 01 00:00 passwd
--rw-r--r-- 1 root root 42 Jan 01 00:00 group
--rw-r--r-- 1 root root 30 Jan 01 00:00 issue
--rw-r--r-- 1 root root 28 Jan 01 00:00 issue.net
-4 files 202 bytes occupied
-SHLL [/etc] # chmod 0777 passwd
-SHLL [/etc] # ls
--rwxrwxrwx 1 root root 102 Jan 01 00:00 passwd
--rw-r--r-- 1 root root 42 Jan 01 00:00 group
--rw-r--r-- 1 root root 30 Jan 01 00:00 issue
--rw-r--r-- 1 root root 28 Jan 01 00:00 issue.net
-4 files 202 bytes occupied
-SHLL [/etc] # chmod 0322 passwd
-SHLL [/etc] # ls
---wx-w--w- 1 nouser root 102 Jan 01 00:00 passwd
--rw-r--r-- 1 nouser root 42 Jan 01 00:00 group
--rw-r--r-- 1 nouser root 30 Jan 01 00:00 issue
--rw-r--r-- 1 nouser root 28 Jan 01 00:00 issue.net
-4 files 202 bytes occupied
-SHLL [/etc] # chmod 0644 passwd
-SHLL [/etc] # ls
--rw-r--r-- 1 root root 102 Jan 01 00:00 passwd
--rw-r--r-- 1 root root 42 Jan 01 00:00 group
--rw-r--r-- 1 root root 30 Jan 01 00:00 issue
--rw-r--r-- 1 root root 28 Jan 01 00:00 issue.net
-4 files 202 bytes occupied
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_CHMOD
-@findex CONFIGURE_SHELL_COMMAND_CHMOD
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_CHMOD} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_CHMOD} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_chmod
-
-The @code{chmod} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_chmod(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{chmod} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_CHMOD_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection chroot - change the root directory
-
-@pgindex chroot
-
-@subheading SYNOPSYS:
-
-@example
-chroot [dir]
-@end example
-
-@subheading DESCRIPTION:
-
-This command changes the root directory to @code{dir} for subsequent
-commands.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-The destination directory @code{dir} must exist.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{chroot}
-and the impact it has on the environment for subsequent
-command invocations:
-
-@example
-SHLL [/] $ cat passwd
-cat: passwd: No such file or directory
-SHLL [/] $ chroot etc
-SHLL [/] $ cat passwd
-root:*:0:0:root::/:/bin/sh
-rtems:*:1:1:RTEMS Application::/:/bin/sh
-tty:!:2:2:tty owner::/:/bin/false
-SHLL [/] $ cat /etc/passwd
-cat: /etc/passwd: No such file or directory
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_CHROOT
-@findex CONFIGURE_SHELL_COMMAND_CHROOT
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_CHROOT} to have this
-command included. Additional to that you have to add one
-POSIX key value pair for each thread where you want to use
-the command.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_CHROOT} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_chroot
-
-The @code{chroot} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_chroot(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{chroot} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_CHROOT_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection cp - copy files
-
-@pgindex cp
-
-@subheading SYNOPSYS:
-
-@example
-cp [-R [-H | -L | -P]] [-f | -i] [-pv] src target
-cp [-R [-H | -L] ] [-f | -i] [-NpPv] source_file ... target_directory
-@end example
-
-@subheading DESCRIPTION:
-
-In the first synopsis form, the cp utility copies the contents of the
-source_file to the target_file. In the second synopsis form, the contents of
-each named source_file is copied to the destination target_directory. The names
-of the files themselves are not changed. If cp detects an attempt to copy a
-file to itself, the copy will fail.
-
-The following options are available:
-
-@table @b
-@item -f
-For each existing destination pathname, attempt to overwrite it. If permissions
-do not allow copy to succeed, remove it and create a new file, without
-prompting for confirmation. (The -i option is ignored if the -f option is
-specified.)
-
-@item -H
-If the -R option is specified, symbolic links on the command line are followed.
-(Symbolic links encountered in the tree traversal are not followed.)
-
-@item -i
-Causes cp to write a prompt to the standard error output before copying a file
-that would overwrite an existing file. If the response from the standard input
-begins with the character 'y', the file copy is attempted.
-
-@item -L
-If the -R option is specified, all symbolic links are followed.
-
-@item -N
-When used with -p, do not copy file flags.
-
-@item -P
-No symbolic links are followed.
-
-@item -p
-Causes cp to preserve in the copy as many of the modification time, access
-time, file flags, file mode, user ID, and group ID as allowed by permissions.
-
-If the user ID and group ID cannot be preserved, no error message is displayed
-and the exit value is not altered.
-
-If the source file has its set user ID bit on and the user ID cannot be
-preserved, the set user ID bit is not preserved in the copy's permissions. If
-the source file has its set group ID bit on and the group ID cannot be
-preserved, the set group ID bit is not preserved in the copy's permissions. If
-the source file has both its set user ID and set group ID bits on, and either
-the user ID or group ID cannot be preserved, neither the set user ID or set
-group ID bits are preserved in the copy's permissions.
-
-@item -R
-If source_file designates a directory, cp copies the directory and the entire
-subtree connected at that point. This option also causes symbolic links to be
-copied, rather than indirected through, and for cp to create special files
-rather than copying them as normal files. Created directories have the same
-mode as the corresponding source directory, unmodified by the process's umask.
-
-@item -v
-Cause cp to be verbose, showing files as they are copied.
-
-@end table
-
-For each destination file that already exists, its contents are overwritten if
-permissions allow, but its mode, user ID, and group ID are unchanged.
-
-In the second synopsis form, target_directory must exist unless there is only
-one named source_file which is a directory and the -R flag is specified.
-
-If the destination file does not exist, the mode of the source file is used as
-modified by the file mode creation mask (umask, see csh(1)). If the source file
-has its set user ID bit on, that bit is removed unless both the source file and
-the destination file are owned by the same user. If the source file has its set
-group ID bit on, that bit is removed unless both the source file and the
-destination file are in the same group and the user is a member of that group.
-If both the set user ID and set group ID bits are set, all of the above
-conditions must be fulfilled or both bits are removed.
-
-Appropriate permissions are required for file creation or overwriting.
-
-Symbolic links are always followed unless the -R flag is set, in which case
-symbolic links are not followed, by default. The -H or -L flags (in conjunction
-with the -R flag), as well as the -P flag cause symbolic links to be followed
-as described above. The -H and -L options are ignored unless the -R option is
-specified. In addition, these options override eachsubhedading other and the
-command's actions are determined by the last one specified.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{cp} to
-copy a file to a new name in the current directory:
-
-@example
-SHLL [/] # cat joel
-cat: joel: No such file or directory
-SHLL [/] # cp etc/passwd joel
-SHLL [/] # cat joel
-root:*:0:0:root::/:/bin/sh
-rtems:*:1:1:RTEMS Application::/:/bin/sh
-tty:!:2:2:tty owner::/:/bin/false
-SHLL [/] # ls
-drwxr-xr-x 1 root root 536 Jan 01 00:00 dev/
-drwxr-xr-x 1 root root 1072 Jan 01 00:00 etc/
--rw-r--r-- 1 root root 102 Jan 01 00:00 joel
-3 files 1710 bytes occupied
-@end example
-
-The following is an example of how to use @code{cp} to
-copy one or more files to a destination directory and
-use the same @code{basename} in the destination directory:
-
-@example
-SHLL [/] # mkdir tmp
-SHLL [/] # ls tmp
-0 files 0 bytes occupied
-SHLL [/] # cp /etc/passwd tmp
-SHLL [/] # ls /tmp
--rw-r--r-- 1 root root 102 Jan 01 00:01 passwd
-1 files 102 bytes occupied
-SHLL [/] # cp /etc/passwd /etc/group /tmp
-SHLL [/] # ls /tmp
--rw-r--r-- 1 root root 102 Jan 01 00:01 passwd
--rw-r--r-- 1 root root 42 Jan 01 00:01 group
-2 files 144 bytes occupied
-SHLL [/] #
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_CP
-@findex CONFIGURE_SHELL_COMMAND_CP
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_CP} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_CP} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_main_cp
-
-The @code{cp} command is implemented by a C language function which
-has the following prototype:
-
-@example
-int rtems_shell_main_cp(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{cp} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_CP_Command;
-@end example
-
-@subheading ORIGIN:
-
-The implementation and portions of the documentation for this
-command are from NetBSD 4.0.
-
-@c
-@c
-@c
-@page
-@subsection dd - convert and copy a file
-
-@pgindex dd
-
-@subheading SYNOPSYS:
-
-@example
-dd [operands ...]
-@end example
-
-@subheading DESCRIPTION:
-
-The dd utility copies the standard input to the standard output.
-Input data is read and written in 512-byte blocks. If input reads are
-short, input from multiple reads are aggregated to form the output
-block. When finished, dd displays the number of complete and partial
-input and output blocks and truncated input records to the standard
-error output.
-
-The following operands are available:
-
-@table @b
-@item bs=n
-Set both input and output block size, superseding the ibs and obs
-operands. If no conversion values other than noerror, notrunc or sync
-are specified, then each input block is copied to the output as a
-single block without any aggregation of short blocks.
-
-@item cbs=n
-Set the conversion record size to n bytes. The conversion record size
-is required by the record oriented conversion values.
-
-@item count=n
-Copy only n input blocks.
-
-@item files=n
-Copy n input files before terminating. This operand is only
-applicable when the input device is a tape.
-
-@item ibs=n
-Set the input block size to n bytes instead of the default 512.
-
-@item if=file
-Read input from file instead of the standard input.
-
-@item obs=n
-Set the output block size to n bytes instead of the default 512.
-
-@item of=file
-Write output to file instead of the standard output. Any regular
-output file is truncated unless the notrunc conversion value is
-specified. If an initial portion of the output file is skipped (see
-the seek operand) the output file is truncated at that point.
-
-@item seek=n
-Seek n blocks from the beginning of the output before copying. On
-non-tape devices, a @i{lseek} operation is used. Otherwise, existing
-blocks are read and the data discarded. If the seek operation is past
-the end of file, space from the current end of file to the specified
-offset is filled with blocks of NUL bytes.
-
-@item skip=n
-Skip n blocks from the beginning of the input before copying. On
-input which supports seeks, a @i{lseek} operation is used. Otherwise,
-input data is read and discarded. For pipes, the correct number of
-bytes is read. For all other devices, the correct number of blocks is
-read without distinguishing between a partial or complete block being
-read.
-
-@item progress=n
-Switch on display of progress if n is set to any non-zero value. This
-will cause a ``.'' to be printed (to the standard error output) for
-every n full or partial blocks written to the output file.
-
-@item conv=value[,value...]
-Where value is one of the symbols from the following list.
-
-@table @b
-@item ascii, oldascii
-The same as the unblock value except that characters are translated
-from EBCDIC to ASCII before the records are converted. (These values
-imply unblock if the operand cbs is also specified.) There are two
-conversion maps for ASCII. The value ascii specifies the recom-
-mended one which is compatible with AT&T System V UNIX. The value
-oldascii specifies the one used in historic AT&T and pre 4.3BSD-Reno
-systems.
-
-@item block
-Treats the input as a sequence of newline or end-of-file terminated
-variable length records independent of input and output block
-boundaries. Any trailing newline character is discarded. Each
-input record is converted to a fixed length output record where the
-length is specified by the cbs operand. Input records shorter than
-the conversion record size are padded with spaces. Input records
-longer than the conversion record size are truncated. The number of
-truncated input records, if any, are reported to the standard error
-output at the completion of the copy.
-
-@item ebcdic, ibm, oldebcdic, oldibm
-The same as the block value except that characters are translated from
-ASCII to EBCDIC after the records are converted. (These values imply
-block if the operand cbs is also specified.) There are four
-conversion maps for EBCDIC. The value ebcdic specifies the
-recommended one which is compatible with AT&T System V UNIX. The
-value ibm is a slightly different mapping, which is compatible with
-the AT&T System V UNIX ibm value. The values oldebcdic and oldibm are
-maps used in historic AT&T and pre 4.3BSD-Reno systems.
-
-@item lcase
-Transform uppercase characters into lowercase characters.
-
-@item noerror
-Do not stop processing on an input error. When an input error occurs,
-a diagnostic message followed by the current input and output block
-counts will be written to the standard error output in the same format
-as the standard completion message. If the sync conversion is also
-specified, any missing input data will be replaced with NUL bytes (or
-with spaces if a block oriented conversion value was specified) and
-processed as a normal input buffer. If the sync conversion is not
-specified, the input block is omitted from the output. On input files
-which are not tapes or pipes, the file offset will be positioned past
-the block in which the error occurred using lseek(2).
-
-@item notrunc
-Do not truncate the output file. This will preserve any blocks in the
-output file not explicitly written by dd. The notrunc value is not
-supported for tapes.
-
-@item osync
-Pad the final output block to the full output block size. If the
-input file is not a multiple of the output block size after
-conversion, this conversion forces the final output block to be the
-same size as preceding blocks for use on devices that require
-regularly sized blocks to be written. This option is incompatible
-with use of the bs=n block size specification.
-
-@item sparse
-If one or more non-final output blocks would consist solely of NUL
-bytes, try to seek the output file by the required space instead of
-filling them with NULs. This results in a sparse file on some file
-systems.
-
-@item swab
-Swap every pair of input bytes. If an input buffer has an odd number
-of bytes, the last byte will be ignored during swapping.
-
-@item sync
-Pad every input block to the input buffer size. Spaces are used for
-pad bytes if a block oriented conversion value is specified, otherwise
-NUL bytes are used.
-
-@item ucase
-Transform lowercase characters into uppercase characters.
-
-@item unblock
-Treats the input as a sequence of fixed length records independent of
-input and output block boundaries. The length of the input records is
-specified by the cbs operand. Any trailing space characters are
-discarded and a newline character is appended.
-@end table
-@end table
-
-Where sizes are specified, a decimal number of bytes is expected. Two
-or more numbers may be separated by an ``x'' to indicate a product.
-Each number may have one of the following optional suffixes:
-@table @b
-@item b
-Block; multiply by 512
-@item k
-Kibi; multiply by 1024 (1 KiB)
-@item m
-Mebi; multiply by 1048576 (1 MiB)
-@item g
-Gibi; multiply by 1073741824 (1 GiB)
-@item t
-Tebi; multiply by 1099511627776 (1 TiB)
-@item w
-Word; multiply by the number of bytes in an integer
-@end table
-
-When finished, dd displays the number of complete and partial input
-and output blocks, truncated input records and odd-length
-byte-swapping ritten. Partial output blocks to tape devices are
-considered fatal errors. Otherwise, the rest of the block will be
-written. Partial output blocks to character devices will produce a
-warning message. A truncated input block is one where a variable
-length record oriented conversion value was specified and the input
-line was too long to fit in the conversion record or was not newline
-terminated.
-
-Normally, data resulting from input or conversion or both are
-aggregated into output blocks of the specified size. After the end of
-input is reached, any remaining output is written as a block. This
-means that the final output block may be shorter than the output block
-size.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{dd}:
-
-@example
-SHLL [/] $ dd if=/nfs/boot-image of=/dev/hda1
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_DD
-@findex CONFIGURE_SHELL_COMMAND_DD
-
-This command is included in the default shell command set. When
-building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_DD} to have this command included.
-
-This command can be excluded from the shell command set by defining
-@code{CONFIGURE_SHELL_NO_COMMAND_DD} when all shell commands have been
-configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_dd
-
-The @code{dd} command is implemented by a C language function which
-has the following prototype:
-
-@example
-int rtems_shell_rtems_main_dd(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{dd} has the following
-prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_DD_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection debugrfs - debug RFS file system
-
-@pgindex debugrfs
-
-@subheading SYNOPSYS:
-
-@example
-debugrfs [-hl] path command [options]
-@end example
-
-@subheading DESCRIPTION:
-
-The command provides debugging information for the RFS file system.
-
-The options are:
-
-@table @b
-@item -h
-Print a help message.
-
-@item -l
-List the commands.
-
-@item path
-Path to the mounted RFS file system. The file system has to be mounted
-to view to use this command.
-@end table
-
-The commands are:
-
-@table @b
-@item block start [end]
-Display the contents of the blocks from start to end.
-
-@item data
-Display the file system data and configuration.
-
-@item dir bno
-Process the block as a directory displaying the entries.
-
-@item group start [end]
-Display the group data from the start group to the end group.
-
-@item inode [-aef] [start] [end]
-Display the inodes between start and end. If no start and end is
-provides all inodes are displayed.
-
-@table @b
-@item -a
-Display all inodes. That is allocated and unallocated inodes.
-@item -e
-Search and display on inodes that have an error.
-@item -f
-Force display of inodes, even when in error.
-@end table
-@end table
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{debugrfs}:
-
-@example
-SHLL [/] $ debugrfs /c data
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_DEBUGRFS
-@findex CONFIGURE_SHELL_COMMAND_DEBUGRFS
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_DEBUGRFS} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_DEBUGRFS} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_debugrfs
-
-The @code{debugrfs} command is implemented by a C language function which
-has the following prototype:
-
-@example
-int rtems_shell_rtems_main_debugrfs(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for @code{debugrfs} has the following
-prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_DEBUGRFS_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection df - display file system disk space usage
-
-@pgindex df
-
-@subheading SYNOPSYS:
-
-@example
-df [-h] [-B block_size]
-@end example
-
-@subheading DESCRIPTION:
-
-This command print disk space usage for mounted file systems.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{df}:
-
-@example
-SHLL [/] $ df -B 4K
-Filesystem 4K-blocks Used Available Use% Mounted on
-/dev/rda 124 1 124 0% /mnt/ramdisk
-SHLL [/] $ df
-Filesystem 1K-blocks Used Available Use% Mounted on
-/dev/rda 495 1 494 0% /mnt/ramdisk
-SHLL [/] $ df -h
-Filesystem Size Used Available Use% Mounted on
-/dev/rda 495K 1K 494K 0% /mnt/ramdisk
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_DF
-@findex CONFIGURE_SHELL_COMMAND_DF
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_DF} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_DF} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_df
-
-The @code{df} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_main_df(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{df} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_DF_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection dir - alias for ls
-
-@pgindex dir
-
-@subheading SYNOPSYS:
-
-@example
-dir [dir]
-@end example
-
-@subheading DESCRIPTION:
-
-This command is an alias or alternate name for the @code{ls}.
-See @ref{File and Directory Commands ls - list files in the directory, ls}
-for more information.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{dir}:
-
-@example
-SHLL [/] $ dir
-drwxr-xr-x 1 root root 536 Jan 01 00:00 dev/
-drwxr-xr-x 1 root root 1072 Jan 01 00:00 etc/
-2 files 1608 bytes occupied
-SHLL [/] $ dir etc
--rw-r--r-- 1 root root 102 Jan 01 00:00 passwd
--rw-r--r-- 1 root root 42 Jan 01 00:00 group
--rw-r--r-- 1 root root 30 Jan 01 00:00 issue
--rw-r--r-- 1 root root 28 Jan 01 00:00 issue.net
-4 files 202 bytes occupied
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_DIR
-@findex CONFIGURE_SHELL_COMMAND_DIR
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_DIR} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_DIR} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_dir
-
-The @code{dir} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_dir(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{dir} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_DIR_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection fdisk - format disk
-
-@pgindex fdisk
-
-@subheading SYNOPSYS:
-
-@example
-fdisk
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_FDISK
-@findex CONFIGURE_SHELL_COMMAND_FDISK
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_FDISK} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_FDISK} when all
-shell commands have been configured.
-
-@c
-@c
-@c
-@page
-@subsection hexdump - ascii/dec/hex/octal dump
-
-@pgindex hexdump
-
-@subheading SYNOPSYS:
-
-@example
-hexdump [-bcCdovx] [-e format_string] [-f format_file] [-n length]
- [-s skip] file ...
-@end example
-
-@subheading DESCRIPTION:
-
-The hexdump utility is a filter which displays the specified files, or
-the standard input, if no files are specified, in a user specified
-format.
-
-The options are as follows:
-
-@table @b
-@item -b
-One-byte octal display. Display the input offset in hexadecimal,
-followed by sixteen space-separated, three column, zero-filled, bytes
-of input data, in octal, per line.
-
-@item -c
-One-byte character display. Display the input offset in hexadecimal,
-followed by sixteen space-separated, three column, space-filled,
-characters of input data per line.
-
-@item -C
-Canonical hex+ASCII display. Display the input offset in hexadecimal,
-followed by sixteen space-separated, two column, hexadecimal bytes,
-followed by the same sixteen bytes in %_p format enclosed in ``|''
-characters.
-
-@item -d
-Two-byte decimal display. Display the input offset in hexadecimal,
-followed by eight space-separated, five column, zero-filled, two-byte
-units of input data, in unsigned decimal, per line.
-
-@item -e format_string
-Specify a format string to be used for displaying data.
-
-@item -f format_file
-Specify a file that contains one or more newline separated format
-strings. Empty lines and lines whose first non-blank character is a
-hash mark (#) are ignored.
-
-@item -n length
-Interpret only length bytes of input.
-
-@item -o
-Two-byte octal display. Display the input offset in hexadecimal,
-followed by eight space-separated, six column, zerofilled, two byte
-quantities of input data, in octal, per line.
-
-@item -s offset
-Skip offset bytes from the beginning of the input. By default, offset
-is interpreted as a decimal number. With a leading 0x or 0X, offset
-is interpreted as a hexadecimal number, otherwise, with a leading 0,
-offset is interpreted as an octal number. Appending the character b,
-k, or m to offset causes it to be interpreted as a multiple of 512,
-1024, or 1048576, respectively.
-
-@item -v
-The -v option causes hexdump to display all input data. Without the
--v option, any number of groups of output lines, which would be
-identical to the immediately preceding group of output lines (except
-for the input offsets), are replaced with a line containing a single
-asterisk.
-
-@item -x
-Two-byte hexadecimal display. Display the input offset in
-hexadecimal, followed by eight, space separated, four column,
-zero-filled, two-byte quantities of input data, in hexadecimal, per
-line.
-@end table
-
-For each input file, hexdump sequentially copies the input to standard
-output, transforming the data according to the format strings
-specified by the -e and -f options, in the order that they were
-specified.
-
-@b{Formats}
-
-A format string contains any number of format units, separated by
-whitespace. A format unit contains up to three items: an iteration
-count, a byte count, and a format.
-
-The iteration count is an optional positive integer, which defaults to
-one. Each format is applied iteration count times.
-
-The byte count is an optional positive integer. If specified it
-defines the number of bytes to be interpreted by each iteration of the
-format.
-
-If an iteration count and/or a byte count is specified, a single slash
-must be placed after the iteration count and/or before the byte count
-to disambiguate them. Any whitespace before or after the slash is
-ignored.
-
-The format is required and must be surrounded by double quote (`` ``)
-marks. It is interpreted as a fprintf-style format string (see
-@i{fprintf}), with the following exceptions:
-
-@itemize @bullet
-@item
-An asterisk (*) may not be used as a field width or precision.
-@item
-A byte count or field precision is required for each ``s'' con-
-version character (unlike the fprintf(3) default which prints the
-entire string if the precision is unspecified).
-@item
-The conversion characters ``h'', ``l'', ``n'', ``p'' and ``q'' are not
-supported.
-@item
-The single character escape sequences described in the C standard
-are supported:
-@quotation
-NUL \0
-<alert character> \a
-<backspace> \b
-<form-feed> \f
-<newline> \n
-<carriage return> \r
-<tab> \t
-<vertical tab> \v
-@end quotation
-@end itemize
-
-Hexdump also supports the following additional conversion strings:
-
-@table @b
-@item _a[dox]
-Display the input offset, cumulative across input files, of the next
-byte to be displayed. The appended characters d, o, and x specify the
-display base as decimal, octal or hexadecimal respectively.
-
-@item _A[dox]
-Identical to the _a conversion string except that it is only performed
-once, when all of the input data has been processed.
-
-@item _c
-Output characters in the default character set. Nonprinting
-characters are displayed in three character, zero-padded octal, except
-for those representable by standard escape notation (see above), which
-are displayed as two character strings.
-
-@item _p
-Output characters in the default character set. Nonprinting
-characters are displayed as a single ``.''.
-
-@item _u
-Output US ASCII characters, with the exception that control characters
-are displayed using the following, lower-case, names. Characters
-greater than 0xff, hexadecimal, are displayed as hexadecimal
-strings.
-
-000 nul 001 soh 002 stx 003 etx 004 eot 005 enq
-006 ack 007 bel 008 bs 009 ht 00A lf 00B vt
-00C ff 00D cr 00E so 00F si 010 dle 011 dc1
-012 dc2 013 dc3 014 dc4 015 nak 016 syn 017 etb
-018 can 019 em 01A sub 01B esc 01C fs 01D gs
-01E rs 01F us 07F del
-@end table
-
-The default and supported byte counts for the conversion characters
-are as follows:
-
-@quotation
-%_c, %_p, %_u, %c One byte counts only.
-
-%d, %i, %o, %u, %X, %x Four byte default, one, two, four
- and eight byte counts supported.
-
-%E, %e, %f, %G, %g Eight byte default, four byte
- counts supported.
-@end quotation
-
-The amount of data interpreted by each format string is the sum of the
-data required by each format unit, which is the iteration count times
-the byte count, or the iteration count times the number of bytes
-required by the format if the byte count is not specified.
-
-The input is manipulated in ``blocks'', where a block is defined as
-the largest amount of data specified by any format string. Format
-strings interpreting less than an input block's worth of data, whose
-last format unit both interprets some number of bytes and does not
-have a specified iteration count, have the iteration count incremented
-until the entire input block has been processed or there is not enough
-data remaining in the block to satisfy the format string.
-
-If, either as a result of user specification or hexdump modifying the
-iteration count as described above, an iteration count is greater than
-one, no trailing whitespace characters are output during the last
-iteration.
-
-It is an error to specify a byte count as well as multiple conversion
-characters or strings unless all but one of the conversion characters
-or strings is _a or _A.
-
-If, as a result of the specification of the -n option or end-of-file
-being reached, input data only partially satisfies a format string,
-the input block is zero-padded sufficiently to display all available
-data (i.e. any format units overlapping the end of data will display
-some num- ber of the zero bytes).
-
-Further output by such format strings is replaced by an equivalent
-number of spaces. An equivalent number of spaces is defined as the
-number of spaces output by an s conversion character with the same
-field width and precision as the original conversion character or
-conversion string but with any ``+'', `` '', ``#'' conversion flag
-characters removed, and ref- erencing a NULL string.
-
-If no format strings are specified, the default display is equivalent
-to specifying the -x option.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{hexdump}:
-
-@example
-SHLL [/] $ hexdump -C -n 512 /dev/hda1
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_HEXDUMP
-@findex CONFIGURE_SHELL_COMMAND_HEXDUMP
-
-This command is included in the default shell command set. When
-building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_HEXDUMP} to have this command included.
-
-This command can be excluded from the shell command set by defining
-@code{CONFIGURE_SHELL_NO_COMMAND_HEXDUMP} when all shell commands have
-been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_hexdump
-
-The @code{hexdump} command is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_hexdump(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{hexdump} has the following
-prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_HEXDUMP_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection ln - make links
-
-@pgindex ln
-
-@subheading SYNOPSYS:
-
-@example
-ln [-fhinsv] source_file [target_file]
-ln [-fhinsv] source_file ... target_dir
-@end example
-
-@subheading DESCRIPTION:
-
-The ln utility creates a new directory entry (linked file) which has
-the same modes as the original file. It is useful for maintaining
-multiple copies of a file in many places at once without using up
-storage for the ``copies''; instead, a link ``points'' to the original
-copy. There are two types of links; hard links and symbolic links.
-How a link ``points'' to a file is one of the differences between a
-hard or symbolic link.
-
-The options are as follows:
-@table @b
-@item -f
-Unlink any already existing file, permitting the link to occur.
-
-@item -h
-If the target_file or target_dir is a symbolic link, do not follow it.
-This is most useful with the -f option, to replace a symlink which may
-point to a directory.
-
-@item -i
-Cause ln to write a prompt to standard error if the target file
-exists. If the response from the standard input begins with the
-character `y' or `Y', then unlink the target file so that the link may
-occur. Otherwise, do not attempt the link. (The -i option overrides
-any previous -f options.)
-
-@item -n
-Same as -h, for compatibility with other ln implementations.
-
-@item -s
-Create a symbolic link.
-
-@item -v
-Cause ln to be verbose, showing files as they are processed.
-@end table
-
-By default ln makes hard links. A hard link to a file is
-indistinguishable from the original directory entry; any changes to a
-file are effective independent of the name used to reference the file.
-Hard links may not normally refer to directories and may not span file
-systems.
-
-A symbolic link contains the name of the file to which it is linked.
-The referenced file is used when an @i{open} operation is performed on
-the link. A @i{stat} on a symbolic link will return the linked-to
-file; an @i{lstat} must be done to obtain information about the link.
-The @i{readlink} call may be used to read the contents of a symbolic
-link. Symbolic links may span file systems and may refer to
-directories.
-
-Given one or two arguments, ln creates a link to an existing file
-source_file. If target_file is given, the link has that name;
-target_file may also be a directory in which to place the link;
-otherwise it is placed in the current directory. If only the
-directory is specified, the link will be made to the last component of
-source_file.
-
-Given more than two arguments, ln makes links in target_dir to all the
-named source files. The links made will have the same name as the
-files being linked to.
-
-@subheading EXIT STATUS:
-
-The @code{ln} utility exits 0 on success, and >0 if an error occurs.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-@example
-SHLL [/] ln -s /dev/console /dev/con1
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_LN
-@findex CONFIGURE_SHELL_COMMAND_LN
-
-This command is included in the default shell command set. When
-building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_LN} to have this command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_LN} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_ln
-
-The @code{ln} command is implemented by a C language function which
-has the following prototype:
-
-@example
-int rtems_shell_rtems_main_ln(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{ln} has the following
-prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_LN_Command;
-@end example
-
-@subheading ORIGIN:
-
-The implementation and portions of the documentation for this command
-are from NetBSD 4.0.
-
-@c
-@c
-@c
-@page
-@subsection ls - list files in the directory
-
-@pgindex ls
-
-@subheading SYNOPSYS:
-
-@example
-ls [dir]
-@end example
-
-@subheading DESCRIPTION:
-
-This command displays the contents of the specified directory. If
-no arguments are given, then it displays the contents of the current
-working directory.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-This command currently does not display information on a set of
-files like the POSIX ls(1). It only displays the contents of
-entire directories.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{ls}:
-
-@example
-SHLL [/] $ ls
-drwxr-xr-x 1 root root 536 Jan 01 00:00 dev/
-drwxr-xr-x 1 root root 1072 Jan 01 00:00 etc/
-2 files 1608 bytes occupied
-SHLL [/] $ ls etc
--rw-r--r-- 1 root root 102 Jan 01 00:00 passwd
--rw-r--r-- 1 root root 42 Jan 01 00:00 group
--rw-r--r-- 1 root root 30 Jan 01 00:00 issue
--rw-r--r-- 1 root root 28 Jan 01 00:00 issue.net
-4 files 202 bytes occupied
-SHLL [/] $ ls dev etc
--rwxr-xr-x 1 rtems root 0 Jan 01 00:00 console
--rwxr-xr-x 1 root root 0 Jan 01 00:00 console_b
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_LS
-@findex CONFIGURE_SHELL_COMMAND_LS
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_LS} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_LS} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_ls
-
-The @code{ls} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_ls(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{ls} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_LS_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection md5 - compute the Md5 hash of a file or list of files
-
-@pgindex md5
-
-@subheading SYNOPSYS:
-
-@example
-md5 <files>
-@end example
-
-@subheading DESCRIPTION:
-
-This command prints the MD5 of a file. You can provide one or more
-files on the command line and a hash for each file is printed in a
-single line of output.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{md5}:
-
-@example
-SHLL [/] $ md5 shell-init
-MD5 (shell-init) = 43b4d2e71b47db79eae679a2efeacf31
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_MD5
-@findex CONFIGURE_SHELL_COMMAND_MD5
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_MD5} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_MD5} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_md5
-
-The @code{df} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_main_md5(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{md5} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_MD5_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection mkdir - create a directory
-
-@pgindex mkdir
-
-@subheading SYNOPSYS:
-
-@example
-mkdir dir [dir1 .. dirN]
-@end example
-
-@subheading DESCRIPTION:
-
-This command creates the set of directories in the order they
-are specified on the command line. If an error is encountered
-making one of the directories, the command will continue to
-attempt to create the remaining directories on the command line.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-If this command is invoked with no arguments, nothing occurs.
-
-The user must have sufficient permissions to create the directory.
-For the @code{fileio} test provided with RTEMS, this means the user
-must login as @code{root} not @code{rtems}.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{mkdir}:
-
-@example
-SHLL [/] # ls
-drwxr-xr-x 1 root root 536 Jan 01 00:00 dev/
-drwxr-xr-x 1 root root 1072 Jan 01 00:00 etc/
-2 files 1608 bytes occupied
-SHLL [/] # mkdir joel
-SHLL [/] # ls joel
-0 files 0 bytes occupied
-SHLL [/] # cp etc/passwd joel
-SHLL [/] # ls joel
--rw-r--r-- 1 root root 102 Jan 01 00:02 passwd
-1 files 102 bytes occupied
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_MKDIR
-@findex CONFIGURE_SHELL_COMMAND_MKDIR
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_MKDIR} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_MKDIR} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_mkdir
-
-The @code{mkdir} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_mkdir(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{mkdir} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_MKDIR_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection mldos - DOSFS file system format
-
-@pgindex pwd
-
-@subheading SYNOPSYS:
-
-@example
-mkdir [-V label] [-s sectors/cluster] [-r size] [-v] path
-@end example
-
-@subheading DESCRIPTION:
-
-This command formats a block device entry with the DOSFS file system.
-
-@table @b
-@item -V label
-
-@item -s sectors/cluster
-
-@item -r size
-
-@end table
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{mkdos}:
-
-@example
-SHLL [/] $ mkdos /dev/rda1
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_MKDOS
-@findex CONFIGURE_SHELL_COMMAND_MKDOS
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_MKDOS} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_MKDOS} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_mkdos
-
-The @code{mkdos} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_mkdos(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{mkdos} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_MKDOS_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection mknod - make device special file
-
-@pgindex mknod
-
-@subheading SYNOPSYS:
-
-@example
-mknod [-rR] [-F fmt] [-g gid] [-m mode] [-u uid] name [c | b]
- [driver | major] minor
-mknod [-rR] [-F fmt] [-g gid] [-m mode] [-u uid] name [c | b]
- major unit subunit
-mknod [-rR] [-g gid] [-m mode] [-u uid] name [c | b] number
-mknod [-rR] [-g gid] [-m mode] [-u uid] name p
-@end example
-
-@subheading DESCRIPTION:
-
-The mknod command creates device special files, or fifos. Normally
-the shell script /dev/MAKEDEV is used to create special files for
-commonly known devices; it executes mknod with the appropriate
-arguments and can make all the files required for the device.
-
-To make nodes manually, the arguments are:
-
-@table @b
-@item -r
-Replace an existing file if its type is incorrect.
-
-@item -R
-Replace an existing file if its type is incorrect. Correct the
-mode, user and group.
-
-@item -g gid
-Specify the group for the device node. The gid operand may be a
-numeric group ID or a group name. If a group name is also a numeric
-group ID, the operand is used as a group name. Precede a numeric
-group ID with a # to stop it being treated as a name.
-
-@item -m mode
-Specify the mode for the device node. The mode may be absolute or
-symbolic, see @i{chmod}.
-
-@item -u uid
-Specify the user for the device node. The uid operand may be a
-numeric user ID or a user name. If a user name is also a numeric user
-ID, the operand is used as a user name. Precede a numeric user ID
-with a # to stop it being treated as a name.
-
-@item name
-Device name, for example ``tty'' for a termios serial device or ``hd''
-for a disk.
-
-@item b | c | p
-Type of device. If the device is a block type device such as a tape
-or disk drive which needs both cooked and raw special files, the type
-is b. All other devices are character type devices, such as terminal
-and pseudo devices, and are type c. Specifying p creates fifo files.
-
-@item driver | major
-The major device number is an integer number which tells the kernel
-which device driver entry point to use. If the device driver is
-configured into the current kernel it may be specified by driver name
-or major number.
-
-@item minor
-The minor device number tells the kernel which one of several similar
-devices the node corresponds to; for example, it may be a specific
-serial port or pty.
-
-@item unit and subunit
-The unit and subunit numbers select a subset of a device; for example,
-the unit may specify a particular disk, and the subunit a partition on
-that disk. (Currently this form of specification is only supported
-by the bsdos format, for compatibility with the BSD/OS mknod).
-
-@item number
-A single opaque device number. Useful for netbooted computers which
-require device numbers packed in a format that isn't supported by
--F.
-@end table
-
-@subheading EXIT STATUS:
-
-The @code{mknod} utility exits 0 on success, and >0 if an error occurs.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-@example
-SHLL [/] mknod c 3 0 /dev/ttyS10
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_MKNOD
-@findex CONFIGURE_SHELL_COMMAND_MKNOD
-
-This command is included in the default shell command set. When
-building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_MKNOD} to have this command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_MKNOD} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_mknod
-
-The @code{mknod} command is implemented by a C language function which
-has the following prototype:
-
-@example
-int rtems_shell_rtems_main_mknod(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{mknod} has the following
-prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_MKNOD_Command;
-@end example
-
-@subheading ORIGIN:
-
-The implementation and portions of the documentation for this command
-are from NetBSD 4.0.
-
-@c
-@c
-@c
-@page
-@subsection mkrfs - format RFS file system
-
-@pgindex mkrfs
-
-@subheading SYNOPSYS:
-
-@example
-mkrfs [-vsbiIo] device
-@end example
-
-@subheading DESCRIPTION:
-
-Format the block device with the RTEMS File System (RFS). The default
-configuration with not parameters selects a suitable block size based
-on the size of the media being formatted.
-
-The media is broken up into groups of blocks. The number of blocks in
-a group is based on the number of bits a block contains. The large a
-block the more blocks a group contains and the fewer groups in the
-file system.
-
-The following options are provided:
-
-@table @b
-@item -v
-Display configuration and progress of the format.
-
-@item -s
-Set the block size in bytes.
-
-@item -b
-The number of blocks in a group. The block count must be equal or less
-than the number of bits in a block.
-
-@item -i
-Number of inodes in a group. The inode count must be equal or less
-than the number of bits in a block.
-
-@item -I
-Initialise the inodes. The default is not to initialise the inodes and
-to rely on the inode being initialised when allocated. Initialising
-the inode table helps recovery if a problem appears.
-
-@item -o
-Integer percentage of the media used by inodes. The default is 1%.
-
-@item device
-Path of the device to format.
-@end table
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{mkrfs}:
-
-@example
-SHLL [/] $ mkrfs /dev/fdda
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_MKRFS
-@findex CONFIGURE_SHELL_COMMAND_MKRFS
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_MKRFS} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_MKRFS} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_mkrfs
-
-The @code{mkrfs} command is implemented by a C language function which
-has the following prototype:
-
-@example
-int rtems_shell_rtems_main_mkrfs(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for @code{mkrfs} has the following
-prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_MKRFS_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection mount - mount disk
-
-@pgindex mount
-
-@subheading SYNOPSYS:
-
-@example
-mount [-t fstype] [-r] [-L] device path
-@end example
-
-@subheading DESCRIPTION:
-
-The @code{mount} command will mount a block device to a mount point
-using the specified file system. The files systems are:
-
-@itemize @bullet
-@item msdos - MSDOS File System
-@item tftp - TFTP Network File System
-@item ftp - FTP Network File System
-@item nfs - Network File System
-@item rfs - RTEMS File System
-@end itemize
-
-When the file system type is 'msdos' or 'rfs' the driver is a "block
-device driver" node present in the file system. The driver is ignored
-with the 'tftp' and 'ftp' file systems. For the 'nfs' file system the
-driver is the 'host:/path' string that described NFS host and the
-exported file system path.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-The mount point must exist.
-
-The services offered by each file-system vary. For example you cannot list the
-directory of a TFTP file-system as this server is not provided in the TFTP
-protocol. You need to check each file-system's documentation for the services
-provided.
-
-@subheading EXAMPLES:
-
-Mount the Flash Disk driver to the '/fd' mount point:
-
-@example
-SHLL [/] $ mount -t msdos /dev/flashdisk0 /fd
-@end example
-
-Mount the NFS file system exported path 'bar' by host 'foo':
-
-@example
-$ mount -t nfs foo:/bar /nfs
-@end example
-
-Mount the TFTP file system on '/tftp':
-
-@example
-$ mount -t tftp /tftp
-@end example
-
-To access the TFTP files on server '10.10.10.10':
-
-@example
-$ cat /tftp/10.10.10.10/test.txt
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_MOUNT
-@findex CONFIGURE_SHELL_COMMAND_MOUNT
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_MOUNT} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_MOUNT} when all
-shell commands have been configured.
-
-The mount command includes references to file-system code. If you do not wish
-to include file-system that you do not use do not define the mount command
-support for that file-system. The file-system mount command defines are:
-
-@itemize @bullet
-@item msdos - CONFIGURE_SHELL_MOUNT_MSDOS
-@item tftp - CONFIGURE_SHELL_MOUNT_TFTP
-@item ftp - CONFIGURE_SHELL_MOUNT_FTP
-@item nfs - CONFIGURE_SHELL_MOUNT_NFS
-@item rfs - CONFIGURE_SHELL_MOUNT_RFS
-@end itemize
-
-An example configuration is:
-
-@example
-#define CONFIGURE_SHELL_MOUNT_MSDOS
-#ifdef RTEMS_NETWORKING
- #define CONFIGURE_SHELL_MOUNT_TFTP
- #define CONFIGURE_SHELL_MOUNT_FTP
- #define CONFIGURE_SHELL_MOUNT_NFS
- #define CONFIGURE_SHELL_MOUNT_RFS
-#endif
-@end example
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_mount
-
-The @code{mount} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_mount(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{mount} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_MOUNT_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection mv - move files
-
-@pgindex mv
-
-@subheading SYNOPSYS:
-
-@example
-mv [-fiv] source_file target_file
-mv [-fiv] source_file... target_file
-@end example
-
-@subheading DESCRIPTION:
-
-In its first form, the mv utility renames the file named by the source
-operand to the destination path named by the target operand. This
-form is assumed when the last operand does not name an already
-existing directory.
-
-In its second form, mv moves each file named by a source operand to a
-destination file in the existing directory named by the directory
-operand. The destination path for each operand is the pathname
-produced by the concatenation of the last operand, a slash, and the
-final pathname component of the named file.
-
-The following options are available:
-
-@table @b
-@item -f
-Do not prompt for confirmation before overwriting the destination
-path.
-
-@item -i
-Causes mv to write a prompt to standard error before moving a file
-that would overwrite an existing file. If the response from the
-standard input begins with the character 'y', the move is attempted.
-
-@item -v
-Cause mv to be verbose, showing files as they are processed.
-
-@end table
-
-The last of any -f or -i options is the one which affects mv's
-behavior.
-
-It is an error for any of the source operands to specify a nonexistent
-file or directory.
-
-It is an error for the source operand to specify a directory if the
-target exists and is not a directory.
-
-If the destination path does not have a mode which permits writing, mv
-prompts the user for confirmation as specified for the -i option.
-
-Should the @b{rename} call fail because source and target are on
-different file systems, @code{mv} will remove the destination file,
-copy the source file to the destination, and then remove the source.
-The effect is roughly equivalent to:
-
-@example
-rm -f destination_path && \
-cp -PRp source_file destination_path && \
-rm -rf source_file
-@end example
-
-@subheading EXIT STATUS:
-
-The @code{mv} utility exits 0 on success, and >0 if an error occurs.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-@example
-SHLL [/] mv /dev/console /dev/con1
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_MV
-@findex CONFIGURE_SHELL_COMMAND_MV
-
-This command is included in the default shell command set. When
-building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_MV} to have this command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_MV} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_main_mv
-
-The @code{mv} command is implemented by a C language function which
-has the following prototype:
-
-@example
-int rtems_shell_main_mv(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{mv} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_MV_Command;
-@end example
-
-@subheading ORIGIN:
-
-The implementation and portions of the documentation for this command
-are from NetBSD 4.0.
-
-@c
-@c
-@c
-@page
-@subsection pwd - print work directory
-
-@pgindex pwd
-
-@subheading SYNOPSYS:
-
-@example
-pwd
-@end example
-
-@subheading DESCRIPTION:
-
-This command prints the fully qualified filename of the current
-working directory.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{pwd}:
-
-@example
-SHLL [/] $ pwd
-/
-SHLL [/] $ cd dev
-SHLL [/dev] $ pwd
-/dev
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_PWD
-@findex CONFIGURE_SHELL_COMMAND_PWD
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_PWD} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_PWD} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_pwd
-
-The @code{pwd} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_pwd(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{pwd} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_PWD_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection rmdir - remove empty directories
-
-@pgindex rmdir
-
-@subheading SYNOPSYS:
-
-@example
-rmdir [dir1 .. dirN]
-@end example
-
-@subheading DESCRIPTION:
-
-This command removes the specified set of directories. If no
-directories are provided on the command line, no actions are taken.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-This command is a implemented using the @code{rmdir(2)} system
-call and all reasons that call may fail apply to this command.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{rmdir}:
-
-@example
-SHLL [/] # mkdir joeldir
-SHLL [/] # rmdir joeldir
-SHLL [/] # ls joeldir
-joeldir: No such file or directory.
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_RMDIR
-@findex CONFIGURE_SHELL_COMMAND_RMDIR
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_RMDIR} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_RMDIR} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_rmdir
-
-The @code{rmdir} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_rmdir(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{rmdir} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_RMDIR_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection rm - remove files
-
-@pgindex rm
-
-@subheading SYNOPSYS:
-
-@example
-rm file1 [file2 ... fileN]
-@end example
-
-@subheading DESCRIPTION:
-
-This command deletes a name from the filesystem. If the specified file name
-was the last link to a file and there are no @code{open} file descriptor
-references to that file, then it is deleted and the associated space in
-the file system is made available for subsequent use.
-
-If the filename specified was the last link to a file but there
-are open file descriptor references to it, then the file will
-remain in existence until the last file descriptor referencing
-it is closed.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{rm}:
-
-@example
-SHLL [/] # cp /etc/passwd tmpfile
-SHLL [/] # cat tmpfile
-root:*:0:0:root::/:/bin/sh
-rtems:*:1:1:RTEMS Application::/:/bin/sh
-tty:!:2:2:tty owner::/:/bin/false
-SHLL [/] # rm tmpfile
-SHLL [/] # cat tmpfile
-cat: tmpfile: No such file or directory
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_RM
-@findex CONFIGURE_SHELL_COMMAND_RM
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_RM} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_RM} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_main_rm
-
-The @code{rm} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_main_rm(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{rm} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_RM_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection umask - set file mode creation mask
-
-@pgindex umask
-
-@subheading SYNOPSYS:
-
-@example
-umask [new_umask]
-@end example
-
-@subheading DESCRIPTION:
-
-This command sets the user file creation mask to @code{new_umask}. The
-argument @code{new_umask} may be octal, hexadecimal, or decimal.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-This command does not currently support symbolic mode masks.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{umask}:
-
-@example
-SHLL [/] $ umask
-022
-SHLL [/] $ umask 0666
-0666
-SHLL [/] $ umask
-0666
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_UMASK
-@findex CONFIGURE_SHELL_COMMAND_UMASK
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_UMASK} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_UMASK} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_umask
-
-The @code{umask} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_umask(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{umask} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_UMASK_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection unmount - unmount disk
-
-@pgindex unmount
-
-@subheading SYNOPSYS:
-
-@example
-unmount path
-@end example
-
-@subheading DESCRIPTION:
-
-This command unmounts the device at the specified @code{path}.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-TBD - Surely there must be some warnings to go here.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{unmount}:
-
-@example
-EXAMPLE_TBD
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_UNMOUNT
-@findex CONFIGURE_SHELL_COMMAND_UNMOUNT
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_UNMOUNT} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_UNMOUNT} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_unmount
-
-The @code{unmount} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_unmount(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{unmount} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_UNMOUNT_Command;
-@end example
diff --git a/doc/shell/general.t b/doc/shell/general.t
deleted file mode 100644
index ce8a5bb263..0000000000
--- a/doc/shell/general.t
+++ /dev/null
@@ -1,1322 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2010.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter General Commands
-
-@section Introduction
-
-The RTEMS shell has the following general commands:
-
-@itemize @bullet
-
-@item @code{help} - Print command help
-@item @code{alias} - Add alias for an existing command
-@item @code{cmdls} - List commands
-@item @code{cmdchown} - Change user or owner of commands
-@item @code{cmdchmod} - Change mode of commands
-@item @code{date} - Print or set current date and time
-@item @code{echo} - Produce message in a shell script
-@item @code{sleep} - Delay for a specified amount of time
-@item @code{id} - show uid gid euid and egid
-@item @code{tty} - show ttyname
-@item @code{whoami} - print effective user id
-@item @code{getenv} - print environment variable
-@item @code{setenv} - set environment variable
-@item @code{unsetenv} - unset environment variable
-@item @code{time} - time command execution
-@item @code{logoff} - logoff from the system
-@item @code{rtc} - RTC driver configuration
-@item @code{exit} - alias for logoff command
-
-@end itemize
-
-@section Commands
-
-This section details the General Commands available. A
-subsection is dedicated to each of the commands and
-describes the behavior and configuration of that
-command as well as providing an example usage.
-@c
-@c
-@c
-@page
-@subsection help - Print command help
-
-@pgindex help
-
-@subheading SYNOPSYS:
-
-@example
-help misc
-@end example
-
-@subheading DESCRIPTION:
-
-This command prints the command help. Help without arguments prints a
-list of topics and help with a topic prints the help for that topic.
-
-@subheading EXIT STATUS:
-
-This command returns 0.
-
-@subheading NOTES:
-
-The help print will break the output up based on the environment
-variable SHELL_LINES. If this environment variable is not set the
-default is 16 lines. If set the number of lines is set to that the
-value. If the shell lines is set 0 there will be no break.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{alias}:
-
-@example
-SHLL [/] $ help
-help: ('r' repeat last cmd - 'e' edit last cmd)
- TOPIC? The topics are
- mem, misc, files, help, rtems, network, monitor
-SHLL [/] $ help misc
-help: list for the topic 'misc'
-alias - alias old new
-time - time command [arguments...]
-joel - joel [args] SCRIPT
-date - date [YYYY-MM-DD HH:MM:SS]
-echo - echo [args]
-sleep - sleep seconds [nanoseconds]
-id - show uid, gid, euid, and egid
-tty - show ttyname
-whoami - show current user
-logoff - logoff from the system
-setenv - setenv [var] [string]
-getenv - getenv [var]
-unsetenv - unsetenv [var]
-umask - umask [new_umask]
-Press any key to continue...
-rtc - real time clock read and set
-SHLL [/] $ setenv SHELL_ENV 0
-SHLL [/] $ help misc
-help: list for the topic 'misc'
-alias - alias old new
-time - time command [arguments...]
-joel - joel [args] SCRIPT
-date - date [YYYY-MM-DD HH:MM:SS]
-echo - echo [args]
-sleep - sleep seconds [nanoseconds]
-id - show uid, gid, euid, and egid
-tty - show ttyname
-whoami - show current user
-logoff - logoff from the system
-setenv - setenv [var] [string]
-getenv - getenv [var]
-unsetenv - unsetenv [var]
-umask - umask [new_umask]
-rtc - real time clock read and set
-@end example
-
-@subheading CONFIGURATION:
-
-This command has no configuration.
-
-@c
-@c
-@c
-@page
-@subsection alias - add alias for an existing command
-
-@pgindex alias
-
-@subheading SYNOPSYS:
-
-@example
-alias oldCommand newCommand
-@end example
-
-@subheading DESCRIPTION:
-
-This command adds an alternate name for an existing command to
-the command set.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{alias}:
-
-@example
-SHLL [/] $ me
-shell:me command not found
-SHLL [/] $ alias whoami me
-SHLL [/] $ me
-rtems
-SHLL [/] $ whoami
-rtems
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_ALIAS
-@findex CONFIGURE_SHELL_COMMAND_ALIAS
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_ALIAS} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_ALIAS} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_alias
-
-The @code{alias} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_alias(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{alias} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_ALIAS_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection cmdls - List commands
-
-@pgindex cmdls
-
-@subheading SYNOPSYS:
-
-@example
-cmdls COMMAND...
-@end example
-
-@subheading DESCRIPTION:
-
-This command lists the visible commands of the command set.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-The current user must have read permission to list a command.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{cmdls}:
-
-@example
-SHLL [/] # cmdls help shutdown
-r-xr-xr-x 0 0 help
-r-x------ 0 0 shutdown
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_CMDLS
-@findex CONFIGURE_SHELL_COMMAND_CMDLS
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_CMDLS} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_CMDLS} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-The configuration structure for the @code{cmdls} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_CMDLS_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection cmdchown - Change user or owner of commands
-
-@pgindex cmdchown
-
-@subheading SYNOPSYS:
-
-@example
-cmdchown [OWNER][:[GROUP]] COMMAND...
-@end example
-
-@subheading DESCRIPTION:
-
-This command changes the user or owner of a command.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-The current user must have an UID of zero or be the command owner to change the
-owner or group.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{cmdchown}:
-
-@example
-[/] # cmdls help
-r-xr-xr-x 0 0 help
-[/] # cmdchown 1:1 help
-[/] # cmdls help
-r--r--r-- 1 1 help
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_CMDCHOWN
-@findex CONFIGURE_SHELL_COMMAND_CMDCHOWN
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_CMDCHOWN} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_CMDCHOWN} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-The configuration structure for the @code{cmdchown} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_CMDCHOWN_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection cmdchmod - Change mode of commands
-
-@pgindex cmdchmod
-
-@subheading SYNOPSYS:
-
-@example
-cmdchmod OCTAL-MODE COMMAND...
-@end example
-
-@subheading DESCRIPTION:
-
-This command changes the mode of a command.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-The current user must have an UID of zero or be the command owner to change the
-mode.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{cmdchmod}:
-
-@example
-[/] # cmdls help
-r-xr-xr-x 0 0 help
-[/] # cmdchmod 544 help
-[/] # cmdls help
-r-xr--r-- 0 0 help
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_CMDCHMOD
-@findex CONFIGURE_SHELL_COMMAND_CMDCHMOD
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_CMDCHMOD} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_CMDCHMOD} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-The configuration structure for the @code{cmdchmod} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_CMDCHMOD_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection date - print or set current date and time
-
-@pgindex date
-
-@subheading SYNOPSYS:
-
-@example
-date
-date DATE TIME
-@end example
-
-@subheading DESCRIPTION:
-
-This command operates one of two modes. When invoked with no
-arguments, it prints the current date and time. When invoked
-with both @code{date} and @code{time} arguments, it sets the
-current time.
-
-The @code{date} is specified in @code{YYYY-MM-DD} format.
-The @code{time} is specified in @code{HH:MM:SS} format.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-This comm
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{date}:
-
-@example
-SHLL [/] $ date
-Fri Jan 1 00:00:09 1988
-SHLL [/] $ date 2008-02-29 06:45:32
-SHLL [/] $ date
-Fri Feb 29 06:45:35 2008
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_DATE
-@findex CONFIGURE_SHELL_COMMAND_DATE
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_DATE} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_DATE} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_date
-
-The @code{date} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_date(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{date} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_DATE_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection echo - produce message in a shell script
-
-@pgindex echo
-
-@subheading SYNOPSYS:
-
-@example
-echo [-n | -e] args ...
-@end example
-
-@subheading DESCRIPTION:
-
-echo prints its arguments on the standard output, separated by spaces.
-Unless the @b{-n} option is present, a newline is output following the
-arguments. The @b{-e} option causes echo to treat the escape sequences
-specially, as described in the following paragraph. The @b{-e} option is the
-default, and is provided solely for compatibility with other systems.
-Only one of the options @b{-n} and @b{-e} may be given.
-
-If any of the following sequences of characters is encountered during
-output, the sequence is not output. Instead, the specified action is
-performed:
-
-@table @b
-@item \b
-A backspace character is output.
-
-@item \c
-Subsequent output is suppressed. This is normally used at the
-end of the last argument to suppress the trailing newline that
-echo would otherwise output.
-
-@item \f
-Output a form feed.
-
-@item \n
-Output a newline character.
-
-@item \r
-Output a carriage return.
-
-@item \t
-Output a (horizontal) tab character.
-
-@item \v
-Output a vertical tab.
-
-@item \0digits
-Output the character whose value is given by zero to three digits.
-If there are zero digits, a nul character is output.
-
-@item \\
-Output a backslash.
-
-@end table
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-The octal character escape mechanism (\0digits) differs from the C lan-
-guage mechanism.
-
-There is no way to force @code{echo} to treat its arguments literally, rather
-than interpreting them as options and escape sequences.
-
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{echo}:
-
-@example
-SHLL [/] $ echo a b c
-a b c
-SHLL [/] $ echo
-
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_ECHO
-@findex CONFIGURE_SHELL_COMMAND_ECHO
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_ECHO} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_ECHO} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_echo
-
-The @code{echo} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_echo(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{echo} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_ECHO_Command;
-@end example
-
-@subheading ORIGIN:
-
-The implementation and portions of the documentation for this
-command are from NetBSD 4.0.
-
-@c
-@c
-@c
-@page
-@subsection sleep - delay for a specified amount of time
-
-@pgindex sleep
-
-@subheading SYNOPSYS:
-
-@example
-sleep seconds
-sleep seconds nanoseconds
-@end example
-
-@subheading DESCRIPTION:
-
-This command causes the task executing the shell to block
-for the specified number of @code{seconds} and @code{nanoseconds}.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-This command is implemented using the @code{nanosleep()} method.
-
-The command line interface is similar to the @code{sleep} command
-found on POSIX systems but the addition of the @code{nanoseconds}
-parameter allows fine grained delays in shell scripts without
-adding another command such as @code{usleep}.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{sleep}:
-
-@example
-SHLL [/] $ sleep 10
-SHLL [/] $ sleep 0 5000000
-@end example
-
-It is not clear from the above but there is a ten second
-pause after executing the first command before the prompt
-is printed. The second command completes very quickly
-from a human perspective and there is no noticeable
-delay in the prompt being printed.
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_SLEEP
-@findex CONFIGURE_SHELL_COMMAND_SLEEP
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_SLEEP} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_SLEEP} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_sleep
-
-The @code{sleep} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_sleep(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{sleep} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_SLEEP_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection id - show uid gid euid and egid
-
-@pgindex id
-
-@subheading SYNOPSYS:
-
-@example
-id
-@end example
-
-@subheading DESCRIPTION:
-
-This command prints the user identity. This includes the user id
-(uid), group id (gid), effective user id (euid), and effective
-group id (egid).
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-Remember there is only one POSIX process in a single processor RTEMS
-application. Each thread may have its own user identity and that
-identity is used by the filesystem to enforce permissions.
-
-@subheading EXAMPLES:
-
-The first example of the @code{id} command is from a session logged
-in as the normal user @code{rtems}:
-
-@example
-SHLL [/] # id
-uid=1(rtems),gid=1(rtems),euid=1(rtems),egid=1(rtems)
-@end example
-
-The second example of the @code{id} command is from a session logged
-in as the @code{root} user:
-
-@example
-SHLL [/] # id
-uid=0(root),gid=0(root),euid=0(root),egid=0(root)
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_ID
-@findex CONFIGURE_SHELL_COMMAND_ID
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_ID} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_ID} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_id
-
-The @code{id} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_id(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{id} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_ID_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection tty - show ttyname
-
-@pgindex tty
-
-@subheading SYNOPSYS:
-
-@example
-tty
-@end example
-
-@subheading DESCRIPTION:
-
-This command prints the file name of the device connected
-to standard input.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{tty}:
-
-@example
-SHLL [/] $ tty
-/dev/console
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_TTY
-@findex CONFIGURE_SHELL_COMMAND_TTY
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_TTY} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_TTY} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_tty
-
-The @code{tty} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_tty(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{tty} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_TTY_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection whoami - print effective user id
-
-@pgindex whoami
-
-@subheading SYNOPSYS:
-
-@example
-whoami
-@end example
-
-@subheading DESCRIPTION:
-
-This command displays the user name associated with the current
-effective user id.
-
-@subheading EXIT STATUS:
-
-This command always succeeds.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{whoami}:
-
-@example
-SHLL [/] $ whoami
-rtems
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_WHOAMI
-@findex CONFIGURE_SHELL_COMMAND_WHOAMI
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_WHOAMI} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_WHOAMI} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_whoami
-
-The @code{whoami} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_whoami(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{whoami} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_WHOAMI_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection getenv - print environment variable
-
-@pgindex getenv
-
-@subheading SYNOPSYS:
-
-@example
-getenv variable
-@end example
-
-@subheading DESCRIPTION:
-
-This command is used to display the value of a @code{variable} in the set
-of environment variables.
-
-@subheading EXIT STATUS:
-
-This command will return 1 and print a diagnostic message if
-a failure occurs.
-
-@subheading NOTES:
-
-The entire RTEMS application shares a single set of environment variables.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{getenv}:
-
-@example
-SHLL [/] $ getenv BASEPATH
-/mnt/hda1
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_GETENV
-@findex CONFIGURE_SHELL_COMMAND_GETENV
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_GETENV} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_GETENV} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_getenv
-
-The @code{getenv} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_getenv(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{getenv} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_GETENV_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection setenv - set environment variable
-
-@pgindex setenv
-
-@subheading SYNOPSYS:
-
-@example
-setenv variable [value]
-@end example
-
-@subheading DESCRIPTION:
-
-This command is used to add a new @code{variable} to the set of environment
-variables or to modify the variable of an already existing @code{variable}.
-If the @code{value} is not provided, the @code{variable} will be set to the
-empty string.
-
-@subheading EXIT STATUS:
-
-This command will return 1 and print a diagnostic message if
-a failure occurs.
-
-@subheading NOTES:
-
-The entire RTEMS application shares a single set of environment variables.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{setenv}:
-
-@example
-SHLL [/] $ setenv BASEPATH /mnt/hda1
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_SETENV
-@findex CONFIGURE_SHELL_COMMAND_SETENV
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_SETENV} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_SETENV} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_setenv
-
-The @code{setenv} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_setenv(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{setenv} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_SETENV_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection unsetenv - unset environment variable
-
-@pgindex unsetenv
-
-@subheading SYNOPSYS:
-
-@example
-unsetenv variable
-@end example
-
-@subheading DESCRIPTION:
-
-This command is remove to a @code{variable} from the set of environment
-variables.
-
-@subheading EXIT STATUS:
-
-This command will return 1 and print a diagnostic message if
-a failure occurs.
-
-@subheading NOTES:
-
-The entire RTEMS application shares a single set of environment variables.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{unsetenv}:
-
-@example
-SHLL [/] $ unsetenv BASEPATH
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_UNSETENV
-@findex CONFIGURE_SHELL_COMMAND_UNSETENV
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_UNSETENV} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_UNSETENV} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_unsetenv
-
-The @code{unsetenv} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_unsetenv(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{unsetenv} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_UNSETENV_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection time - time command execution
-
-@pgindex time
-
-@subheading SYNOPSYS:
-
-@example
-time command [argument ...]
-@end example
-
-@subheading DESCRIPTION:
-
-The time command executes and times a command. After the command
-finishes, time writes the total time elapsed. Times are reported in
-seconds.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-None.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{time}:
-
-@example
-SHLL [/] $ time cp -r /nfs/directory /c
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_TIME
-@findex CONFIGURE_SHELL_COMMAND_TIME
-
-This command is included in the default shell command set. When
-building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_TIME} to have this command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_TIME} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_time
-
-The @code{time} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_time(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{time} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_TIME_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection logoff - logoff from the system
-
-@pgindex logoff
-
-@subheading SYNOPSYS:
-
-@example
-logoff
-@end example
-
-@subheading DESCRIPTION:
-
-This command logs the user out of the shell.
-
-@subheading EXIT STATUS:
-
-This command does not return.
-
-@subheading NOTES:
-
-The system behavior when the shell is exited depends upon how the
-shell was initiated. The typical behavior is that a login prompt
-will be displayed for the next login attempt or that the connection
-will be dropped by the RTEMS system.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{logoff}:
-
-@example
-SHLL [/] $ logoff
-logoff from the system...
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_LOGOFF
-@findex CONFIGURE_SHELL_COMMAND_LOGOFF
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_LOGOFF} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_LOGOFF} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_logoff
-
-The @code{logoff} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_logoff(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{logoff} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_LOGOFF_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection rtc - RTC driver configuration
-
-@pgindex rtc
-
-@subheading SYNOPSYS:
-
-@example
-rtc
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_RTC
-@findex CONFIGURE_SHELL_COMMAND_RTC
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_RTC} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_RTC} when all
-shell commands have been configured.
-
-@c
-@c
-@c
-@page
-@subsection exit - exit the shell
-
-@pgindex exit
-
-@subheading SYNOPSYS:
-
-@example
-exit
-@end example
-
-@subheading DESCRIPTION:
-
-This command causes the shell interpreter to @code{exit}.
-
-@subheading EXIT STATUS:
-
-This command does not return.
-
-@subheading NOTES:
-
-In contrast to @ref{General Commands logoff - logoff from the system, logoff},
-this command is built into the shell interpreter loop.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{exit}:
-
-@example
-SHLL [/] $ exit
-Shell exiting
-@end example
-
-@subheading CONFIGURATION:
-
-This command is always present and cannot be disabled.
-
-@subheading PROGRAMMING INFORMATION:
-
-The @code{exit} is implemented directly in the shell interpreter.
-There is no C routine associated with it.
diff --git a/doc/shell/memory.t b/doc/shell/memory.t
deleted file mode 100644
index 5cd371a108..0000000000
--- a/doc/shell/memory.t
+++ /dev/null
@@ -1,652 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2012.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-@c
-
-@chapter Memory Commands
-
-@section Introduction
-
-The RTEMS shell has the following memory commands:
-
-@itemize @bullet
-
-@item @code{mdump} - Display contents of memory
-@item @code{wdump} - Display contents of memory (word)
-@item @code{ldump} - Display contents of memory (longword)
-@item @code{medit} - Modify contents of memory
-@item @code{mfill} - File memory with pattern
-@item @code{mmove} - Move contents of memory
-@item @code{malloc} - Obtain information on C Program Heap
-
-@end itemize
-
-@section Commands
-
-This section details the Memory Commands available. A
-subsection is dedicated to each of the commands and
-describes the behavior and configuration of that
-command as well as providing an example usage.
-
-@c
-@c
-@c
-@page
-@subsection mdump - display contents of memory
-
-@pgindex mdump
-
-@subheading SYNOPSYS:
-
-@example
-mdump [address [length [size]]]
-@end example
-
-@subheading DESCRIPTION:
-
-This command displays the contents of memory at the @code{address}
-and @code{length} in @code{size} byte units specified on the command line.
-
-When @code{size} is not provided, it defaults to @code{1} byte units.
-Values of @code{1}, @code{2}, and @code{4} are valid; all others will
-cause an error to be reported.
-
-When @code{length} is not provided, it defaults to @code{320} which
-is twenty lines of output with sixteen bytes of output per line.
-
-When @code{address} is not provided, it defaults to @code{0x00000000}.
-
-@subheading EXIT STATUS:
-
-This command always returns 0 to indicate success.
-
-@subheading NOTES:
-
-Dumping memory from a non-existent address may result in an unrecoverable
-program fault.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{mdump}:
-
-@smallexample
-SHLL [/] $ mdump 0x10000 32
-0x0001000000 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
-0x0001001000 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
-SHLL [/] $ mdump 0x02000000 32
-0x02000000A1 48 00 00 29 00 80 33-81 C5 22 BC A6 10 21 00 .H..)..3.."...!.
-0x02000010A1 48 00 00 29 00 80 33-81 C5 22 BC A6 10 21 01 .H..)..3.."...!.
-SHLL [/] $ mdump 0x02001000 32
-0x0200100003 00 80 00 82 10 60 00-81 98 40 00 83 48 00 00 ......`...@..H..
-0x0200101084 00 60 01 84 08 A0 07-86 10 20 01 87 28 C0 02 ..`....... ..(..
-@end smallexample
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_MDUMP
-@findex CONFIGURE_SHELL_COMMAND_MDUMP
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_MDUMP} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_MDUMP} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_mdump
-
-The @code{mdump} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_mdump(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{mdump} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_MDUMP_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection wdump - display contents of memory (word)
-
-@pgindex wdump
-
-@subheading SYNOPSYS:
-
-@example
-wdump [address [length]]
-@end example
-
-@subheading DESCRIPTION:
-
-This command displays the contents of memory at the @code{address}
-and @code{length} in bytes specified on the command line.
-
-This command is equivalent to @code{mdump address length 2}.
-
-When @code{length} is not provided, it defaults to @code{320} which
-is twenty lines of output with eight words of output per line.
-
-When @code{address} is not provided, it defaults to @code{0x00000000}.
-
-@subheading EXIT STATUS:
-
-This command always returns 0 to indicate success.
-
-@subheading NOTES:
-
-Dumping memory from a non-existent address may result in an unrecoverable
-program fault.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{wdump}:
-
-@smallexample
-SHLL [/] $ wdump 0x02010000 32
-0x02010000 0201 08D8 0201 08C0-0201 08AC 0201 0874 ...............t
-0x02010010 0201 0894 0201 0718-0201 0640 0201 0798 ...........@....
-@end smallexample
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_WDUMP
-@findex CONFIGURE_SHELL_COMMAND_WDUMP
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_WDUMP} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_WDUMP} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_wdump
-
-The @code{wdump} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_wdump(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{wdump} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_WDUMP_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection ldump - display contents of memory (longword)
-
-@pgindex ldump
-
-@subheading SYNOPSYS:
-
-@example
-ldump [address [length]]
-@end example
-
-@subheading DESCRIPTION:
-
-This command displays the contents of memory at the @code{address}
-and @code{length} in bytes specified on the command line.
-
-This command is equivalent to @code{mdump address length 4}.
-
-When @code{length} is not provided, it defaults to @code{320} which
-is twenty lines of output with four longwords of output per line.
-
-When @code{address} is not provided, it defaults to @code{0x00000000}.
-
-@subheading EXIT STATUS:
-
-This command always returns 0 to indicate success.
-
-@subheading NOTES:
-
-Dumping memory from a non-existent address may result in an unrecoverable
-program fault.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{ldump}:
-
-@smallexample
-SHLL [/] $ ldump 0x02010000 32
-0x02010000 020108D8 020108C0-020108AC 02010874 ...............t
-0x02010010 020 0894 02010718-02010640 02010798 ...........@....
-@end smallexample
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_LDUMP
-@findex CONFIGURE_SHELL_COMMAND_LDUMP
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_LDUMP} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_LDUMP} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_ldump
-
-The @code{ldump} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_ldump(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{ldump} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_LDUMP_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection medit - modify contents of memory
-
-@pgindex medit
-
-@subheading SYNOPSYS:
-
-@example
-medit address value1 [value2 ... valueN]
-@end example
-
-@subheading DESCRIPTION:
-
-This command is used to modify the contents of the memory starting
-at @code{address} using the octets specified by the parameters
-@code{value1} through @code{valueN}.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-Dumping memory from a non-existent address may result in an unrecoverable
-program fault.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{medit}:
-
-@smallexample
-SHLL [/] $ mdump 0x02000000 32
-0x02000000 A1 48 00 00 29 00 80 33-81 C5 22 BC A6 10 21 00 .H..)..3.."...!.
-0x02000010 A1 48 00 00 29 00 80 33-81 C5 22 BC A6 10 21 01 .H..)..3.."...!.
-SHLL [/] $ medit 0x02000000 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09
-SHLL [/] $ mdump 0x02000000 32
-0x02000000 01 02 03 04 05 06 07 08-09 00 22 BC A6 10 21 00 .........."...!.
-0x02000010 A1 48 00 00 29 00 80 33-81 C5 22 BC A6 10 21 01 .H..)..3.."...!.
-@end smallexample
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_MEDIT
-@findex CONFIGURE_SHELL_COMMAND_MEDIT
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_MEDIT} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_MEDIT} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_medit
-
-The @code{medit} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_medit(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{medit} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_MEDIT_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection mfill - file memory with pattern
-
-@pgindex mfill
-
-@subheading SYNOPSYS:
-
-@example
-mfill address length value
-@end example
-
-@subheading DESCRIPTION:
-
-This command is used to fill the memory starting at @code{address}
-for the specified @code{length} in octets when the specified at
-@code{value}.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-Filling a non-existent address range may result in an unrecoverable
-program fault. Similarly overwriting interrupt vector tables, code
-space or critical data areas can be fatal as shown in the example.
-
-@subheading EXAMPLES:
-
-In this example, the address used (@code{0x23d89a0}) as the base
-address of the filled area is the end of the stack for the
-Idle thread. This address was determined manually using gdb and
-is very specific to this application and BSP. The first command
-in this example is an @code{mdump} to display the initial contents
-of this memory. We see that the first 8 bytes are 0xA5 which is
-the pattern used as a guard by the Stack Checker. On
-the first context switch after the pattern is overwritten
-by the @code{mfill} command, the Stack Checker detect the pattern
-has been corrupted and generates a fatal error.
-
-@smallexample
-SHLL [/] $ mdump 0x23d89a0 16
-0x023D89A0 A5 A5 A5 A5 A5 A5 A5 A5-FE ED F0 0D 0B AD 0D 06 ................
-SHLL [/] $ mfill 0x23d89a0 13 0x5a
-SHLL [/] $ BLOWN STACK!!! Offending task(0x23D4418): id=0x09010001; name=0x0203D908
- stack covers range 0x23D89A0 - 0x23D99AF (4112 bytes)
- Damaged pattern begins at 0x023D89A8 and is 16 bytes long
-@end smallexample
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_MFILL
-@findex CONFIGURE_SHELL_COMMAND_MFILL
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_MFILL} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_MFILL} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_mfill
-
-The @code{mfill} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_mfill(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{mfill} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_MFILL_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection mmove - move contents of memory
-
-@pgindex mmove
-
-@subheading SYNOPSYS:
-
-@example
-mmove dst src length
-@end example
-
-@subheading DESCRIPTION:
-
-This command is used to copy the contents of the memory
-starting at @code{src} to the memory located at @code{dst}
-for the specified @code{length} in octets.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{mmove}:
-
-@smallexample
-SHLL [/] $ mdump 0x023d99a0 16
-0x023D99A0 A5 A5 A5 A5 A5 A5 A5 A5-A5 A5 A5 A5 A5 A5 A5 A5 ................
-SHLL [/] $ mdump 0x02000000 16
-0x02000000 A1 48 00 00 29 00 80 33-81 C5 22 BC A6 10 21 00 .H..)..3.."...!.
-SHLL [/] $ mmove 0x023d99a0 0x02000000 13
-SHLL [/] $ mdump 0x023d99a0 16
-0x023D99A0 A1 48 00 00 29 00 80 33-81 C5 22 BC A6 A5 A5 A5 .H..)..3..".....
-@end smallexample
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_MMOVE
-@findex CONFIGURE_SHELL_COMMAND_MMOVE
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_MMOVE} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_MMOVE} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_mmove
-
-The @code{mmove} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_mmove(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{mmove} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_MMOVE_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection malloc - obtain information on C program heap
-
-@pgindex malloc
-
-@subheading SYNOPSYS:
-
-@example
-malloc [walk]
-@end example
-
-@subheading DESCRIPTION:
-
-This command prints information about the current state of the C Program Heap
-used by the @code{malloc()} family of calls if no or invalid options are passed
-to the command. This includes the following information:
-
-@itemize @bullet
-@item Number of free blocks
-@item Largest free block
-@item Total bytes free
-@item Number of used blocks
-@item Largest used block
-@item Total bytes used
-@item Size of the allocatable area in bytes
-@item Minimum free size ever in bytes
-@item Maximum number of free blocks ever
-@item Maximum number of blocks searched ever
-@item Lifetime number of bytes allocated
-@item Lifetime number of bytes freed
-@item Total number of searches
-@item Total number of successful allocations
-@item Total number of failed allocations
-@item Total number of successful frees
-@item Total number of successful resizes
-@end itemize
-
-When the subcommand @code{walk} is specified, then a heap walk will be
-performed and information about each block is printed out.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of how to use the @code{malloc} command.
-
-@example
-SHLL [/] $ malloc
-C Program Heap and RTEMS Workspace are the same.
-Number of free blocks: 2
-Largest free block: 266207504
-Total bytes free: 266208392
-Number of used blocks: 167
-Largest used block: 16392
-Total bytes used: 83536
-Size of the allocatable area in bytes: 266291928
-Minimum free size ever in bytes: 266207360
-Maximum number of free blocks ever: 6
-Maximum number of blocks searched ever: 5
-Lifetime number of bytes allocated: 91760
-Lifetime number of bytes freed: 8224
-Total number of searches: 234
-Total number of successful allocations: 186
-Total number of failed allocations: 0
-Total number of successful frees: 19
-Total number of successful resizes: 0
-SHLL [/] $ malloc walk
-malloc walk
-PASS[0]: page size 8, min block size 48
- area begin 0x00210210, area end 0x0FFFC000
- first block 0x00210214, last block 0x0FFFBFDC
- first free 0x00228084, last free 0x00228354
-PASS[0]: block 0x00210214: size 88
-...
-PASS[0]: block 0x00220154: size 144
-PASS[0]: block 0x002201E4: size 168, prev 0x002205BC, next 0x00228354 (= last free)
-PASS[0]: block 0x0022028C: size 168, prev_size 168
-...
-PASS[0]: block 0x00226E7C: size 4136
-PASS[0]: block 0x00227EA4: size 408, prev 0x00228084 (= first free), next 0x00226CE4
-PASS[0]: block 0x0022803C: size 72, prev_size 408
-PASS[0]: block 0x00228084: size 648, prev 0x0020F75C (= head), next 0x00227EA4
-PASS[0]: block 0x0022830C: size 72, prev_size 648
-PASS[0]: block 0x00228354: size 266157192, prev 0x002201E4, next 0x0020F75C (= tail)
-PASS[0]: block 0x0FFFBFDC: size 4028711480, prev_size 266157192
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_MALLOC
-@findex CONFIGURE_SHELL_COMMAND_MALLOC
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_MALLOC} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_MALLOC} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_malloc
-
-The @code{malloc} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_malloc(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{malloc} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_MALLOC_Command;
-@end example
-
diff --git a/doc/shell/network.t b/doc/shell/network.t
deleted file mode 100644
index c5709c6a76..0000000000
--- a/doc/shell/network.t
+++ /dev/null
@@ -1,685 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2008.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Network Commands
-
-@section Introduction
-
-The RTEMS shell has the following network commands:
-
-@itemize @bullet
-
-@item @code{netstats} - obtain network statistics
-@item @code{ifconfig} - configure a network interface
-@item @code{route} - show or manipulate the IP routing table
-@item @code{ping} - ping a host or IP address
-
-@end itemize
-
-@section Commands
-
-This section details the Network Commands available. A
-subsection is dedicated to each of the commands and
-describes the behavior and configuration of that
-command as well as providing an example usage.
-
-@c
-@c
-@c
-@page
-@subsection netstats - obtain network statistics
-
-@pgindex netstats
-
-@subheading SYNOPSYS:
-
-@example
-netstats [-Aimfpcut]
-@end example
-
-@subheading DESCRIPTION:
-
-This command is used to display various types of network statistics. The
-information displayed can be specified using command line arguments in
-various combinations. The arguments are interpreted as follows:
-
-@table @b
-@item -A
-print All statistics
-
-@item -i
-print Inet Routes
-
-@item -m
-print MBUF Statistics
-
-@item -f
-print IF Statistics
-
-@item -p
-print IP Statistics
-
-@item -c
-print ICMP Statistics
-
-@item -u
-print UDP Statistics
-
-@item -t
-print TCP Statistics
-
-@end table
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{netstats}:
-
-The following is an example of using the @code{netstats}
-command to print the IP routing table:
-
-@smallexample
-[/] $ netstats -i
-Destination Gateway/Mask/Hw Flags Refs Use Expire Interface
-default 192.168.1.14 UGS 0 0 0 eth1
-192.168.1.0 255.255.255.0 U 0 0 1 eth1
-192.168.1.14 00:A0:C8:1C:EE:28 UHL 1 0 1219 eth1
-192.168.1.51 00:1D:7E:0C:D0:7C UHL 0 840 1202 eth1
-192.168.1.151 00:1C:23:B2:0F:BB UHL 1 23 1219 eth1
-@end smallexample
-
-The following is an example of using the @code{netstats}
-command to print the MBUF statistics:
-
-@smallexample
-[/] $ netstats -m
-************ MBUF STATISTICS ************
-mbufs:2048 clusters: 128 free: 63
-drops: 0 waits: 0 drains: 0
- free:1967 data:79 header:2 socket:0
- pcb:0 rtable:0 htable:0 atable:0
- soname:0 soopts:0 ftable:0 rights:0
- ifaddr:0 control:0 oobdata:0
-@end smallexample
-
-The following is an example of using the @code{netstats}
-command to print the print the interface statistics:
-
-@smallexample
-[/] $ netstats -f
-************ INTERFACE STATISTICS ************
-***** eth1 *****
-Ethernet Address: 00:04:9F:00:5B:21
-Address:192.168.1.244 Broadcast Address:192.168.1.255 Net mask:255.255.255.0
-Flags: Up Broadcast Running Active Multicast
-Send queue limit:50 length:1 Dropped:0
- Rx Interrupts:889 Not First:0 Not Last:0
- Giant:0 Non-octet:0
- Bad CRC:0 Overrun:0 Collision:0
- Tx Interrupts:867 Deferred:0 Late Collision:0
- Retransmit Limit:0 Underrun:0 Misaligned:0
-@end smallexample
-
-The following is an example of using the @code{netstats}
-command to print the print IP statistics:
-
-@smallexample
-[/] $ netstats -p
-************ IP Statistics ************
- total packets received 894
- packets rcvd for unreachable dest 13
- datagrams delivered to upper level 881
- total ip packets generated here 871
-
-@end smallexample
-
-The following is an example of using the @code{netstats}
-command to print the ICMP statistics:
-
-@smallexample
-[/] $ netstats -c
-************ ICMP Statistics ************
- Type 0 sent 843
- number of responses 843
- Type 8 received 843
-
-@end smallexample
-
-The following is an example of using the @code{netstats}
-command to print the UDP statistics:
-
-@smallexample
-[/] $ netstats -u
-************ UDP Statistics ************
-
-@end smallexample
-
-The following is an example of using the @code{netstats}
-command to print the TCP statistics:
-
-@smallexample
-[/] $ netstats -t
-************ TCP Statistics ************
- connections accepted 1
- connections established 1
- segs where we tried to get rtt 34
- times we succeeded 35
- delayed acks sent 2
- total packets sent 37
- data packets sent 35
- data bytes sent 2618
- ack-only packets sent 2
- total packets received 47
- packets received in sequence 12
- bytes received in sequence 307
- rcvd ack packets 35
- bytes acked by rcvd acks 2590
- times hdr predict ok for acks 27
- times hdr predict ok for data pkts 10
-@end smallexample
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_NETSTATS
-@findex CONFIGURE_SHELL_COMMAND_NETSTATS
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_NETSTATS} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_NETSTATS} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_netstats
-
-The @code{netstats} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_netstats(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{netstats} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_NETSTATS_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection ifconfig - configure a network interface
-
-@pgindex ifconfig
-
-@subheading SYNOPSYS:
-
-@example
-ifconfig
-ifconfig interface
-ifconfig interface [up|down]
-ifconfig interface [netmask|pointtopoint|broadcast] IP
-
-@end example
-
-@subheading DESCRIPTION:
-
-This command may be used to display information about the
-network interfaces in the system or configure them.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-Just like its counterpart on GNU/Linux and BSD systems, this command
-is complicated. More example usages would be a welcome submission.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{ifconfig}:
-
-@smallexample
- ************ INTERFACE STATISTICS ************
-***** eth1 *****
-Ethernet Address: 00:04:9F:00:5B:21
-Address:192.168.1.244 Broadcast Address:192.168.1.255 Net mask:255.255.255.0
-Flags: Up Broadcast Running Active Multicast
-Send queue limit:50 length:1 Dropped:0
- Rx Interrupts:5391 Not First:0 Not Last:0
- Giant:0 Non-octet:0
- Bad CRC:0 Overrun:0 Collision:0
- Tx Interrupts:5256 Deferred:0 Late Collision:0
- Retransmit Limit:0 Underrun:0 Misaligned:0
-@end smallexample
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_IFCONFIG
-@findex CONFIGURE_SHELL_COMMAND_IFCONFIG
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_IFCONFIG} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_IFCONFIG} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_ifconfig
-
-The @code{ifconfig} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_ifconfig(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{ifconfig} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_IFCONFIG_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection route - show or manipulate the ip routing table
-
-@pgindex route
-
-@subheading SYNOPSYS:
-
-@example
-route [subcommand] [args]
-@end example
-
-@subheading DESCRIPTION:
-
-This command is used to display and manipulate the routing table.
-When invoked with no arguments, the current routing information is
-displayed. When invoked with the subcommands @code{add} or @code{del},
-then additional arguments must be provided to describe the route.
-
-Command templates include the following:
-
-@smallexample
-route [add|del] -net IP_ADDRESS gw GATEWAY_ADDRESS [netmask MASK]
-route [add|del] -host IP_ADDRESS gw GATEWAY_ADDRES [netmask MASK]
-@end smallexample
-
-When not provided the netmask defaults to @code{255.255.255.0}
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-Just like its counterpart on GNU/Linux and BSD systems, this command
-is complicated. More example usages would be a welcome submission.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{route} to display,
-add, and delete a new route:
-
-@smallexample
-[/] $ route
-Destination Gateway/Mask/Hw Flags Refs Use Expire Interface
-default 192.168.1.14 UGS 0 0 0 eth1
-192.168.1.0 255.255.255.0 U 0 0 1 eth1
-192.168.1.14 00:A0:C8:1C:EE:28 UHL 1 0 1444 eth1
-192.168.1.51 00:1D:7E:0C:D0:7C UHL 0 10844 1202 eth1
-192.168.1.151 00:1C:23:B2:0F:BB UHL 2 37 1399 eth1
-[/] $ route add -net 192.168.3.0 gw 192.168.1.14
-[/] $ route
-Destination Gateway/Mask/Hw Flags Refs Use Expire Interface
-default 192.168.1.14 UGS 0 0 0 eth1
-192.168.1.0 255.255.255.0 U 0 0 1 eth1
-192.168.1.14 00:A0:C8:1C:EE:28 UHL 2 0 1498 eth1
-192.168.1.51 00:1D:7E:0C:D0:7C UHL 0 14937 1202 eth1
-192.168.1.151 00:1C:23:B2:0F:BB UHL 2 96 1399 eth1
-192.168.3.0 192.168.1.14 UGS 0 0 0 eth1
-[/] $ route del -net 192.168.3.0 gw 192.168.1.14
-[/] $ route
-Destination Gateway/Mask/Hw Flags Refs Use Expire Interface
-default 192.168.1.14 UGS 0 0 0 eth1
-192.168.1.0 255.255.255.0 U 0 0 1 eth1
-192.168.1.14 00:A0:C8:1C:EE:28 UHL 1 0 1498 eth1
-192.168.1.51 00:1D:7E:0C:D0:7C UHL 0 15945 1202 eth1
-192.168.1.151 00:1C:23:B2:0F:BB UHL 2 117 1399 eth1
-@end smallexample
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_ROUTE
-@findex CONFIGURE_SHELL_COMMAND_ROUTE
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_ROUTE} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_ROUTE} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_route
-
-The @code{route} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_route(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{route} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_ROUTE_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection ping - ping a host or IP address
-
-@pgindex ping
-
-@subheading SYNOPSYS:
-
-@example
-ping [-AaDdfnoQqRrv] [-c count] [-G sweepmaxsize] [-g sweepminsize]
- [-h sweepincrsize] [-i wait] [-l preload] [-M mask | time] [-m ttl]
- [-p pattern] [-S src_addr] [-s packetsize] [-t timeout]
- [-W waittime] [-z tos] host
-ping [-AaDdfLnoQqRrv] [-c count] [-I iface] [-i wait] [-l preload]
- [-M mask | time] [-m ttl] [-p pattern] [-S src_addr]
- [-s packetsize] [-T ttl] [-t timeout] [-W waittime]
- [-z tos] mcast-group
-@end example
-
-@subheading DESCRIPTION:
-
-The ping utility uses the ICMP protocol's mandatory ECHO_REQUEST
-datagram to elicit an ICMP ECHO_RESPONSE from a host or gateway.
-ECHO_REQUEST datagrams (``pings'') have an IP and ICMP header,
-followed by a ``struct timeval'' and then an arbitrary number of
-``pad'' bytes used to fill out the packet. The options are as
-follows:
-
-@table @b
-@item -A
-Audible. Output a bell (ASCII 0x07) character when no packet is
-received before the next packet is transmitted. To cater for
-round-trip times that are longer than the interval between
-transmissions, further missing packets cause a bell only if the
-maximum number of unreceived packets has increased.
-
-@item -a
-Audible. Include a bell (ASCII 0x07) character in the output when any
-packet is received. This option is ignored if other format options
-are present.
-
-@item -c count
-Stop after sending (and receiving) count ECHO_RESPONSE packets. If
-this option is not specified, ping will operate until interrupted. If
-this option is specified in conjunction with ping sweeps, each sweep
-will consist of count packets.
-
-@item -D
-Set the Don't Fragment bit.
-
-@item -d
-Set the SO_DEBUG option on the socket being used.
-
-@item -f
-Flood ping. Outputs packets as fast as they come back or one
-hundred times per second, whichever is more. For every ECHO_REQUEST
-sent a period ``.'' is printed, while for every ECHO_REPLY received a
-backspace is printed. This provides a rapid display of how many
-packets are being dropped. Only the super-user may use this option.
-This can be very hard on a network and should be used with caution.
-
-@item -G sweepmaxsize
-Specify the maximum size of ICMP payload when sending sweeping pings.
-This option is required for ping sweeps.
-
-@item -g sweepminsize
-Specify the size of ICMP payload to start with when sending sweeping
-pings. The default value is 0.
-
-@item -h sweepincrsize
-Specify the number of bytes to increment the size of ICMP payload
-after each sweep when sending sweeping pings. The default value is 1.
-
-@item -I iface
-Source multicast packets with the given interface address. This flag
-only applies if the ping destination is a multicast address.
-
-@item -i wait
-Wait wait seconds between sending each packet. The default is to wait
-for one second between each packet. The wait time may be fractional,
-but only the super-user may specify values less than 1 second. This
-option is incompatible with the -f option.
-
-@item -L
-Suppress loopback of multicast packets. This flag only applies if the
-ping destination is a multicast address.
-
-@item -l preload
-If preload is specified, ping sends that many packets as fast as
-possible before falling into its normal mode of behavior. Only the
-super-user may use this option.
-
-@item -M mask | time
-Use ICMP_MASKREQ or ICMP_TSTAMP instead of ICMP_ECHO. For mask, print
-the netmask of the remote machine. Set the net.inet.icmp.maskrepl MIB
-variable to enable ICMP_MASKREPLY. For time, print the origination,
-reception and transmission timestamps.
-
-@item -m ttl
-Set the IP Time To Live for outgoing packets. If not specified, the
-kernel uses the value of the net.inet.ip.ttl MIB variable.
-
-@item -n
-Numeric output only. No attempt will be made to lookup symbolic names
-for host addresses.
-
-@item -o
-Exit successfully after receiving one reply packet.
-
-@item -p pattern
-You may specify up to 16 ``pad'' bytes to fill out the packet you
-send. This is useful for diagnosing data-dependent problems in a
-network. For example, ``-p ff'' will cause the sent packet to be
-filled with all ones.
-
-@item -Q
-Somewhat quiet output. Don't display ICMP error messages that are in
-response to our query messages. Originally, the -v flag was required
-to display such errors, but -v displays all ICMP error messages. On a
-busy machine, this output can be overbear- ing. Without the -Q flag,
-ping prints out any ICMP error mes- sages caused by its own
-ECHO_REQUEST messages.
-
-@item -q
-Quiet output. Nothing is displayed except the summary lines at
-startup time and when finished.
-
-@item -R
-Record route. Includes the RECORD_ROUTE option in the ECHO_REQUEST
-packet and displays the route buffer on returned packets. Note that
-the IP header is only large enough for nine such routes; the
-traceroute(8) command is usually better at determining the route
-packets take to a particular destination. If more routes come back
-than should, such as due to an illegal spoofed packet, ping will print
-the route list and then truncate it at the correct spot. Many hosts
-ignore or discard the RECORD_ROUTE option.
-
-@item -r
-Bypass the normal routing tables and send directly to a host on an
-attached network. If the host is not on a directly-attached network,
-an error is returned. This option can be used to ping a local host
-through an interface that has no route through it (e.g., after the
-interface was dropped).
-
-@item -S src_addr
-Use the following IP address as the source address in outgoing
-packets. On hosts with more than one IP address, this option can be
-used to force the source address to be something other than the IP
-address of the interface the probe packet is sent on. If the IP
-address is not one of this machine's interface addresses, an error is
-returned and nothing is sent.
-
-@item -s packetsize
-Specify the number of data bytes to be sent. The default is 56, which
-translates into 64 ICMP data bytes when combined with the 8 bytes of
-ICMP header data. Only the super-user may specify val- ues more than
-default. This option cannot be used with ping sweeps.
-
-@item -T ttl
-Set the IP Time To Live for multicasted packets. This flag only
-applies if the ping destination is a multicast address.
-
-@item -t timeout
-Specify a timeout, in seconds, before ping exits regardless of how
-many packets have been received.
-
-@item -v
-Verbose output. ICMP packets other than ECHO_RESPONSE that are
-received are listed.
-
-@item -W waittime
-Time in milliseconds to wait for a reply for each packet sent. If a
-reply arrives later, the packet is not printed as replied, but
-considered as replied when calculating statistics.
-
-@item -z tos
-Use the specified type of service.
-
-@end table
-
-@subheading EXIT STATUS:
-The ping utility exits with one of the following values:
-
-0 At least one response was heard from the specified host.
-
-2 The transmission was successful but no responses were
- received.
-
-any other value an error occurred. These values are defined in
-<sysexits.h>.
-
-@subheading NOTES:
-
-When using ping for fault isolation, it should first be run on the
-local host, to verify that the local network interface is up and
-running. Then, hosts and gateways further and further away should be
-``pinged''. Round-trip times and packet loss statistics are computed.
-If duplicate packets are received, they are not included in the packet
-loss calculation, although the round trip time of these packets is
-used in calculating the round-trip time statistics. When the
-specified number of packets have been sent a brief summary is
-displayed, showing the number of packets sent and received, and the
-minimum, mean, maximum, and standard deviation of the round-trip
-times.
-
-This program is intended for use in network testing, measurement and
-management. Because of the load it can impose on the network, it is
-unwise to use ping during normal operations or from automated scripts.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{oing} to ping:
-
-@smallexample
-[/] # ping 10.10.10.1
-PING 10.10.10.1 (10.10.10.1): 56 data bytes
-64 bytes from 10.10.10.1: icmp_seq=0 ttl=63 time=0.356 ms
-64 bytes from 10.10.10.1: icmp_seq=1 ttl=63 time=0.229 ms
-64 bytes from 10.10.10.1: icmp_seq=2 ttl=63 time=0.233 ms
-64 bytes from 10.10.10.1: icmp_seq=3 ttl=63 time=0.235 ms
-64 bytes from 10.10.10.1: icmp_seq=4 ttl=63 time=0.229 ms
-
---- 10.10.10.1 ping statistics ---
-5 packets transmitted, 5 packets received, 0.0% packet loss
-round-trip min/avg/max/stddev = 0.229/0.256/0.356/0.050 ms
-[/] # ping -f -c 10000 10.10.10.1
-PING 10.10.10.1 (10.10.10.1): 56 data bytes
-.
---- 10.10.10.1 ping statistics ---
-10000 packets transmitted, 10000 packets received, 0.0% packet loss
-round-trip min/avg/max/stddev = 0.154/0.225/0.533/0.027 ms
-@end smallexample
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_PING
-@findex CONFIGURE_SHELL_COMMAND_PING
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_PING} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_PING} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_ping
-
-The @code{ping} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_ping(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{ping} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_PING_Command;
-@end example
-
diff --git a/doc/shell/preface.texi b/doc/shell/preface.texi
deleted file mode 100644
index b348ca7227..0000000000
--- a/doc/shell/preface.texi
+++ /dev/null
@@ -1,111 +0,0 @@
-@c
-@c COPYRIGHT (c) 1989-2011.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@node Preface, Configuration and Initialization, Top, Top
-@unnumbered Preface
-
-Real-time embedded systems vary widely based upon their
-operational and maintenance requirements. Some of these
-systems provide ways for the user or developer to interact
-with them. This interaction could be used for operational,
-diagnostic, or configuration purposes. The capabilities
-described in this manual are those provided with RTEMS to
-provide a command line interface for user access. Some
-of these commands will be familiar as standard POSIX utilities
-while others are RTEMS specific or helpful in debugging
-and analyzing an embedded system. As a simple example of
-the powerful and very familiar capabilities that the RTEMS
-Shell provides to an application, consider the following
-example which hints at some of the capabilities available:
-
-@smallexample
-Welcome to rtems-4.10.99.0(SPARC/w/FPU/sis)
-COPYRIGHT (c) 1989-2011.
-On-Line Applications Research Corporation (OAR).
-
-Login into RTEMS
-
-login: rtems
-Password:
-
-RTEMS SHELL (Ver.1.0-FRC):/dev/console. Feb 28 2008. 'help' to list commands.
-SHLL [/] $ cat /etc/passwd
-root:*:0:0:root::/:/bin/sh
-rtems:*:1:1:RTEMS Application::/:/bin/sh
-tty:!:2:2:tty owner::/:/bin/false
-SHLL [/] $ ls /dev
--rwxr-xr-x 1 rtems root 0 Jan 01 00:00 console
--rwxr-xr-x 1 root root 0 Jan 01 00:00 console_b
-2 files 0 bytes occupied
-SHLL [/] $ stackuse
-Stack usage by thread
- ID NAME LOW HIGH CURRENT AVAILABLE USED
-0x09010001 IDLE 0x023d89a0 - 0x023d99af 0x023d9760 4096 608
-0x0a010001 UI1 0x023d9f30 - 0x023daf3f 0x023dad18 4096 1804
-0x0a010002 SHLL 0x023db4c0 - 0x023df4cf 0x023de9d0 16384 6204
-0xffffffff INTR 0x023d2760 - 0x023d375f 0x00000000 4080 316
-SHLL [/] $ mount -L
-File systems: msdos
-SHLL [/] $
-@end smallexample
-
-In the above example, the user @i{rtems} logs into a
-SPARC based RTEMS system. The first command is
-@code{cat /etc/passwd}. This simple command lets us
-know that this application is running the In Memory
-File System (IMFS) and that the infrastructure has
-provided dummy entries for @i{/etc/passwd} and a few
-other files. The contents of @i{/etc/passwd} let
-us know that the user could have logged in as @code{root}.
-In fact, the @code{root} user has more permissions
-than @code{rtems} who is not allowed to write into the
-filesystem.
-
-The second command is @code{ls /dev} which lets us
-know that RTEMS has POSIX-style device nodes which
-can be accesses through standard I/O function calls.
-
-The third command executed is the RTEMS specific
-@code{stackuse} which gives a report on the stack
-usage of each thread in the system. Since stack
-overflows are a common error in deeply embedded systems,
-this is a surprising simple, yet powerful debugging aid.
-
-Finally, the last command, @code{mount -L} hints that
-RTEMS supports a variety of mountable filesystems. With
-support for MS-DOS FAT on IDE/ATA and Flash devices as
-well as network-based filesystens such as NFS and TFTP,
-the standard free RTEMS provides a robuse infrastructure
-for embedded applications.
-
-This manual describes the RTEMS Shell and its command set.
-In our terminology, the Shell is just a loop reading user
-input and turning that input into commands with argument.
-The Shell provided with RTEMS is a simple command reading
-loop with limited scripting capabilities. It can be connected
-to via a standard serial port or connected to the RTEMS
-@code{telnetd} server for use across a network.
-
-Each command in the command set is implemented as a single
-subroutine which has a @i{main-style} prototype. The commands
-interpret their arguments and operate upon stdin, stdout, and
-stderr by default. This allows each command to be invoked
-independent of the shell.
-
-The described separation of shell from commands from communications
-mechanism was an important design goal. At one level, the RTEMS
-Shell is a complete shell environment providing access to multiple
-POSIX compliant filesystems and TCP/IP stack. The subset of
-capabilities available is easy to configure and the standard
-Shell can be logged into from either a serial port or via telnet.
-But at another level, the Shell is a large set of components which
-can be integrated into the user's developed command interpreter.
-In either case, it is trivial to add custom commands to the command
-set available.
-
-@unnumberedsec Acknowledgements
-
-@include common/opengroup_preface_acknowledgement.texi
-
diff --git a/doc/shell/rtems.t b/doc/shell/rtems.t
deleted file mode 100644
index b31696e3af..0000000000
--- a/doc/shell/rtems.t
+++ /dev/null
@@ -1,1475 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2008.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter RTEMS Specific Commands
-
-@section Introduction
-
-The RTEMS shell has the following rtems commands:
-
-@itemize @bullet
-
-@item @code{shutdown} - Shutdown the system
-@item @code{cpuuse} - print or reset per thread cpu usage
-@item @code{stackuse} - print per thread stack usage
-@item @code{perioduse} - print or reset per period usage
-@item @code{profreport} - print a profiling report
-@item @code{wkspace} - Display information on Executive Workspace
-@item @code{config} - Show the system configuration.
-@item @code{itask} - List init tasks for the system
-@item @code{extension} - Display information about extensions
-@item @code{task} - Display information about tasks
-@item @code{queue} - Display information about message queues
-@item @code{sema} - display information about semaphores
-@item @code{region} - display information about regions
-@item @code{part} - display information about partitions
-@item @code{object} - Display information about RTEMS objects
-@item @code{driver} - Display the RTEMS device driver table
-@item @code{dname} - Displays information about named drivers
-@item @code{pthread} - Displays information about POSIX threads
-
-@end itemize
-
-@section Commands
-
-This section details the RTEMS Specific Commands available. A
-subsection is dedicated to each of the commands and
-describes the behavior and configuration of that
-command as well as providing an example usage.
-
-@c
-@c
-@c
-@page
-@subsection shutdown - Shutdown the system
-
-@pgindex shutdown
-
-@subheading SYNOPSYS:
-
-@example
-shutdown
-@end example
-
-@subheading DESCRIPTION:
-
-This command is used to shutdown the RTEMS application.
-
-@subheading EXIT STATUS:
-
-This command does not return.
-
-@subheading NOTES:
-
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{shutdown}:
-
-@example
-SHLL [/] $ shutdown
-System shutting down at user request
-@end example
-
-The user will not see another prompt and the system will
-shutdown.
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_SHUTDOWN
-@findex CONFIGURE_SHELL_COMMAND_SHUTDOWN
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_SHUTDOWN} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_SHUTDOWN} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-The configuration structure for the @code{shutdown} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_SHUTDOWN_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection cpuuse - print or reset per thread cpu usage
-
-@pgindex cpuuse
-
-@subheading SYNOPSYS:
-
-@example
-cpuuse [-r]
-@end example
-
-@subheading DESCRIPTION:
-
-This command may be used to print a report on the per thread
-cpu usage or to reset the per thread CPU usage statistics. When
-invoked with the @code{-r} option, the CPU usage statistics
-are reset.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-The granularity of the timing information reported is dependent
-upon the BSP and the manner in which RTEMS was built. In the
-default RTEMS configuration, if the BSP supports nanosecond
-granularity timestamps, then the information reported will be
-highly accurate. Otherwise, the accuracy of the information
-reported is limited by the clock tick quantum.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{cpuuse}:
-
-@example
-SHLL [/] $ cpuuse
-CPU Usage by thread
- ID NAME SECONDS PERCENT
-0x09010001 IDLE 49.745393 98.953
-0x0a010001 UI1 0.000000 0.000
-0x0a010002 SHLL 0.525928 1.046
-Time since last CPU Usage reset 50.271321 seconds
-SHLL [/] $ cpuuse -r
-Resetting CPU Usage information
-SHLL [/] $ cpuuse
-CPU Usage by thread
- ID NAME SECONDS PERCENT
-0x09010001 IDLE 0.000000 0.000
-0x0a010001 UI1 0.000000 0.000
-0x0a010002 SHLL 0.003092 100.000
-Time since last CPU Usage reset 0.003092 seconds
-@end example
-
-In the above example, the system had set idle for nearly
-a minute when the first report was generated. The
-@code{cpuuse -r} and @code{cpuuse} commands were pasted
-from another window so were executed with no gap between.
-In the second report, only the @code{shell} thread has
-run since the CPU Usage was reset. It has consumed
-approximately 3.092 milliseconds of CPU time processing
-the two commands and generating the output.
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_CPUUSE
-@findex CONFIGURE_SHELL_COMMAND_CPUUSE
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_CPUUSE} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_CPUUSE} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_cpuuse
-
-The @code{cpuuse} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_cpuuse(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{cpuuse} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_CPUUSE_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection stackuse - print per thread stack usage
-
-@pgindex stackuse
-
-@subheading SYNOPSYS:
-
-@example
-stackuse
-@end example
-
-@subheading DESCRIPTION:
-
-This command prints a Stack Usage Report for all of the tasks
-and threads in the system. On systems which support it, the
-usage of the interrupt stack is also included in the report.
-
-@subheading EXIT STATUS:
-
-This command always succeeds and returns 0.
-
-@subheading NOTES:
-
-The @code{CONFIGURE_STACK_CHECKER_ENABLED} @code{confdefs.h} constant
-must be defined when the application is configured for this
-command to have any information to report.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{stackuse}:
-
-@smallexample
-SHLL [/] $ stackuse
-Stack usage by thread
- ID NAME LOW HIGH CURRENT AVAILABLE USED
-0x09010001 IDLE 0x023d89a0 - 0x023d99af 0x023d9760 4096 608
-0x0a010001 UI1 0x023d9f30 - 0x023daf3f 0x023dad18 4096 1804
-0x0a010002 SHLL 0x023db4c0 - 0x023df4cf 0x023de9d0 16384 5116
-0xffffffff INTR 0x023d2760 - 0x023d375f 0x00000000 4080 316
-@end smallexample
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_STACKUSE
-@findex CONFIGURE_SHELL_COMMAND_STACKUSE
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_STACKUSE} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_STACKUSE} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_stackuse
-
-The @code{stackuse} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_stackuse(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{stackuse} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_STACKUSE_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection perioduse - print or reset per period usage
-
-@pgindex perioduse
-
-@subheading SYNOPSYS:
-
-@example
-perioduse [-r]
-@end example
-
-@subheading DESCRIPTION:
-
-This command may be used to print a statistics report on the rate
-monotonic periods in the application or to reset the rate monotonic
-period usage statistics. When invoked with the @code{-r} option, the
-usage statistics are reset.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-The granularity of the timing information reported is dependent
-upon the BSP and the manner in which RTEMS was built. In the
-default RTEMS configuration, if the BSP supports nanosecond
-granularity timestamps, then the information reported will be
-highly accurate. Otherwise, the accuracy of the information
-reported is limited by the clock tick quantum.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{perioduse}:
-
-@smallexample
-SHLL [/] $ perioduse
-Period information by period
---- CPU times are in seconds ---
---- Wall times are in seconds ---
- ID OWNER COUNT MISSED CPU TIME WALL TIME
- MIN/MAX/AVG MIN/MAX/AVG
-0x42010001 TA1 502 0 0:000039/0:042650/0:004158 0:000039/0:020118/0:002848
-0x42010002 TA2 502 0 0:000041/0:042657/0:004309 0:000041/0:020116/0:002848
-0x42010003 TA3 501 0 0:000041/0:041564/0:003653 0:000041/0:020003/0:002814
-0x42010004 TA4 501 0 0:000043/0:044075/0:004911 0:000043/0:020004/0:002814
-0x42010005 TA5 10 0 0:000065/0:005413/0:002739 0:000065/1:000457/0:041058
-
- MIN/MAX/AVG MIN/MAX/AVG
-SHLL [/] $ perioduse -r
-Resetting Period Usage information
-SHLL [/] $ perioduse
---- CPU times are in seconds ---
---- Wall times are in seconds ---
- ID OWNER COUNT MISSED CPU TIME WALL TIME
- MIN/MAX/AVG MIN/MAX/AVG
-0x42010001 TA1 0 0
-0x42010002 TA2 0 0
-0x42010003 TA3 0 0
-0x42010004 TA4 0 0
-0x42010005 TA5 0 0
-@end smallexample
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_PERIODUSE
-@findex CONFIGURE_SHELL_COMMAND_PERIODUSE
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_PERIODUSE} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_PERIODUSE} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_perioduse
-
-The @code{perioduse} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_perioduse(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{perioduse} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_PERIODUSE_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection profreport - print a profiling report
-
-@pgindex profreport
-
-@subheading SYNOPSYS:
-
-@example
-profreport
-@end example
-
-@subheading DESCRIPTION:
-
-This command may be used to print a profiling report.
-
-@subheading EXIT STATUS:
-
-This command returns 0.
-
-@subheading NOTES:
-
-Profiling must be enabled at build configuration time to get profiling
-information.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{profreport}:
-
-@smallexample
-SHLL [/] $ profreport
-<ProfilingReport name="Shell">
- <PerCPUProfilingReport processorIndex="0">
- <MaxThreadDispatchDisabledTime unit="ns">10447</MaxThreadDispatchDisabledTime>
- <MeanThreadDispatchDisabledTime unit="ns">2</MeanThreadDispatchDisabledTime>
- <TotalThreadDispatchDisabledTime unit="ns">195926627</TotalThreadDispatchDisabledTime>
- <ThreadDispatchDisabledCount>77908688</ThreadDispatchDisabledCount>
- <MaxInterruptDelay unit="ns">0</MaxInterruptDelay>
- <MaxInterruptTime unit="ns">688</MaxInterruptTime>
- <MeanInterruptTime unit="ns">127</MeanInterruptTime>
- <TotalInterruptTime unit="ns">282651157</TotalInterruptTime>
- <InterruptCount>2215855</InterruptCount>
- </PerCPUProfilingReport>
- <PerCPUProfilingReport processorIndex="1">
- <MaxThreadDispatchDisabledTime unit="ns">9053</MaxThreadDispatchDisabledTime>
- <MeanThreadDispatchDisabledTime unit="ns">41</MeanThreadDispatchDisabledTime>
- <TotalThreadDispatchDisabledTime unit="ns">3053830335</TotalThreadDispatchDisabledTime>
- <ThreadDispatchDisabledCount>73334202</ThreadDispatchDisabledCount>
- <MaxInterruptDelay unit="ns">0</MaxInterruptDelay>
- <MaxInterruptTime unit="ns">57</MaxInterruptTime>
- <MeanInterruptTime unit="ns">35</MeanInterruptTime>
- <TotalInterruptTime unit="ns">76980203</TotalInterruptTime>
- <InterruptCount>2141179</InterruptCount>
- </PerCPUProfilingReport>
- <SMPLockProfilingReport name="SMP lock stats">
- <MaxAcquireTime unit="ns">608</MaxAcquireTime>
- <MaxSectionTime unit="ns">1387</MaxSectionTime>
- <MeanAcquireTime unit="ns">112</MeanAcquireTime>
- <MeanSectionTime unit="ns">338</MeanSectionTime>
- <TotalAcquireTime unit="ns">119031</TotalAcquireTime>
- <TotalSectionTime unit="ns">357222</TotalSectionTime>
- <UsageCount>1055</UsageCount>
- <ContentionCount initialQueueLength="0">1055</ContentionCount>
- <ContentionCount initialQueueLength="1">0</ContentionCount>
- <ContentionCount initialQueueLength="2">0</ContentionCount>
- <ContentionCount initialQueueLength="3">0</ContentionCount>
- </SMPLockProfilingReport>
- <SMPLockProfilingReport name="Giant">
- <MaxAcquireTime unit="ns">4186</MaxAcquireTime>
- <MaxSectionTime unit="ns">7575</MaxSectionTime>
- <MeanAcquireTime unit="ns">160</MeanAcquireTime>
- <MeanSectionTime unit="ns">183</MeanSectionTime>
- <TotalAcquireTime unit="ns">1772793111</TotalAcquireTime>
- <TotalSectionTime unit="ns">2029733879</TotalSectionTime>
- <UsageCount>11039140</UsageCount>
- <ContentionCount initialQueueLength="0">11037655</ContentionCount>
- <ContentionCount initialQueueLength="1">1485</ContentionCount>
- <ContentionCount initialQueueLength="2">0</ContentionCount>
- <ContentionCount initialQueueLength="3">0</ContentionCount>
- </SMPLockProfilingReport>
-</ProfilingReport>
-@end smallexample
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_PROFREPORT
-@findex CONFIGURE_SHELL_COMMAND_PROFREPORT
-
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_PROFREPORT} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_PROFREPORT} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-The configuration structure for the @code{profreport} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_PROFREPORT_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection wkspace - display information on executive workspace
-
-@pgindex wkspace
-
-@subheading SYNOPSYS:
-
-@example
-wkspace
-@end example
-
-@subheading DESCRIPTION:
-
-This command prints information on the current state of
-the RTEMS Executive Workspace reported. This includes the
-following information:
-
-@itemize @bullet
-@item Number of free blocks
-@item Largest free block
-@item Total bytes free
-@item Number of used blocks
-@item Largest used block
-@item Total bytes used
-@end itemize
-
-@subheading EXIT STATUS:
-
-This command always succeeds and returns 0.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{wkspace}:
-
-@example
-SHLL [/] $ wkspace
-Number of free blocks: 1
-Largest free block: 132336
-Total bytes free: 132336
-Number of used blocks: 36
-Largest used block: 16408
-Total bytes used: 55344
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_WKSPACE
-@findex CONFIGURE_SHELL_COMMAND_WKSPACE
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_WKSPACE} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_WKSPACE} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_wkspace
-
-The @code{wkspace} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_wkspace(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{wkspace} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_WKSPACE_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection config - show the system configuration.
-
-@pgindex config
-
-@subheading SYNOPSYS:
-
-@example
-config
-@end example
-
-@subheading DESCRIPTION:
-
-This command display information about the RTEMS Configuration.
-
-@subheading EXIT STATUS:
-
-This command always succeeds and returns 0.
-
-@subheading NOTES:
-
-At this time, it does not report every configuration parameter.
-This is an area in which user submissions or sponsorship of
-a developer would be appreciated.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{config}:
-
-@smallexample
-INITIAL (startup) Configuration Info
-------------------------------------------------------------------------------
-WORKSPACE start: 0x23d22e0; size: 0x2dd20
-TIME usec/tick: 10000; tick/timeslice: 50; tick/sec: 100
-MAXIMUMS tasks: 20; timers: 0; sems: 50; que's: 20; ext's: 1
- partitions: 0; regions: 0; ports: 0; periods: 0
-@end smallexample
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_CONFIG
-@findex CONFIGURE_SHELL_COMMAND_CONFIG
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_CONFIG} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_CONFIG} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_config
-
-The @code{config} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_config(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{config} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_CONFIG_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection itask - list init tasks for the system
-
-@pgindex itask
-
-@subheading SYNOPSYS:
-
-@example
-itask
-@end example
-
-@subheading DESCRIPTION:
-
-This command prints a report on the set of initialization
-tasks and threads in the system.
-
-@subheading EXIT STATUS:
-
-This command always succeeds and returns 0.
-
-@subheading NOTES:
-
-At this time, it includes only Classic API Initialization Tasks.
-This is an area in which user submissions or sponsorship of
-a developer would be appreciated.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{itask}:
-
-@smallexample
-SHLL [/] $ itask
- # NAME ENTRY ARGUMENT PRIO MODES ATTRIBUTES STACK SIZE
-------------------------------------------------------------------------------
- 0 UI1 [0x2002258] 0 [0x0] 1 nP DEFAULT 4096 [0x1000]
-@end smallexample
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_ITASK
-@findex CONFIGURE_SHELL_COMMAND_ITASK
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_ITASK} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_ITASK} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_itask
-
-The @code{itask} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_itask(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{itask} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_ITASK_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection extension - display information about extensions
-
-@pgindex extension
-
-@subheading SYNOPSYS:
-
-@example
-extension [id [id ...] ]
-@end example
-
-@subheading DESCRIPTION:
-
-When invoked with no arguments, this command prints information on
-the set of User Extensions currently active in the system.
-
-If invoked with a set of ids as arguments, then just
-those objects are included in the information printed.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of using the @code{extension} command
-on a system with no user extensions.
-
-@smallexample
-SHLL [/] $ extension
- ID NAME
-------------------------------------------------------------------------------
-@end smallexample
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_EXTENSION
-@findex CONFIGURE_SHELL_COMMAND_EXTENSION
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_EXTENSION} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_EXTENSION} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_extension
-
-The @code{extension} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_extension(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{extension} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_EXTENSION_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection task - display information about tasks
-
-@pgindex task
-
-@subheading SYNOPSYS:
-
-@example
-task [id [id ...] ]
-@end example
-
-@subheading DESCRIPTION:
-
-When invoked with no arguments, this command prints information on
-the set of Classic API Tasks currently active in the system.
-
-If invoked with a set of ids as arguments, then just
-those objects are included in the information printed.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of how to use the @code{task} on an
-application with just two Classic API tasks:
-
-@smallexample
-SHLL [/] $ task
- ID NAME PRIO STAT MODES EVENTS WAITID WAITARG NOTES
-------------------------------------------------------------------------------
-0a010001 UI1 1 SUSP P:T:nA NONE
-0a010002 SHLL 100 READY P:T:nA NONE
-@end smallexample
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_TASK
-@findex CONFIGURE_SHELL_COMMAND_TASK
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_TASK} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_TASK} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_task
-
-The @code{task} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_task(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{task} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_TASK_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection queue - display information about message queues
-
-@pgindex queue
-
-@subheading SYNOPSYS:
-
-@example
-queue [id [id ... ] ]
-@end example
-
-@subheading DESCRIPTION:
-
-When invoked with no arguments, this command prints information on
-the set of Classic API Message Queues currently active in the system.
-
-If invoked with a set of ids as arguments, then just
-those objects are included in the information printed.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of using the @code{queue} command
-on a system with no Classic API Message Queues.
-
-@smallexample
-SHLL [/] $ queue
- ID NAME ATTRIBUTES PEND MAXPEND MAXSIZE
-------------------------------------------------------------------------------
-@end smallexample
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_QUEUE
-@findex CONFIGURE_SHELL_COMMAND_QUEUE
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_QUEUE} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_QUEUE} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_queue
-
-The @code{queue} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_queue(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{queue} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_QUEUE_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection sema - display information about semaphores
-
-@pgindex sema
-
-@subheading SYNOPSYS:
-
-@example
-sema [id [id ... ] ]
-@end example
-
-@subheading DESCRIPTION:
-
-When invoked with no arguments, this command prints information on
-the set of Classic API Semaphores currently active in the system.
-
-If invoked with a set of objects ids as arguments, then just
-those objects are included in the information printed.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{sema}:
-
-@smallexample
-SHLL [/] $ sema
- ID NAME ATTR PRICEIL CURR_CNT HOLDID
-------------------------------------------------------------------------------
-1a010001 LBIO PR:BI:IN 0 1 00000000
-1a010002 TRmi PR:BI:IN 0 1 00000000
-1a010003 LBI00 PR:BI:IN 0 1 00000000
-1a010004 TRia PR:BI:IN 0 1 00000000
-1a010005 TRoa PR:BI:IN 0 1 00000000
-1a010006 TRxa <assoc.c: BAD NAME> 0 0 09010001
-1a010007 LBI01 PR:BI:IN 0 1 00000000
-1a010008 LBI02 PR:BI:IN 0 1 00000000
-@end smallexample
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_SEMA
-@findex CONFIGURE_SHELL_COMMAND_SEMA
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_SEMA} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_SEMA} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_sema
-
-The @code{sema} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_sema(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{sema} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_SEMA_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection region - display information about regions
-
-@pgindex region
-
-@subheading SYNOPSYS:
-
-@example
-region [id [id ... ] ]
-@end example
-
-@subheading DESCRIPTION:
-
-When invoked with no arguments, this command prints information on
-the set of Classic API Regions currently active in the system.
-
-If invoked with a set of object ids as arguments, then just
-those object are included in the information printed.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of using the @code{region} command
-on a system with no user extensions.
-
-@smallexample
-SHLL [/] $ region
- ID NAME ATTR STARTADDR LENGTH PAGE_SIZE USED_BLOCKS
-------------------------------------------------------------------------------
-@end smallexample
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_REGION
-@findex CONFIGURE_SHELL_COMMAND_REGION
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_REGION} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_REGION} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_region
-
-The @code{region} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_region(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{region} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_REGION_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection part - display information about partitions
-
-@pgindex part
-
-@subheading SYNOPSYS:
-
-@example
-part [id [id ... ] ]
-@end example
-
-@subheading DESCRIPTION:
-
-When invoked with no arguments, this command prints information on
-the set of Classic API Partitions currently active in the system.
-
-If invoked with a set of object ids as arguments, then just
-those objects are included in the information printed.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of using the @code{part} command
-on a system with no user extensions.
-
-@smallexample
-SHLL [/] $ part
- ID NAME ATTR STARTADDR LENGTH BUF_SIZE USED_BLOCKS
-------------------------------------------------------------------------------
-@end smallexample
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_PART
-@findex CONFIGURE_SHELL_COMMAND_PART
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_PART} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_PART} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_part
-
-The @code{part} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_part(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{part} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_PART_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection object - display information about rtems objects
-
-@pgindex object
-
-@subheading SYNOPSYS:
-
-@example
-object [id [id ...] ]
-@end example
-
-@subheading DESCRIPTION:
-
-When invoked with a set of object ids as arguments, then
-a report on those objects is printed.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{object}:
-
-@smallexample
-SHLL [/] $ object 0a010001 1a010002
- ID NAME PRIO STAT MODES EVENTS WAITID WAITARG NOTES
-------------------------------------------------------------------------------
-0a010001 UI1 1 SUSP P:T:nA NONE
- ID NAME ATTR PRICEIL CURR_CNT HOLDID
-------------------------------------------------------------------------------
-1a010002 TRmi PR:BI:IN 0 1 00000000
-@end smallexample
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_OBJECT
-@findex CONFIGURE_SHELL_COMMAND_OBJECT
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_OBJECT} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_OBJECT} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_object
-
-The @code{object} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_object(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{object} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_OBJECT_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection driver - display the rtems device driver table
-
-@pgindex driver
-
-@subheading SYNOPSYS:
-
-@example
-driver [ major [ major ... ] ]
-@end example
-
-@subheading DESCRIPTION:
-
-When invoked with no arguments, this command prints information on
-the set of Device Drivers currently active in the system.
-
-If invoked with a set of major numbers as arguments, then just
-those Device Drivers are included in the information printed.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{driver}:
-
-@smallexample
-SHLL [/] $ driver
- Major Entry points
-------------------------------------------------------------------------------
- 0 init: [0x200256c]; control: [0x20024c8]
- open: [0x2002518]; close: [0x2002504]
- read: [0x20024f0]; write: [0x20024dc]
- 1 init: [0x20023fc]; control: [0x2002448]
- open: [0x0]; close: [0x0]
- read: [0x0]; write: [0x0]
-SHLL [/] $
-@end smallexample
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_DRIVER
-@findex CONFIGURE_SHELL_COMMAND_DRIVER
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_DRIVER} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_DRIVER} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_driver
-
-The @code{driver} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_driver(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{driver} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_DRIVER_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection dname - displays information about named drivers
-
-@pgindex dname
-
-@subheading SYNOPSYS:
-
-@example
-dname
-@end example
-
-@subheading DESCRIPTION:
-
-This command XXX
-
-WARNING! XXX This command does not appear to work as of 27 February 2008.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-NONE
-
-@subheading EXAMPLES:
-
-The following is an example of how to use @code{dname}:
-
-@example
-EXAMPLE_TBD
-@end example
-
-@subheading CONFIGURATION:
-
-@findex CONFIGURE_SHELL_NO_COMMAND_DNAME
-@findex CONFIGURE_SHELL_COMMAND_DNAME
-
-This command is included in the default shell command set.
-When building a custom command set, define
-@code{CONFIGURE_SHELL_COMMAND_DNAME} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_DNAME} when all
-shell commands have been configured.
-
-@subheading PROGRAMMING INFORMATION:
-
-@findex rtems_shell_rtems_main_dname
-
-The @code{dname} is implemented by a C language function
-which has the following prototype:
-
-@example
-int rtems_shell_rtems_main_dname(
- int argc,
- char **argv
-);
-@end example
-
-The configuration structure for the @code{dname} has the
-following prototype:
-
-@example
-extern rtems_shell_cmd_t rtems_shell_DNAME_Command;
-@end example
-
-@c
-@c
-@c
-@page
-@subsection pthread - display information about POSIX threads
-
-@pgindex pthread
-
-@subheading SYNOPSYS:
-
-@example
-pthread [id [id ...] ]
-@end example
-
-@subheading DESCRIPTION:
-
-When invoked with no arguments, this command prints information on
-the set of POSIX API threads currently active in the system.
-
-If invoked with a set of ids as arguments, then just
-those objects are included in the information printed.
-
-@subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-@subheading NOTES:
-
-This command is only available when the POSIX API is configured.
-
-@subheading EXAMPLES:
-
-The following is an example of how to use the @code{task} on an
-application with four POSIX threads:
-
-@smallexample
-SHLL [/] $ pthread
- ID NAME PRI STATE MODES EVENTS WAITID WAITARG NOTES
-------------------------------------------------------------------------------
-0b010002 Main 133 READY P:T:nA NONE 43010001 0x7b1148
-0b010003 ISR 133 Wcvar P:T:nA NONE 43010003 0x7b1148
-0b01000c 133 READY P:T:nA NONE 33010002 0x7b1148
-0b01000d 133 Wmutex P:T:nA NONE 33010002 0x7b1148
-
-@end smallexample
-
-@subheading CONFIGURATION:
-
-This command is part of the monitor commands which are always
-available in the shell.
-
-@subheading PROGRAMMING INFORMATION:
-
-This command is not directly available for invocation.
-
diff --git a/doc/shell/shell.texi b/doc/shell/shell.texi
deleted file mode 100644
index fd41ec5192..0000000000
--- a/doc/shell/shell.texi
+++ /dev/null
@@ -1,106 +0,0 @@
-\input texinfo @c -*-texinfo-*-
-@c %**start of header
-@setfilename shell.info
-@syncodeindex vr fn
-@synindex ky cp
-@paragraphindent 0
-@c %**end of header
-
-@c
-@c COPYRIGHT (c) 1989-2013.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@c
-@c Master file for the Shell User's Guide
-@c
-
-@c Joel's Questions
-@c
-@c 1. Why does paragraphindent only impact makeinfo?
-@c 2. Why does paragraphindent show up in HTML?
-@c
-
-@include version.texi
-@include common/setup.texi
-@include common/rtems.texi
-
-@ifset use-ascii
-@dircategory RTEMS Shell On-Line Manual
-@direntry
-* RTEMS Shell: (shell). The RTEMS Shell User's Guide.
-@end direntry
-@end ifset
-
-@c @syncodeindex fn cp
-
-@c
-@c Title Page Stuff
-@c
-
-@c
-@c I don't really like having a short title page. --joel
-@c
-@c @shorttitlepage RTEMS Shell User's Guide
-
-@setchapternewpage odd
-@settitle RTEMS Shell User's Guide
-@titlepage
-@finalout
-
-@title RTEMS Shell User's Guide
-@subtitle Edition @value{EDITION}, for RTEMS @value{VERSION}
-@sp 1
-@subtitle @value{UPDATED}
-@author On-Line Applications Research Corporation
-@page
-@include common/cpright.texi
-@end titlepage
-
-@c This prevents a black box from being printed on "overflow" lines.
-@c The alternative is to rework a sentence to avoid this problem.
-
-@contents
-
-@ifnottex
-@node Top, Preface, (dir), (dir)
-@top RTEMS Shell User's Guide
-
-@menu
-* Preface::
-* Configuration and Initialization::
-* General Commands::
-* File and Directory Commands::
-* Memory Commands::
-* RTEMS Specific Commands::
-* Network Commands::
-* Function and Variable Index::
-* Concept Index::
-* Command Index::
-@end menu
-@end ifnottex
-
-@include preface.texi
-@include confinit.texi
-@include general.texi
-@include file.texi
-@include memory.texi
-@include rtems.texi
-@include network.texi
-
-@node Function and Variable Index, Concept Index, Network Commands ping - ping a host or IP address, Top
-@unnumbered Function and Variable Index
-@printindex fn
-
-@c There are currently no Command and Variable Index entries.
-
-@node Concept Index, Command Index, Function and Variable Index, Top
-@unnumbered Concept Index
-@printindex cp
-
-@node Command Index, , Concept Index, Top
-@unnumbered Command Index
-@printindex pg
-
-@bye
-
diff --git a/doc/shell/stamp-vti b/doc/shell/stamp-vti
deleted file mode 100644
index 4b318f7e2e..0000000000
--- a/doc/shell/stamp-vti
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 22 February 2013
-@set UPDATED-MONTH February 2013
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0
diff --git a/doc/shell/version.texi b/doc/shell/version.texi
deleted file mode 100644
index c0e4bbb7b6..0000000000
--- a/doc/shell/version.texi
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 17 July 2015
-@set UPDATED-MONTH July 2015
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0
diff --git a/doc/started/Makefile.am b/doc/started/Makefile.am
deleted file mode 100644
index 0eef621ffd..0000000000
--- a/doc/started/Makefile.am
+++ /dev/null
@@ -1,79 +0,0 @@
-#
-# COPYRIGHT (c) 1988-2010.
-# On-Line Applications Research Corporation (OAR).
-# All rights reserved.
-
-PROJECT = started
-
-include $(top_srcdir)/project.am
-include $(top_srcdir)/main.am
-
-GENERATED_FILES = buildc.texi buildrt.texi intro.texi nt.texi \
- require.texi nextstep.texi sample.texi
-
-COMMON_FILES += $(top_srcdir)/common/cpright.texi
-
-FILES =
-
-info_TEXINFOS = started.texi
-started_TEXINFOS = $(FILES) $(COMMON_FILES) $(GENERATED_FILES)
-
-intro.texi: intro.t
- $(BMENU2) -c -p "Top" \
- -u "Top" \
- -n "Requirements" < $< > $@
-
-require.texi: require.t
- $(BMENU2) -c -p "RTEMS Mailing Lists" \
- -u "Top" \
- -n "Building the GNU Cross Compiler Toolset with RSB" < $< > $@
-
-buildc.texi: buildc.t
- $(BMENU2) -c \
- -p "Distribution Independent Potential GNU/Linux Issues" \
- -u "Top" \
- -n "Building RTEMS" < $< > $@
-
-buildrt.texi: buildrt.t
- $(BMENU2) -c \
- -p "Building the GNU Cross Compiler Toolset with RSB" \
- -u "Top" \
- -n "Building the Sample Applications" < $< > $@
-
-sample.texi: sample.t
- $(BMENU2) -c -p "Using the RTEMS configure Script Directly" \
- -u "Top" \
- -n "Where To Go From Here" < $< > $@
-
-nextstep.texi: nextstep.t
- $(BMENU2) -c -p "More Information on RTEMS Application Makefiles" \
- -u "Top" \
- -n "Using MS-Windows as a Development Host" < $< > $@
-
-nt.texi: nt.t
- $(BMENU2) -c -p "Writing an Application" \
- -u "Top" \
- -n "" < $< > $@
-
-EXTRA_DIST = buildc.t buildrt.t intro.t nextstep.t nt.t require.t \
- sample.t
-
-if USE_HTML
-html_project_DATA += pictures/sfile12c.jpg pictures/bit_c.jpg
-endif
-
-PICTURES = pictures/bit_ada.jpg pictures/bit_ada.vsd pictures/bit_c.jpg \
- pictures/bit_c.vsd pictures/scfile10.jpg pictures/scfile10.vsd \
- pictures/scfile11.jpg pictures/scfile11.vsd pictures/scfile12.jpg \
- pictures/scfile12.vsd pictures/scfile13.jpg pictures/scfile13.vsd \
- pictures/scsfile1.jpg pictures/scsfile1.vsd pictures/scsfile2.jpg \
- pictures/scsfile2.vsd pictures/scsfile3.jpg pictures/scsfile3.vsd \
- pictures/scsfile4.jpg pictures/scsfile4.vsd pictures/scsfile5.jpg \
- pictures/scsfile5.vsd pictures/scsfile6.jpg pictures/scsfile6.vsd \
- pictures/scsfile7.jpg pictures/scsfile7.vsd pictures/scsfile8.jpg \
- pictures/scsfile8.vsd pictures/scsfile9.jpg pictures/scsfile9.vsd \
- pictures/sfile12c.jpg pictures/sfile12c.vsd
-
-EXTRA_DIST += $(PICTURES)
-
-CLEANFILES += started.info started.info-?
diff --git a/doc/started/buildc.t b/doc/started/buildc.t
deleted file mode 100644
index b4544ab9ee..0000000000
--- a/doc/started/buildc.t
+++ /dev/null
@@ -1,16 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2014.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Building the GNU Cross Compiler Toolset with RSB
-
-The RTEMS Projects recommends using the RTEMS Source Builder (RSB)
-for building the toolset from source. RSB has evolved over time from
-various instructions and scripts for building the toolset, and it removes
-much of the frustration associated with building the toolset from source.
-Although prebuilt binaries are much easier to install, they are harder
-for the RTEMS Project to support.
-
-Documentation for RSB is available from @uref{https://docs.rtems.org/rsb/,https://docs.rtems.org/rsb/}.
-
diff --git a/doc/started/buildrt.t b/doc/started/buildrt.t
deleted file mode 100644
index 549e3094df..0000000000
--- a/doc/started/buildrt.t
+++ /dev/null
@@ -1,192 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2014.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Building RTEMS
-
-@b{NOTE}: If you built your toolset with RSB, by default the RSB also
-builds RTEMS while building the compiler toolset. You may already have
-a built and installed RTEMS in this case, and if not you should check
-the RSB documentation at @uref{https://docs.rtems.org/rsb/,https://docs.rtems.org/rsb/}.
-
-@section Obtain the RTEMS Source Code
-
-This section provides pointers to the RTEMS source code and example
-programs. These files should be placed in your @code{archive} directory.
-The set of tarballs which comprise an RTEMS release is placed in a
-directory whose name is the release on the ftp site. The RTEMS ftp site
-is accessible via both the ftp and http protocols at the following URLs:
-
-@itemize @bullet
-@item @uref{http://ftp.rtems.org/pub/rtems,http://ftp.rtems.org/pub/rtems}
-@item @uref{ftp://ftp.rtems.org/pub/rtems,ftp://ftp.rtems.org/pub/rtems}
-@end itemize
-
-Associated with each RTEMS Release is a set of example programs.
-Prior to the 4.10 Release Series, these examples were in a "Class
-Examples" and an "Examples" collection. Beginning with the 4.10 Release
-Series, these examples collections were merged and other examples added.
-This new collection is called "Examples V2". It is contained in the file
-@code{examples-v2-<VERSION>.tar.bz2>} within the RTEMS release directory.
-
-@c
-@c Unarchive the RTEMS Source
-@c
-
-@section Unarchive the RTEMS Source
-
-Use the following command sequence to unpack the RTEMS source into the
-tools directory:
-
-@example
-cd tools
-tar xjf ../archive/rtems-@value{RTEMSAPI}.<VERSION>.tar.bz2
-@end example
-
-This creates the directory rtems-@value{RTEMSAPI}.<VERSION>
-
-@section Obtaining the RTEMS Source from Git
-
-Instead of downloading release tarballs you may choose to check out the current
-RTEMS source from the project's source code repository. For details on
-accessing the RTEMS source repository consult:
-
-@uref{https://devel.rtems.org/wiki/Developer/Git,https://devel.rtems.org/wiki/Developer/Git}.
-
-@section Add <INSTALL_POINT>/bin to Executable PATH
-
-In order to compile RTEMS, you must have the cross compilation toolset
-in your search path. It is important to have the RTEMS toolset first
-in your path to ensure that you are using the intended version of all
-tools. The following command prepends the directory where
-the tools were installed in a previous step. If you are using
-binaries installed to @code{/opt/rtems-@value{RTEMSAPI}}, then the
-<INSTALL_POINT> will be @code{/opt/rtems-@value{RTEMSAPI}}
-
-@example
-export PATH=<INSTALL_POINT>/bin:$@{PATH@}
-@end example
-
-@b{NOTE:} The above command is in Bourne shell (@code{sh}) syntax and should
-work with the Korn (@code{ksh}) and GNU Bourne Again Shell (@code{bash}).
-It will not work with the C Shell (@code{csh}) or derivatives of the
-C Shell.
-
-@section Verifying the Operation of the Cross Toolset
-
-In order to ensure that the cross-compiler is invoking the correct
-subprograms (like @code{as} and @code{ld}), one can test assemble
-a small program. When in verbose mode, @code{gcc} prints out information
-showing where it found the subprograms it invokes. In a temporary
-working directory, place the following function in a file named @code{f.c}:
-
-@example
-int f( int x )
-@{
- return x + 1;
-@}
-@end example
-
-Then assemble the file using a command similar to the following:
-
-@example
-m68k-rtems@value{RTEMSAPI}-gcc -v -S f.c
-@end example
-
-Where @code{m68k} should be changed to match the target architecture
-of your cross compiler. The result of this command will be a sequence
-of output showing where the cross-compiler searched for and found
-its subcomponents. Verify that these paths correspond to your
-<INSTALL_POINT>.
-
-Look at the created file @code{f.s} and verify that it is in fact
-for your target processor.
-
-Then try to compile the file @code{f.c} directly to object code
-using a command like the following:
-
-@example
-m68k-rtems@code{RTEMSAPI}-gcc -v -c f.c
-@end example
-
-If this produces messages that indicate the assembly code is not valid,
-then it is likely that you have fallen victim to one of the most
-common installation errors and the cross-compiler is not able
-to find the cross assembler and defaults to using the native @code{as}.
-This can result in very confusing error messages.
-
-@section Building RTEMS for a Specific Target and BSP
-
-This section describes how to configure and build RTEMS
-so that it is specifically tailored for your BSP (Board Support Package)
-and the CPU model it uses. There is currently only one supported
-method to compile and install RTEMS:
-
-@itemize @bullet
-@item direct invocation of @code{configure} and @code{make}
-@end itemize
-
-Direct invocation of @code{configure} and @code{make} provides more control
-and easier recovery from problems when building.
-
-This section describes how to build RTEMS.
-
-@subsection Using the RTEMS configure Script Directly
-
-Make a build directory under tools and build the RTEMS product in this
-directory. The @code{../rtems-@value{RTEMSAPI}.<VERSION>/configure}
-command has numerous command line arguments. These arguments are
-discussed in detail in documentation that comes with the RTEMS
-distribution. A full list of these arguments can be obtained by running
-@code{../rtems-@value{RTEMSAPI}.<VERSION>/configure --help} If you
-followed the procedure described in the section @ref{Unarchive
-the RTEMS Source} or @ref{Obtaining the RTEMS Source from Git},
-these configuration options can be found in the file
-rtems-@value{RTEMSAPI}.<VERSION>/README.configure.
-
-@b{NOTE}: The GNAT/RTEMS run-time implementation is based on the POSIX
-API and the GNAT/RTEMS run-time cannot be compiled with networking
-disabled. Your application does not have to use networking but it must
-be enabled. Thus the RTEMS configuration for a GNAT/RTEMS environment
-MUST include the @code{--enable-posix --enable-networking} flag.
-
-@b{NOTE}: Building RTEMS requires that a few support programs be compiled
-natively. This means there must be a native toolchain installed on your
-development host. You will need to have a native compiler such as @i{gcc}
-or @i{cc} in your execution path. If you cannot compile, link and execute
-a native hello world program, then you will be unable to build RTEMS.
-
-The following shows the command sequence required to configure,
-compile, and install RTEMS with the POSIX API, FreeBSD TCP/IP,
-and C++ support disabled. RTEMS will be built to target
-the @code{BOARD_SUPPORT_PACKAGE} board.
-
-@example
-mkdir build-rtems
-cd build-rtems
-../rtems-@value{RTEMSAPI}.VERSION/configure \
- --target=<TARGET_CONFIGURATION> \
- --disable-networking \
- --enable-rtemsbsp=<BSP>\
- --prefix=<INSTALL_POINT>
-make all
-make install
-@end example
-
-<TARGET> is of the form <CPU>-rtems@value{RTEMSAPI} and the list of
-currently supported <TARGET> configuration's and <BSP>'s can be found in
-@code{tools/RTEMS-@value{RTEMSAPI}.<VERSION>/README.configure}.
-
-<INSTALL_POINT> is typically the installation point for the tools and
-defaults to @code{/opt/rtems-@value{RTEMSAPI}}.
-
-BSP is a supported BSP for the selected CPU family.
-The list of supported BSPs may be found in the file
-@code{tools/rtems-@value{RTEMSAPI}.<VERSION>/README.configure} in the
-RTEMS source tree. If the BSP parameter is not specified, then all
-supported BSPs for the selected CPU family will be built.
-
-@b{NOTE:} The POSIX API and networking must be enabled to use GNAT/RTEMS.
-
-@b{NOTE:} The @code{make} utility used should be GNU make.
diff --git a/doc/started/intro.t b/doc/started/intro.t
deleted file mode 100644
index d9879e1834..0000000000
--- a/doc/started/intro.t
+++ /dev/null
@@ -1,159 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2010.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Introduction
-
-The purpose of this document is to guide you through the process of
-installing a GNU cross development environment to use with RTEMS.
-
-If you are already familiar with the concepts behind a cross compiler and
-have a background in Unix, these instructions should provide the bare
-essentials for performing a setup of the following items:
-
-@itemize @bullet
-@item GNU Cross Compilation Tools for RTEMS on your build-host system
-@item RTEMS OS for the target
-@item GNU Debugger (GDB)
-@end itemize
-
-The remainder of this chapter provides background information on real-time
-embedded systems and cross development and an overview of other
-resources of interest on the Internet. If you are not familiar with
-real-time embedded systems or the other areas, please read those sections.
-These sections will help familiarize you with the
-types of systems RTEMS is designed to be used in and the cross development
-process used when developing RTEMS applications.
-
-@section Real-Time Embedded Systems
-
-Real-time embedded systems are found in practically every facet of our
-everyday lives. Today's systems range from the common telephone, automobile
-control systems, and kitchen appliances to complex air traffic control
-systems, military weapon systems, and production line control including
-robotics and automation. However, in the current climate of rapidly changing
-technology, it is difficult to reach a consensus on the definition of a
-real-time embedded system. Hardware costs are continuing to rapidly decline
-while at the same time the hardware is increasing in power and functionality.
-As a result, embedded systems that were not considered viable two years ago
-are suddenly a cost effective solution. In this domain, it is not uncommon
-for a single hardware configuration to employ a variety of architectures and
-technologies. Therefore, we shall define an embedded system as any computer
-system that is built into a larger system consisting of multiple technologies
-such as digital and analog electronics, mechanical devices, and sensors.
-
-Even as hardware platforms become more powerful, most embedded systems are
-critically dependent on the real-time software embedded in the systems
-themselves. Regardless of how efficiently the hardware operates, the
-performance of the embedded real-time software determines the success of the
-system. As the complexity of the embedded hardware platform grows, so does
-the size and complexity of the embedded software. Software systems must
-routinely perform activities which were only dreamed of a short time ago.
-These large, complex, real-time embedded applications now commonly contain
-one million lines of code or more.
-
-Real-time embedded systems have a complex set of characteristics that
-distinguish them from other software applications. Real-time embedded
-systems are driven by and must respond to real world events while adhering to
-rigorous requirements imposed by the environment with which they interact.
-The correctness of the system depends not only on the results of
-computations, but also on the time at which the results are produced. The
-most important and complex characteristic of real-time application systems is
-that they must receive and respond to a set of external stimuli within rigid
-and critical time constraints.
-
-A single real-time application can be composed of both soft and hard
-real-time components. A typical example of a hard real-time system is a
-nuclear reactor control system that must not only detect failures, but must
-also respond quickly enough to prevent a meltdown. This application also has
-soft real-time requirements because it may involve a man-machine interface.
-Providing an interactive input to the control system is not as critical as
-setting off an alarm to indicate a failure condition. However, the
-interactive system component must respond within an acceptable time limit to
-allow the operator to interact efficiently with the control system.
-
-@section Cross Development
-
-Today almost all real-time embedded software systems are developed in a
-@b{cross development} environment using cross development tools. In the cross
-development environment, software development activities are typically
-performed on one computer system, the @b{build-host} system, while the result of the
-development effort (produced by the cross tools) is a software system that
-executes on the @b{target} platform. The requirements for the target platform are
-usually incompatible and quite often in direct conflict with the requirements
-for the build-host. Moreover, the target hardware is often custom designed for a
-particular project. This means that the cross development toolset must allow
-the developer to customize the tools to address target specific run-time
-issues. The toolset must have provisions for board dependent initialization
-code, device drivers, and error handling code.
-
-The build-host computer is optimized to support the code development cycle with
-support for code editors, compilers, and linkers requiring large disk drives,
-user development windows, and multiple developer connections. Thus the build-host
-computer is typically a traditional UNIX workstation such as those available
-from SUN or Silicon Graphics, or a PC running either a version of MS-Windows
-or UNIX. The build-host system may also be required to execute
-office productivity applications to allow the software developer
-to write documentation, make presentations, or track the project's
-progress using a project management tool. This necessitates that the
-build-host computer be general purpose with resources such as a
-thirty-two or sixty-four bit processor, large amounts of
-RAM, a monitor, mouse, keyboard, hard and floppy disk drives, CD-ROM drive,
-and a graphics card. It is likely that the system will be multimedia capable
-and have some networking capability.
-
-Conversely, the target platform generally has limited traditional computer
-resources. The hardware is designed for the particular functionality and
-requirements of the embedded system and optimized to perform those tasks
-effectively. Instead of hard drives and keyboards, it is composed of
-sensors, relays, and stepper motors. The per-unit cost of the target platform
-is typically a critical concern. No hardware component is included without
-being cost justified. As a result, the processor of the target system is
-often from a different processor family than that of the build-host system and
-usually has lower performance. In addition to the processor families
-designed only for use in embedded systems, there are versions of nearly every
-general-purpose processor specifically tailored for real-time embedded
-systems. For example, many of the processors targeting the embedded market
-do not include hardware floating point units, but do include peripherals such
-as timers, serial controllers, or network interfaces.
-
-@section Resources on the Internet
-
-This section describes various resources on the Internet which are of
-use to RTEMS users.
-
-@c
-@c Online Tool Documentation
-@c
-
-@subsection Online Tool Documentation
-
-Each of the tools in the GNU development suite comes with documentation.
-It is in the reader's and tool maintainers' interest that one read the
-documentation before posting a problem to a mailing list or news group.
-The RTEMS Project provides formatted documentation for the primary
-tools in the cross development toolset including BINUTILS, GCC,
-NEWLIB, and GDB with the pre-built versions of those tools.
-
-Much of the documentation is available at other sites on the Internet,
-for example the GNU manuals are hosted by the Free Software Foundation
-at @uref{http://www.gnu.org/manual/manual.html, http://www.gnu.org/manual/manual.html}.
-
-@subsection RTEMS Mailing Lists
-
-@uref{mailto:@value{RTEMSUSERS},@value{RTEMSUSERS}}
-
-The users mailing list is for any and all questions about RTEMS, especially
-those focusing on how to use RTEMS.
-If you would like to browse the thousands of messages in the fifteen
-year archive of the mailing list or subscribe to it, please visit
-@uref{https://lists.rtems.org/mailman/listinfo/users,https://lists.rtems.org/mailman/listinfo/users} for
-more information,
-
-@uref{mailto:@value{RTEMSDEVEL},@value{RTEMSDEVEL}}
-
-The devel mailing list is the place to track ongoing RTEMS development
-and to discuss changes to RTEMS. This list is also where patches are
-submitted.
-
diff --git a/doc/started/nextstep.t b/doc/started/nextstep.t
deleted file mode 100644
index 82074cbd2b..0000000000
--- a/doc/started/nextstep.t
+++ /dev/null
@@ -1,131 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2010.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Where To Go From Here
-
-At this point, you should have successfully installed a GNU Cross
-Compilation Tools for RTEMS on your host system as well as the RTEMS OS
-for the target host. You should have successfully linked the "hello
-world" program. You may even have downloaded the executable to that
-target and run it. What do you do next?
-
-The answer is that it depends. You may be interested in writing an
-application that uses one of the multiple APIs supported by RTEMS.
-You may need to investigate the network or filesystem support in RTEMS.
-The common thread is that you are largely finished with this manual and
-ready to move on to others.
-
-Whether or not you decide to dive in now and write application code or
-read some documentation first, this chapter is for you. The first section
-provides a quick roadmap of some of the RTEMS documentation. The next
-section provides a brief overview of the RTEMS application structure.
-
-@section Documentation Overview
-
-When writing RTEMS applications, you should find the following manuals
-useful because they define the calling interface to many of the services
-provided by RTEMS:
-
-@itemize @bullet
-@item @b{RTEMS Applications C User's Guide} describes the
-Classic RTEMS API based on the RTEID specification.
-
-@item @b{RTEMS POSIX API User's Guide} describes the RTEMS POSIX API
-that is based on the POSIX 1003.1b API. If there is any place where
-this manual is thin or unclear, please refer to the OpenGroup Single
-UNIX Specification. RETEMS tracks that specification for future POSIX
-revisions.
-
-@item @b{RTEMS Network Supplement} provides information on the network
-services provided by RTEMS. RTEMS provides a BSD sockets programming
-interface so any network programming book should be helpful.
-
-@end itemize
-
-In addition, the following manuals from the GNU Cross Compilation Toolset
-include information on run-time services available.
-
-@itemize @bullet
-@item @b{C Support Library} describes the Standard C Library
-functionality provided by Newlib's libc.
-
-@item @b{C Math Library} describes the Standard C Math Library
-functionality provided by Newlib's libm.
-
-@end itemize
-
-Finally, the RTEMS FAQ, Wiki, and mailing list archives are available
-at @uref{http://www.rtems.org, http://www.rtems.org}.
-
-There is a wealth of documentation available for RTEMS and the GNU tools
-supporting it. If you run into something that is not clear or missing,
-bring it to our attention.
-
-Also, some of the RTEMS documentation is still under construction.
-If you would like to contribute to this effort, please contact the
-RTEMS Team at @uref{mailto:@value{RTEMSUSERS}, @value{RTEMSUSERS}}.
-If you are interested in sponsoring the development of a new feature,
-BSP, device driver, port of an existing library, etc., please contact
-@uref{mailto:sales@@oarcorp.com, sales@@oarcorp.com}.
-
-@section Writing an Application
-
-From an application author's perspective, the structure of
-an RTEMS application is very familiar. In POSIX language,
-RTEMS provides a single process, multi-threaded run-time
-environment. However there are two important things that are
-different from a standard UNIX hosted program.
-
-First, the application developer must provide configuration information
-for RTEMS. This configuration information includes limits on the maximum
-number of various OS resources available and networking configuration
-among other things. See the @b{Configuring a System} in the @b{RTEMS
-Applications C User's Guide} for more details.
-
-Second, RTEMS applications may or may not start at @code{main()}.
-Applications begin execution at one or more user configurable application
-initialization tasks or threads. It is possible to configure an
-application to start with a single thread that whose entry point is
-@code{main()}.
-
-Each API supported by RTEMS (Internal, Classic, and POSIX) allows
-the user to configure a set of one or more tasks that are created and
-started automatically during RTEMS initialization. The RTEMS Automatic
-Configuration Generation (@code{confdefs.h}) scheme can be used to easily
-generate the configuration information for an application that starts
-with a single initialization task. By convention, unless overridden,
-the default name of the initialization task varies based up API.
-
-@itemize @bullet
-@item @code{Init} - single Classic API Initialization Task
-
-@item @code{POSIX_Init} - single POSIX API Initialization Thread
-@end itemize
-
-Regardless of the API used, when the initialization task executes,
-all non-networking device drivers are normally initialized,
-processor interrupts are enabled, and any C++ global constructors
-have been run. The initialization task then goes about its
-business of performing application specific initialization which
-will include initializing the networking subsystem if it is to be
-used. The application initialization may also involve creating
-tasks and other system resources such as semaphores or message queues
-and allocating memory. In the RTEMS examples and tests, the
-file @code{init.c} usually contains the initialization task. Although
-not required, in most of the examples, the initialization task
-completes by deleting itself.
-
-As you begin to write RTEMS application code, you may be confused by the
-range of alternatives. Supporting multiple tasking APIs can make the
-choices confusing. Many application groups writing new code choose one
-of the APIs as their primary API and only use services from the others if
-nothing comparable is in their preferred one. However, the support for
-multiple APIs is a powerful feature when integrating code from multiple
-sources. You can write new code using POSIX services and still use
-services written in terms of the other APIs. Moreover, by adding support
-for yet another API, one could provide the infrastructure required to
-migrate from a legacy RTOS with a non-standard API to an API like POSIX.
-
-
diff --git a/doc/started/nt.t b/doc/started/nt.t
deleted file mode 100644
index cb34fd9d66..0000000000
--- a/doc/started/nt.t
+++ /dev/null
@@ -1,145 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2010.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@appendix Using MS-Windows as a Development Host
-
-This chapter discusses the installation of the GNU tool chain
-on a computer running the Microsoft Windows operating system.
-
-This chapter was originally written by
-@uref{mailto:g_montel@@yahoo.com, Geoffroy Montel <g_montel@@yahoo.com>}
-with input from
-@uref{mailto:<D.J@@fiddes.surfaid.org>, David Fiddes <D.J@@fiddes.surfaid.org>}.
-It was based upon his successful but unnecessarily painful efforts with
-Cygwin beta versions. Cygwin and this chapter have been updated multiple
-times since those early days although their pioneering efforts and input
-is still greatly appreciated.
-
-@section Microsoft Windows Version Requirements
-
-RTEMS users report fewer problems when using Microsoft Windows XP or newer.
-
-@section Cygwin
-
-For RTEMS development, the recommended approach is to use Cygwin. Cygwin
-is available from @uref{http://www.cygwin.com, http://www.cygwin.com} .
-The primary issues reported by users of Cygwin is that it is slower
-on the same hardware than a native GNU/Linux installation and strange
-issues over carriage return/line feed inconsistencies between UNIX and
-Windows environments. However, there are a handful of other issues that
-may turn up when using Cygwin as an RTEMS development environment.
-
-@itemize @bullet
-
-@item There is no @code{cc} program by default. The GNU configure
-scripts used by RTEMS require this to be present to work properly.
-The solution is to link @code{gcc.exe} to @code{cc.exe} as follows:
-
-@example
-ln -s /bin/gcc.exe /bin/cc.exe
-@end example
-
-@item Make sure @code{/bin/sh.exe} is GNU Bash. Some Cygwin
-versions provide a light Bourne shell which is insufficient to build
-RTEMS. To see which shell is installed as @code{/bin/sh.exe}, execute
-the command @code{/bin/sh --version}. If it looks similar to
-the following, then it is GNU Bash and you are OK:
-
-@example
-GNU bash, version 2.04.5(12)-release (i686-pc-cygwin)
-Copyright 1999 Free Software Foundation, Inc.
-@end example
-
-If you get an error or it claims to be any other shell, you need
-to copy it to a fake name and copy
-@code{/bin/bash.exe} to @code{/bin/sh.exe}:
-
-@example
-cd /bin
-mv sh.exe old_sh.exe
-cp bash.exe sh.exe
-@end example
-
-The Bourne shell has to be present in @code{/bin} directory to run
-shell scripts properly.
-
-@item Make sure you unarchive and build in a binary mounted
-filesystem (e.g. mounted with the @code{-b} option). Otherwise,
-many confusing errors will result.
-
-@item A user has reported that they needed to set @code{CYGWIN=ntsec}
-for chmod to work correctly, but had to set @code{CYGWIN=nontsec}
-for compile to work properly (otherwise there were complaints about
-permissions on a temporary file).
-
-@item If you want to build the tools from source, you have the
-same options as UNIX users.
-
-@item You may have to uncompress archives during this process. You must
-@b{NOT} use @code{WinZip} or @code{PKZip}. Instead the un-archiving
-process uses the GNU @code{zip} and @code{tar} programs as shown below:
-
-@example
-tar -xzvf archive.tgz
-@end example
-
-@code{tar} is provided with Cygwin.
-
-@end itemize
-
-@section MingGW
-
-You might consider choosing MinGW since it provides better perfomance. There is a wiki entry on a MinGW RTEMS toolset installer available at @uref{http://www.rtems.org/wiki/index.php/MinGW_Tools_for_Windows,http://www.rtems.org/wiki/index.php/MinGW_Tools_for_Windows}. Also, there are prebuilt tools for different architectures available for download at @uref{http://www.rtems.org/ftp/pub/rtems/mingw32,http://www.rtems.org/ftp/pub/rtems/mingw32}.
-
-@section Text Editor
-
-You absolutely have to use a text editor which can save files with Unix format.
-So do @b{NOT} use Notepad or Wordpad! Basically, any more or less advanced
-text editor is usually able to do that. There is a number of editors freely
-available that can be used.
-
-@itemize @bullet
-@item @b{Notepad++} has an interface familiar to Windows users and can be downloaded from @uref{http://notepad-plus-plus.org/,http://notepad-plus-plus.org/}.
-
-@item @b{VIM} (@b{Vi IMproved}) is available from
-@uref{http://www.vim.org/,http://www.vim.org/}. This editor has the very
-handy ability to easily read and write files in either DOS or UNIX style.
-
-@item @b{GNU Emacs} is available for many platforms
-including MS-Windows. The official homepage is
-@uref{http://www.gnu.org/software/emacs/emacs.html,
-http://www.gnu.org/software/emacs/emacs.html}.
-The GNU Emacs on Windows NT and Windows 95/98 FAQ is at
-@uref{http://www.gnu.org/software/emacs/windows/ntemacs.html,
-http://www.gnu.org/software/emacs/windows/ntemacs.html}.
-
-@end itemize
-
-If you do accidentally end up with files having MS-DOS style line
-termination, then you may have to convert them to Unix format for some
-Cygwin programs to operate on them properly. The program @code{dos2unix}
-can be used to put them
-back into Unix format as shown below:
-
-@example
-$ dos2unix XYZ
-Dos2Unix: Cleaning file XYZ ...
-@end example
-
-@section System Requirements
-
-Although the finished cross-compiler is fairly easy on resources, building
-it can take a significant amount of processing power and disk space.
-Luckily, desktop computers have progressed very far since this guide
-was originally written so it is unlikely you will have any problems.
-Just do not use an old cast-off machine with < 1 GB RAM and a 1 Ghz CPU.
-Unless, of course, you enjoy waiting for things to complete.
-
-The more disk space, the better. You need more if you are building the
-GNU tools and the amount of disk space for binaries is obviously directly
-dependent upon the number of CPUs you have cross toolsets installed for.
-In addition to the disk space requirements documented earlier for tool
-building, you will also have to have enough space to install the Cygwin
-environment.
diff --git a/doc/started/pictures/bit_ada.jpg b/doc/started/pictures/bit_ada.jpg
deleted file mode 100644
index 774b103711..0000000000
--- a/doc/started/pictures/bit_ada.jpg
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/bit_ada.vsd b/doc/started/pictures/bit_ada.vsd
deleted file mode 100644
index 51e8e1fe53..0000000000
--- a/doc/started/pictures/bit_ada.vsd
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/bit_c.jpg b/doc/started/pictures/bit_c.jpg
deleted file mode 100644
index 158beb4bd1..0000000000
--- a/doc/started/pictures/bit_c.jpg
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/bit_c.vsd b/doc/started/pictures/bit_c.vsd
deleted file mode 100644
index a6db26bd15..0000000000
--- a/doc/started/pictures/bit_c.vsd
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/scfile10.jpg b/doc/started/pictures/scfile10.jpg
deleted file mode 100644
index 22a83877ce..0000000000
--- a/doc/started/pictures/scfile10.jpg
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/scfile10.vsd b/doc/started/pictures/scfile10.vsd
deleted file mode 100644
index 07efb1f18b..0000000000
--- a/doc/started/pictures/scfile10.vsd
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/scfile11.jpg b/doc/started/pictures/scfile11.jpg
deleted file mode 100644
index f70986ef55..0000000000
--- a/doc/started/pictures/scfile11.jpg
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/scfile11.vsd b/doc/started/pictures/scfile11.vsd
deleted file mode 100644
index 25871be19a..0000000000
--- a/doc/started/pictures/scfile11.vsd
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/scfile12.jpg b/doc/started/pictures/scfile12.jpg
deleted file mode 100644
index 22a83877ce..0000000000
--- a/doc/started/pictures/scfile12.jpg
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/scfile12.vsd b/doc/started/pictures/scfile12.vsd
deleted file mode 100644
index 750e7cdf56..0000000000
--- a/doc/started/pictures/scfile12.vsd
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/scfile13.jpg b/doc/started/pictures/scfile13.jpg
deleted file mode 100644
index 7ea418b7a7..0000000000
--- a/doc/started/pictures/scfile13.jpg
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/scfile13.vsd b/doc/started/pictures/scfile13.vsd
deleted file mode 100644
index 581eff901c..0000000000
--- a/doc/started/pictures/scfile13.vsd
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/scsfile1.jpg b/doc/started/pictures/scsfile1.jpg
deleted file mode 100644
index d1d497e955..0000000000
--- a/doc/started/pictures/scsfile1.jpg
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/scsfile1.vsd b/doc/started/pictures/scsfile1.vsd
deleted file mode 100644
index a7314848fc..0000000000
--- a/doc/started/pictures/scsfile1.vsd
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/scsfile2.jpg b/doc/started/pictures/scsfile2.jpg
deleted file mode 100644
index afbe1db125..0000000000
--- a/doc/started/pictures/scsfile2.jpg
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/scsfile2.vsd b/doc/started/pictures/scsfile2.vsd
deleted file mode 100644
index d2bb29a6e8..0000000000
--- a/doc/started/pictures/scsfile2.vsd
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/scsfile3.jpg b/doc/started/pictures/scsfile3.jpg
deleted file mode 100644
index b0e135994d..0000000000
--- a/doc/started/pictures/scsfile3.jpg
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/scsfile3.vsd b/doc/started/pictures/scsfile3.vsd
deleted file mode 100644
index da98158c85..0000000000
--- a/doc/started/pictures/scsfile3.vsd
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/scsfile4.jpg b/doc/started/pictures/scsfile4.jpg
deleted file mode 100644
index 1c01cbb460..0000000000
--- a/doc/started/pictures/scsfile4.jpg
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/scsfile4.vsd b/doc/started/pictures/scsfile4.vsd
deleted file mode 100644
index 50823fa67e..0000000000
--- a/doc/started/pictures/scsfile4.vsd
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/scsfile5.jpg b/doc/started/pictures/scsfile5.jpg
deleted file mode 100644
index 8fe8df173c..0000000000
--- a/doc/started/pictures/scsfile5.jpg
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/scsfile5.vsd b/doc/started/pictures/scsfile5.vsd
deleted file mode 100644
index 614736593a..0000000000
--- a/doc/started/pictures/scsfile5.vsd
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/scsfile6.jpg b/doc/started/pictures/scsfile6.jpg
deleted file mode 100644
index 58a3489242..0000000000
--- a/doc/started/pictures/scsfile6.jpg
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/scsfile6.vsd b/doc/started/pictures/scsfile6.vsd
deleted file mode 100644
index a970df509a..0000000000
--- a/doc/started/pictures/scsfile6.vsd
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/scsfile7.jpg b/doc/started/pictures/scsfile7.jpg
deleted file mode 100644
index 68cff033b8..0000000000
--- a/doc/started/pictures/scsfile7.jpg
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/scsfile7.vsd b/doc/started/pictures/scsfile7.vsd
deleted file mode 100644
index 0af5ae9f4f..0000000000
--- a/doc/started/pictures/scsfile7.vsd
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/scsfile8.jpg b/doc/started/pictures/scsfile8.jpg
deleted file mode 100644
index a2ef5954ca..0000000000
--- a/doc/started/pictures/scsfile8.jpg
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/scsfile8.vsd b/doc/started/pictures/scsfile8.vsd
deleted file mode 100644
index 0ed6dedf6d..0000000000
--- a/doc/started/pictures/scsfile8.vsd
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/scsfile9.jpg b/doc/started/pictures/scsfile9.jpg
deleted file mode 100644
index 04f623e62d..0000000000
--- a/doc/started/pictures/scsfile9.jpg
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/scsfile9.vsd b/doc/started/pictures/scsfile9.vsd
deleted file mode 100644
index ca3222b4cf..0000000000
--- a/doc/started/pictures/scsfile9.vsd
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/sfile12c.jpg b/doc/started/pictures/sfile12c.jpg
deleted file mode 100644
index aba5bf21a2..0000000000
--- a/doc/started/pictures/sfile12c.jpg
+++ /dev/null
Binary files differ
diff --git a/doc/started/pictures/sfile12c.vsd b/doc/started/pictures/sfile12c.vsd
deleted file mode 100644
index fc0616cf1e..0000000000
--- a/doc/started/pictures/sfile12c.vsd
+++ /dev/null
Binary files differ
diff --git a/doc/started/require.t b/doc/started/require.t
deleted file mode 100644
index 0e0f7d1d34..0000000000
--- a/doc/started/require.t
+++ /dev/null
@@ -1,154 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2010.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Requirements
-
-This chapter describes the build-host system requirements and initial steps
-in installing the GNU Cross Compiler Tools and RTEMS on a build-host.
-
-@section Disk Space
-
-A fairly large amount of disk space is required to perform the build of the
-GNU C/C++ Cross Compiler Tools for RTEMS. The following table may help in
-assessing the amount of disk space required for your installation:
-
-@example
-+------------------------------------+--------------------------+
-| Component | Disk Space Required |
-+------------------------------------+--------------------------+
-| archive directory | 120 Mbytes |
-| tools src unarchived | 1400 Mbytes |
-| each individual build directory | up to 2500 Mbytes |
-| each installation directory | 900 Mbytes |
-+------------------------------------+--------------------------+
-@end example
-
-It is important to understand that the above requirements only address the
-GNU C/C++ Cross Compiler Tools themselves. Adding additional languages
-such as Ada or Go can increase the size of the build and installation
-directories. Also, the unarchived source and build directories can be
-removed after the tools are installed.
-
-After the tools themselves are installed, RTEMS must be built
-and installed for each Board Support Package that you wish
-to use. Thus the precise amount of disk space required
-for each installation directory depends highly on the number
-of RTEMS BSPs which are to be installed. If a single BSP is
-installed, then the additional size of each install directory
-will tend to be in the 40-60 Mbyte range.
-
-There are a number of factors which must be taken into
-account in order to estimate the amount of disk space required
-to build RTEMS itself. Attempting to build multiple BSPs in
-a single step increases the disk space requirements. On some
-target architectures, this can lead to disk usage during the build
-of over one gigabyte.
-
-Similarly enabling optional features increases the build and install
-space requirements. In particular, enabling and building
-the RTEMS tests results in a significant increase in build
-space requirements but since the tests are not installed has,
-enabling them has no impact on installation requirements.
-
-@section General Host Software Requirements
-
-The instructions in this manual should work on any computer running
-a POSIX environment including GNU/Linux and Cygwin. Mingw users may
-encounter additional issues due to the limited POSIX compatibility.
-Some native GNU tools are used by this procedure including:
-
-@itemize @bullet
-@item GCC
-@item GNU make
-@item GNU makeinfo
-@end itemize
-
-In addition, some native utilities may be deficient for building the
-GNU tools. On hosts which have m4 but it is not GNU m4, it is not
-uncommon to have to install GNU m4. Similarly, some shells are not
-capable of fully supporting the RTEMS configure scripts.
-
-@subsection GCC
-
-Although RTEMS itself is intended to execute on an embedded target,
-there is source code for some native programs included with the RTEMS
-distribution. Some of these programs are used to assist in the building
-of RTEMS itself, while others are BSP specific tools. Regardless,
-no attempt has been made to compile these programs with a non-GNU
-compiler.
-
-@subsection GNU Make
-
-Both NEWLIB and RTEMS use GNU make specific features and can only be built
-using GNU make. Many systems include a make utility that is not GNU make.
-The safest way to meet this requirement is to ensure that when you invoke
-the command @code{make}, it is GNU make. This can be verified by
-attempting to print the GNU make version information:
-
-@example
-make --version
-@end example
-
-If you have GNU make and another make on your system, it is common to put
-the directory containing GNU make before the directory containing other
-implementations of make.
-
-@subsection GNU makeinfo Version Requirements
-
-In order to build gcc 2.9.x or newer versions, the GNU @code{makeinfo} program
-installed on your system must be at least version 1.68. The appropriate
-version of @code{makeinfo} is distributed with @code{gcc}.
-
-The following demonstrates how to determine the version of @code{makeinfo}
-on your machine:
-
-@example
-makeinfo --version
-@end example
-
-@c
-@c Host Specific Notes
-@c
-
-@section Host Specific Notes
-
-@subsection Solaris 2.x
-
-The following problems have been reported by Solaris 2.x users:
-
-@itemize @bullet
-
-@item The build scripts are written in "shell". The program @code{/bin/sh}
-on Solaris 2.x is not robust enough to execute these scripts. If you
-are on a Solaris 2.x host, then use the @code{/bin/ksh} or
-@code{/bin/bash} shell instead.
-
-@item The native @code{patch} program is broken. Install the GNU version.
-
-@item The native @code{m4} program is deficient. Install the GNU version.
-
-@end itemize
-
-@subsection Distribution Independent Potential GNU/Linux Issues
-
-The following problems have been reported by users of various GNU/Linux
-distributions:
-
-@itemize @bullet
-
-@item Certain versions of GNU fileutils include a version of
-@code{install} which does not work properly. Please perform
-the following test to see if you need to upgrade:
-
-@example
-install -c -d /tmp/foo/bar
-@end example
-
-If this does not create the specified directories your install
-program will not install RTEMS properly. You will need to upgrade
-to at least GNU fileutils version 3.16 to resolve this problem.
-
-@end itemize
-
diff --git a/doc/started/sample.t b/doc/started/sample.t
deleted file mode 100644
index 108c9626f7..0000000000
--- a/doc/started/sample.t
+++ /dev/null
@@ -1,248 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2010.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Building the Sample Applications
-
-The RTEMS distribution includes a number of sample C, C++,
-Ada, and networking applications. This chapter will provide
-an overview of those sample applications.
-
-@c
-@c Set the Environment Variable RTEMS_MAKEFILE_PATH
-@c
-@section Set the Environment Variable RTEMS_MAKEFILE_PATH
-
-The sample application sets use the RTEMS Application Makefiles.
-This requires that the environment variable
-@code{RTEMS_MAKEFILE_PATH} point to the appropriate directory containing
-the installed RTEMS image built to target your particular CPU and
-board support package combination.
-
-@example
-export RTEMS_MAKEFILE_PATH=<INSTALLATION_POINT>/<CPU>-rtems/<BOARD_SUPPORT_PACKAGE>
-@end example
-
-Where <INSTALLATION_POINT> and <BOARD_SUPPORT_PACKAGE> are those used when
-configuring and installing RTEMS.
-
-@b{NOTE}: In release 4.0, BSPs were installed at
-@code{<INSTALLATION_POINT>/rtems/<BOARD_SUPPORT_PACKAGE>}. This
-was changed to be more in compliance with GNU standards.
-
-@b{NOTE}: GNU make is the preferred @code{make} utility. Other @code{make}
-implementations may work but all testing is done with GNU make.
-
-If no errors are detected during the sample application build, it is
-reasonable to assume that the build of the GNU Cross Compiler Tools
-for RTEMS and RTEMS itself for the selected host and target
-combination was done properly.
-
-@c
-@c Executing the Sample Applications
-@c
-@section Executing the Sample Applications
-
-How each sample application executable is downloaded
-to your target board and executed is very dependent
-on the board you are using. The following is a list of
-commonly used BSPs classified by their RTEMS CPU family and pointers
-to instructions on how to use them. [NOTE: All file names should be
-prepended with @code{rtems-@value{RTEMSAPI}.<VERSION>/c/src/lib/libbsp}.]
-
-@need 1000
-@table @b
-
-@item arm/edp7312
-The arm/edp7312 BSP is for the ARM7-based Cogent EDP7312 board.
-
-@item c4x/c4xsim
-The c4x/c4xsim BSP is designed to execute on any member of
-the Texas Instruments C3x/C4x DSP family using only on-CPU
-peripherals for the console and timers.
-
-@item i386/pc386
-See @code{i386/pc386/HOWTO}
-
-@item i386/pc486
-The i386/pc386 BSP specially compiled for an i486-class CPU.
-
-@item i386/pc586
-The i386/pc386 BSP specially compiled for a Pentium-class CPU.
-
-@item i386/pc686
-The i386/pc386 BSP specially compiled for a Pentium II.
-
-@item i386/pck6
-The i386/pc386 BSP specially compiled for an AMD K6.
-
-@item m68k/gen68360
-This BSP is for a MC68360 CPU. See @code{m68k/gen68360/README} for details.
-
-@item m68k/mvme162
-See @code{m68k/mvme162/README}.
-
-@item m68k/mvme167
-See @code{m68k/mvme167/README}.
-
-@item mips/jmr3904
-This is a BSP for the Toshiba TX3904 evaluation board
-simulator included with @code{mipstx39-rtems-gdb}. The
-BSP is located in @code{mips/jmr3904}.
-The TX3904 is a MIPS R3000 class CPU with serial ports and timers
-integrated with the processor. This BSP can be used with
-either real hardware or with the simulator included with
-@code{mipstx39-rtems-gdb}. An application can be run on the simulator
-by executing the following commands upon entering @code{mipstx39-rtems-gdb}:
-
-@example
-target sim --board=jmr3904
-load
-run
-@end example
-
-@item powerpc/mcp750
-See @code{powerpc/motorola_shared/README}.
-
-@item powerpc/mvme230x
-See @code{powerpc/motorola_shared/README.MVME2300}.
-
-@item powerpc/psim
-This is a BSP for the PowerPC simulator included with @code{powerpc-rtems-gdb}.
-The simulator is complicated to initialize by hand. The user is referred
-to the script @code{powerpc/psim/tools/psim}.
-
-@item sparc/erc32
-The ERC32 is a radiation hardened SPARC V7. This BSP can be used with either
-real ERC32 hardware or with the simulator included with @code{sparc-rtems-gdb}
-(for this, you should configure RTEMS to use @code{sis} BSP). An application
-can be run on the simulator by executing the following commands upon entering
-@code{sparc-rtems-gdb}:
-
-@example
-target sim
-load
-run
-@end example
-
-In case that you don't need a debugger, an application can be run by
-@code{spart-rtems-run}.
-
-
-@end table
-
-RTEMS has many more BSPs and new BSPs for commercial boards and CPUs
-with on-CPU peripherals are generally welcomed.
-
-@c
-@c C/C++ Sample Applications
-@c
-@section C/C++ Sample Applications
-
-The C/C++ sample application set includes a number of simple applications.
-Some demonstrate some basic functionality in RTEMS such as writing
-a file, closing it, and reading it back while others can serve as
-starting points for RTEMS applications or libraries. Start by
-unarchiving them so you can peruse them. Use a command similar to
-the following to unarchive the sample applications:
-
-@example
-cd tools
-tar xjf ../archive/examples-v2-@value{RTEMSAPI}.<VERSION>.tgz
-@end example
-
-Each tests is found in a separate subdirectory and built using the same
-command sequence. The @code{hello/hello_world_c} sample will be used
-as an example.
-
-@c
-@c Build the C Hello World Application
-@c
-@subheading Build the C Hello World Application
-
-Use the following command to start the build of the sample hello
-world application:
-
-@example
-cd hello_world_c
-make
-@end example
-
-
-If the sample application has successfully been built, then the application
-executable is placed in the following directory:
-
-@example
-hello_world_c/o-optimize/<filename>.ralf
-@end example
-
-The other sample applications are built using a similar procedure.
-
-@c
-@c Ada Sample Applications
-@c
-@section Ada Sample Applications
-
-The Ada sample application set primarily includes a a simple Hello
-World Ada program which can be used as a starting point for GNAT/RTEMS
-applications. Use the following command to unarchive the Ada sample
-applications:
-
-@example
-cd tools
-tar xjf ../archive/ada-examples-@value{RTEMSAPI}.<VERSION>.tgz
-@end example
-
-@subheading Create a BSP Specific Makefile
-
-Currently, the procedure for building and linking an Ada application
-is a bit more difficult than a C or C++ application. This is certainly
-an opportunity for a volunteer project.
-
-If your BSP requires special arguments when linking, you may have to augment the file @code{ada-examples-@value{RTEMSAPI}.<VERSION>/Makefile.shared}. Most RTEMS BSPs do not require special linking arguments so this should not be frequently needed.
-
-Use the <INSTALLATION_POINT> and <BOARD_SUPPORT_PACKAGE> specified when
-configuring and installing RTEMS.
-
-@section Build the Sample Application
-
-Use the following command to start the build of the sample application:
-
-@example
-cd tools/ada-examples-@value{RTEMSAPI}.<VERSION>/ada-examples/hello_world_ada
-@end example
-
-If no errors are detected during the sample application build, it is
-reasonable to assume that the build of the GNAT/RTEMS Cross Compiler Tools
-for RTEMS and RTEMS itself for the selected host and target combination
-was done properly.
-
-@section Application Executable
-
-If the sample application has successfully been build, then the application
-executable is placed in the following directory:
-
-@example
-tools/@code{ada-examples-@value{RTEMSAPI}.<VERSION>}/hello_world_ada/o-optimize/<filename>.exe
-@end example
-
-How this executable is downloaded to the target board is very dependent
-on the BOARD_SUPPORT_PACKAGE selected.
-
-@c
-@c More Information on RTEMS Application Makefiles
-@c
-@section More Information on RTEMS Application Makefiles
-
-These sample applications are examples of simple RTEMS applications
-that use the RTEMS Application Makefile system. This Makefile system
-simplifies building RTEMS applications by providing Makefile templates and
-capturing the configuration information used to build RTEMS specific to
-your BSP. Building an RTEMS application for different BSPs is as simple
-as switching the setting of @code{RTEMS_MAKEFILE_PATH}. This Makefile
-system is described in the file @code{make/README}.
-
-It is very likely in the future that the RTEMS examples built using an
-installed RTEMS will be converted to autoconf.
-
diff --git a/doc/started/stamp-vti b/doc/started/stamp-vti
deleted file mode 100644
index 5634951ec8..0000000000
--- a/doc/started/stamp-vti
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 24 February 2013
-@set UPDATED-MONTH February 2013
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0
diff --git a/doc/started/started.texi b/doc/started/started.texi
deleted file mode 100644
index 4d453e672c..0000000000
--- a/doc/started/started.texi
+++ /dev/null
@@ -1,99 +0,0 @@
-\input texinfo @c -*-texinfo-*-
-@c %**start of header
-@setfilename started.info
-@setcontentsaftertitlepage
-@syncodeindex vr fn
-@synindex ky cp
-@c @paragraphindent 0
-@c %**end of header
-
-@c
-@c COPYRIGHT (c) 1989-2013.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@c
-@c Master file for the Getting Started (C) Guide
-@c
-
-@include version.texi
-@include common/setup.texi
-@include common/rtems.texi
-
-@ifset use-ascii
-@dircategory RTEMS On-Line Manual
-@direntry
-* Getting Started with RTEMS: (started).
-@end direntry
-@end ifset
-
-@c
-@c Title Page Stuff
-@c
-
-@c
-@c I don't really like having a short title page. --joel
-@c
-@c @shorttitlepage Getting Started with RTEMS
-
-@setchapternewpage odd
-@settitle Getting Started with RTEMS
-@titlepage
-@finalout
-
-@title Getting Started with RTEMS
-@subtitle Edition @value{EDITION}, for @value{VERSION}
-@sp 1
-@subtitle @value{UPDATED}
-@author On-Line Applications Research Corporation
-@page
-@include common/cpright.texi
-@end titlepage
-
-@c This prevents a black box from being printed on "overflow" lines.
-@c The alternative is to rework a sentence to avoid this problem.
-
-@contents
-
-@ifnottex
-@node Top, Introduction, (dir), (dir)
-@top Getting Started With RTEMS
-
-This is the online version of the Getting Started with RTEMS.
-
-@menu
-* Introduction::
-* Requirements::
-* Building the GNU Cross Compiler Toolset with RSB::
-* Building RTEMS::
-* Building the Sample Applications::
-* Where To Go From Here::
-* Using MS-Windows as a Development Host::
-@end menu
-@c * Command and Variable Index::
-@c * Concept Index::
-@end ifnottex
-
-@include intro.texi
-@include require.texi
-@include buildc.texi
-@include buildrt.texi
-@include sample.texi
-@include nextstep.texi
-@include nt.texi
-
-@c @node Command and Variable Index, Concept Index, Installing GCC AND NEWLIB, Top
-@c @unnumbered Command and Variable Index
-
-@c There are currently no Command and Variable Index entries.
-
-@c @printindex fn
-
-@c @node Concept Index, , Command and Variable Index, Top
-@c @unnumbered Concept Index
-
-@c There are currently no Concept Index entries.
-@c @printindex cp
-
-@bye
-
diff --git a/doc/started/version.texi b/doc/started/version.texi
deleted file mode 100644
index c0e4bbb7b6..0000000000
--- a/doc/started/version.texi
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 17 July 2015
-@set UPDATED-MONTH July 2015
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0
diff --git a/doc/texi2any_init.in b/doc/texi2any_init.in
deleted file mode 100644
index 709e5ab3a6..0000000000
--- a/doc/texi2any_init.in
+++ /dev/null
@@ -1,20 +0,0 @@
-set_from_init_file ('AFTER_BODY_OPEN',
-'<A HREF="http://www.rtems.org" target="Text Frame">
-<IMG align=right BORDER=0 SRC="../images/rtems_logo.jpg" ALT="RTEMS
-Logo"> </A>
-<H1>RTEMS @VERSION@ On-Line Library</H1>
-');
-
-texinfo_register_handler('setup', \&add_button);
-
-my $button_text = '[<a href="../index.html">Directory</a>]';
-sub add_button($)
-{
- my $self = shift;
- foreach my $button_type ('SECTION_BUTTONS', 'CHAPTER_BUTTONS',
- 'MISC_BUTTONS', 'TOP_BUTTONS') {
- my $buttons = $self->get_conf($button_type);
- push @$buttons, \$button_text;
- }
- return 1;
-}
diff --git a/doc/texi2html_init.in b/doc/texi2html_init.in
deleted file mode 100644
index 9e0cd46621..0000000000
--- a/doc/texi2html_init.in
+++ /dev/null
@@ -1,19 +0,0 @@
-my $button_text = '<a href="../index.html">[Library]</a>';
-push @SECTION_BUTTONS, \$button_text;
-push @CHAPTER_BUTTONS, \$button_text;
-push @MISC_BUTTONS, \$button_text;
-push @TOP_BUTTONS, \$button_text;
-
-$AFTER_BODY_OPEN =
-'<A HREF="http://www.rtems.org" target="Text Frame">
-<IMG align=right BORDER=0 SRC="../images/rtems_logo.jpg" ALT="RTEMS
-Logo"> </A>
-<H1>RTEMS @VERSION@ On-Line Library</H1>
-';
-
-$PRE_BODY_CLOSE =
-'Copyright &copy; 1988-2014
-<A HREF="http://www.oarcorp.com" target="Text Frame">OAR Corporation</A>
-';
-
-1;
diff --git a/doc/tools/Makefile.am b/doc/tools/Makefile.am
deleted file mode 100644
index 75db2d77b0..0000000000
--- a/doc/tools/Makefile.am
+++ /dev/null
@@ -1,6 +0,0 @@
-ACLOCAL_AMFLAGS = -I ../../aclocal
-
-EXTRA_DIST = word-replace2
-
-SUBDIRS = bmenu
-#texi2www
diff --git a/doc/tools/bmenu/Makefile.am b/doc/tools/bmenu/Makefile.am
deleted file mode 100644
index 53ca36cd35..0000000000
--- a/doc/tools/bmenu/Makefile.am
+++ /dev/null
@@ -1,9 +0,0 @@
-#
-# COPYRIGHT (c) 1988-2002.
-# On-Line Applications Research Corporation (OAR).
-# All rights reserved.
-
-noinst_PROGRAMS = bmenu2
-
-bmenu2_SOURCES = address.h chain.c chain.h bmenu2.c base.h \
- chain.inl system.h
diff --git a/doc/tools/bmenu/address.h b/doc/tools/bmenu/address.h
deleted file mode 100644
index 9b19615c74..0000000000
--- a/doc/tools/bmenu/address.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * This include file contains the information required to manipulate
- * physical addresses.
- */
-
-/*
- * COPYRIGHT (c) 1988-2002.
- * On-Line Applications Research Corporation (OAR).
- * All rights reserved.
- */
-
-#ifndef __ADDRESSES_h
-#define __ADDRESSES_h
-
-#include <stddef.h>
-
-/*
- * _Addresses_Add_offset
- *
- * DESCRIPTION:
- *
- * This function is used to add an offset to a base address.
- * It returns the resulting address. This address is typically
- * converted to an access type before being used further.
- */
-STATIC INLINE void *_Addresses_Add_offset (
- void *base,
- size_t offset
-)
-{
- return (base + offset);
-}
-
-#endif
-/* end of include file */
diff --git a/doc/tools/bmenu/base.h b/doc/tools/bmenu/base.h
deleted file mode 100644
index 7e0b477cb4..0000000000
--- a/doc/tools/bmenu/base.h
+++ /dev/null
@@ -1,96 +0,0 @@
-/*
- * COPYRIGHT (c) 1988-2002.
- * On-Line Applications Research Corporation (OAR).
- * All rights reserved.
- */
-
-#ifndef __PDL2AMI_h
-#define __PDL2AMI_h
-
-#include "system.h"
-#include "chain.h"
-
-/*
- * Paragraph size should be kept down because it is allocated for each
- * Line_Control. If this number is large, the memory requirements for
- * the program increase significantly.
- */
-
-#define BUFFER_SIZE (2 * 1024)
-#define PARAGRAPH_SIZE (2 * 1024)
-
-#define NUMBER_ELEMENTS( _x ) (sizeof(_x) / sizeof _x[0])
-
-void exit_application(
- int status
-);
-
-void ProcessFile(
- char *inname,
- char *outname
-);
-
-void strtolower(
- char *dest,
- char *src
-);
-
-void strtoInitialCaps(
- char *dest,
- char *src
-);
-
-void StripBlanks( void );
-
-void MergeParagraphs( void );
-
-int CheckForIncomplete( void );
-
-int CheckOutline( void );
-
-int CheckSections( void );
-
-void GenerateLists( void );
-
-void GenerateAList(
- char *section,
- Chain_Control *the_list
-);
-
-void LookForInternalInconsistencies( void );
-
-int Match_Argument(
- char **array,
- int entries,
- char *users
-);
-
-void usage( void );
-
-void ReadFileIntoChain(
- char *inname
-);
-
-int MergeText( void );
-
-int CheckForBadWhiteSpace();
-
-void RemoveCopyright();
-
-void RemovePagebreaks();
-
-int RemoveExtraBlankLines();
-
-void FormatToTexinfo( void );
-
-void PrintFile(
- char *out
-);
-
-void DumpList(
- Chain_Control *the_list
-);
-
-void ReleaseFile();
-
-#endif
diff --git a/doc/tools/bmenu/bmenu2.c b/doc/tools/bmenu/bmenu2.c
deleted file mode 100644
index 7cb0188802..0000000000
--- a/doc/tools/bmenu/bmenu2.c
+++ /dev/null
@@ -1,1045 +0,0 @@
-/*
- * main.c
- *
- * This program takes a texinfo file without node and menu commands,
- * build those commands and inserts them.
- *
- * It works by reading the input file into a linked list of lines
- * and then performing sweeps on that list until all formatting is
- * complete. After the program is run, there is still a little
- * clean up to be performed by hand. The following have to be fixed
- * by hand:
- * + previous of the first node
- * + next of the last node
- *
- * COPYRIGHT (c) 1989-2011.
- * On-Line Applications Research Corporation (OAR).
- * All rights reserved.
- */
-
-#include <assert.h>
-#include <ctype.h>
-#include <limits.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-/* XXX -- just for testing -- these should be set by options */
-char TopString[] = "Top";
-char EmptyString[] = "";
-
-char *DocsNextNode;
-char *DocsPreviousNode;
-char *DocsUpNode;
-int NodeNameIncludesChapter = 1;
-
-extern int optind; /* Why is this not in <stdlib.h>? */
-extern char *optarg; /* Why is this not in <stdlib.h>? */
-
-#ifndef NAME_MAX
-#define NAME_MAX 14 /* Why is the one in limits.h not showing up? */
-#endif
-#define INIT_DATA
-
-#include "base.h"
-
-boolean Verbose; /* status/debug msgs */
-Chain_Control Lines;
-
-FILE *OutFile;
-
-static void ProcessFile2(
- FILE *infile,
- FILE *outfile );
-static void PrintFile2(
- FILE *outfile );
-static void ReadFileIntoChain2(
- FILE *InFile );
-
-/*************************************************************************
- *************************************************************************
- ***** DATA TYPES AND CONSTANT TABLES *****
- *************************************************************************
- *************************************************************************/
-/*
- * Usage Information
- */
-
-char *Usage_Strings[] = {
- "\n",
- "usage: cmd [-cv] [-p prev] [-n next] [-u up] \n",
- "\n",
- "EOF"
-};
-
-/*
- * The page separator is not really a keyword and will be purged before
- * it is seen elsewhere.
- */
-
-#define PAGE_SEPARATOR "#PAGE"
-
-/*
- * Section Delimiter Keywords
- */
-
-#define MAXIMUM_KEYWORD_LENGTH 32
-
-/*
- * Level indicates where in the format the delimiter is allowed to occur.
- * 1 indicates a major section divider (e.g. "ATTRIBUTE DESCRIPTIONS:").
- * 2 indicates a subsection (e.g. "ATTRIBUTE:").
- * 3 indicates a heading (e.g. "DESCRIPTION:").
- */
-
-#define TEXT 0
-#define SECTION 1
-#define SUBSECTION 2
-#define SUBSUBSECTION 3
-#define HEADING 4
-
-typedef enum {
- UNUSED, /* dummy 0 slot */
- KEYWORD_CHAPTER,
- KEYWORD_APPENDIX,
- KEYWORD_PREFACE,
- KEYWORD_CHAPHEADING,
- KEYWORD_SECTION,
- KEYWORD_SUBSECTION,
- KEYWORD_SUBSUBSECTION,
- KEYWORD_RAISE,
- KEYWORD_LOWER,
- KEYWORD_OTHER,
- KEYWORD_END
-
-} Keyword_indices_t;
-
-#define KEYWORD_FIRST KEYOWRD_CHAPTER
-#define KEYWORD_LAST KEYWORD_END
-
-/*
- * Line Management Structure
- */
-
-typedef enum {
- NO_EXTRA_FORMATTING_INFO,
- RAW_OUTPUT,
- PARAGRAPH_OUTPUT
-} ExtraFormat_info_t;
-
-typedef struct {
- Chain_Node Node;
- Keyword_indices_t keyword; /* unused is unknown/undecided */
- ExtraFormat_info_t format;
- int number;
- int level;
- char Contents[ PARAGRAPH_SIZE ];
-} Line_Control;
-
-typedef enum {
- RT_FORBIDDEN, /* no text to right allowed */
- RT_OPTIONAL, /* text to right optional -- none below */
- RT_NONE, /* text to right is "none" or nothing -- none below */
- RT_REQUIRED, /* text to right required -- none below */
- RT_BELOW, /* text to right forbidden -- text below required */
- RT_NONE_OR_BELOW, /* text to right is "none" OR there is text below */
- RT_EITHER, /* text to right OR below */
- RT_BOTH /* text to right AND below */
-} Keywords_text_mode_t;
-
-typedef enum {
- BL_FORBIDDEN, /* text below forbidden */
- BL_FORMATTED, /* text below is to be formatted as paragraphs */
- BL_RAW, /* text below is to be unprocessed by this program */
-} Keywords_text_below_t;
-
-typedef (*Keyword_validater_t)( Line_Control * );
-
-typedef struct {
- char Name[ MAXIMUM_KEYWORD_LENGTH ];
- int level;
- Keywords_text_mode_t text_mode;
- Keywords_text_below_t text_below_mode;
- Keyword_validater_t keyword_validation_routine;
-} Keyword_info_t;
-
-Keyword_info_t Keywords[] = {
- { "unused", 0, 0, 0, NULL }, /* so 0 can be invalid */
- { "@chapter", SECTION, RT_FORBIDDEN, BL_FORBIDDEN, NULL },
- { "@appendix", SECTION, RT_FORBIDDEN, BL_FORBIDDEN, NULL },
- { "@preface", SECTION, RT_FORBIDDEN, BL_FORBIDDEN, NULL },
- { "@chapheading", SECTION, RT_FORBIDDEN, BL_FORBIDDEN, NULL },
- { "@section", SECTION, RT_FORBIDDEN, BL_FORBIDDEN, NULL },
- { "@subsection", SUBSECTION, RT_FORBIDDEN, BL_FORBIDDEN, NULL },
- { "@subsubsection", SUBSUBSECTION, RT_FORBIDDEN, BL_FORBIDDEN, NULL },
- { "@raise", SUBSECTION, RT_FORBIDDEN, BL_FORBIDDEN, NULL },
- { "@lower", SUBSECTION, RT_FORBIDDEN, BL_FORBIDDEN, NULL },
- { "", HEADING, RT_FORBIDDEN, BL_FORBIDDEN, NULL },
- { "END OF FILE", SECTION, RT_FORBIDDEN, BL_FORBIDDEN, NULL }
-};
-
-#define NUMBER_OF_KEYWORDS \
- ( sizeof( Keywords ) / sizeof( Keyword_info_t ) ) - 2
-
-/*
- * exit_application
- */
-
-void exit_application(
- int status
-)
-{
- fprintf( stderr, "*** Error encountered ***\n" );
-/*
- fprintf( stderr, "*** Error encountered on line %d ***\n", CurrentLine );
-*/
- fclose( OutFile );
- exit( status );
-}
-
-/*************************************************************************
- *************************************************************************
- ***** LINE MANIPULATION ROUTINES *****
- *************************************************************************
- *************************************************************************/
-
-/*
- * PrintLine
- */
-
-void PrintLine(
- Line_Control *line
-)
-{
- assert( line );
-
- if ( line->number == -1 )
- fprintf( stderr, " " );
- else
- fprintf( stderr, "%5d", line->number );
-
-#if 0
- fprintf( stderr, "%s\n", line->Contents );
-#else
- /*
- * Include some debugging information
- */
- fprintf(
- stderr,
- "<%d,%d,%d>:%s\n",
- line->keyword,
- line->format,
- line->level,
- line->Contents
- );
-#endif
-}
-
-Chain_Control Line_Pool;
-
-/*
- * FillLinePool
- */
-
-void FillLinePool( void )
-{
- void *pool;
-
-#define LINE_POOL_FILL_COUNT 100
-
- pool = malloc( sizeof( Line_Control ) * LINE_POOL_FILL_COUNT );
- assert( pool );
-
- _Chain_Initialize(
- &Line_Pool,
- pool,
- LINE_POOL_FILL_COUNT,
- sizeof( Line_Control )
- );
-}
-
-/*
- * AllocateLine
- */
-
-Line_Control *AllocateLine( void )
-{
- Line_Control *new_line;
-
- new_line = (Line_Control *) _Chain_Get( &Line_Pool );
- if ( !new_line ) {
- FillLinePool();
- new_line = (Line_Control *) _Chain_Get( &Line_Pool );
- assert( new_line );
- }
-
-/*
- * This is commented out because although it is helpful during debug,
- * it consumes a significant percentage of the program's execution time.
-
- memset( new_line->Contents, '\0', sizeof( new_line->Contents ) );
-*/
- new_line->number = -1;
- new_line->level = -1;
-
- new_line->keyword = UNUSED;
- new_line->format = NO_EXTRA_FORMATTING_INFO;
-
- new_line->Node.next = NULL;
- new_line->Node.previous = NULL;
-
- return new_line;
-}
-
-/*
- * FreeLine
- */
-
-void FreeLine(
- Line_Control *line
-)
-{
- fflush( stdout );
- _Chain_Append( &Line_Pool, &line->Node );
-}
-
-/*
- * DeleteLine
- */
-
-Line_Control *DeleteLine(
- Line_Control *line
-)
-{
- Line_Control *next;
-
- next = (Line_Control *)line->Node.next;
- _Chain_Extract( &line->Node );
- FreeLine( line );
- return next;
-}
-
-/*
- * PrintSurroundingLines
- */
-
-void PrintSurroundingLines(
- Line_Control *line,
- int backward,
- int forward
-)
-{
- int i;
- int real_backward;
- Line_Control *local;
-
- for ( local=line, real_backward=0, i=1 ;
- i<=backward ;
- i++, real_backward++ ) {
- if ( &local->Node == Lines.first )
- break;
- local = (Line_Control *) local->Node.previous;
- }
-
- for ( i=1 ; i<=real_backward ; i++ ) {
- PrintLine( local );
- local = (Line_Control *) local->Node.next;
- }
-
- PrintLine( local );
-
- for ( i=1 ; i<=forward ; i++ ) {
- local = (Line_Control *) local->Node.next;
- if ( _Chain_Is_last( &local->Node ) )
- break;
- PrintLine( local );
- }
-
-}
-
-/*
- * SetLineFormat
- */
-
-void SetLineFormat(
- Line_Control *line,
- ExtraFormat_info_t format
-)
-{
- if ( line->format != NO_EXTRA_FORMATTING_INFO ) {
- fprintf( stderr, "Line %d is already formatted\n", line->number );
- PrintLine( line );
- assert( FALSE );
- }
-
- line->format = format;
-}
-
-/*
- * LineCopyFromRight
- */
-
-void LineCopyFromRight(
- Line_Control *line,
- char *dest
-)
-{
- char *p;
-
- for ( p=line->Contents ; *p != ' ' ; p++ )
- ;
- p++; /* skip the ' ' */
- for ( ; isspace( *p ) ; p++ )
- ;
-
- strcpy( dest, p );
-
-}
-
-/*
- * LineCopySectionName
- */
-
-void LineCopySectionName(
- Line_Control *line,
- char *dest
-)
-{
- char *p;
- char *d;
-
- p = line->Contents;
- d = dest;
-
- if ( *p == '@' ) { /* skip texinfo command */
- while ( !isspace( *p++ ) )
- ;
- }
-
- for ( ; *p ; )
- *d++ = *p++;
-
- *d = '\0';
-}
-
-/*************************************************************************
- *************************************************************************
- ***** END OF LINE MANIPULATION ROUTINES *****
- *************************************************************************
- *************************************************************************/
-
-/*
- * main
- */
-
-int main(
- int argc,
- char **argv
-)
-{
- int c;
- int index;
- boolean single_file_mode;
-
- OutFile = stdout;
- Verbose = FALSE;
- DocsNextNode = EmptyString;
- DocsPreviousNode = TopString;
- DocsUpNode = TopString;
-
- while ((c = getopt(argc, argv, "vcp:n:u:")) != EOF) {
- switch (c) {
- case 'v':
- Verbose = TRUE;
- break;
- case 'c':
- NodeNameIncludesChapter = 0;
- break;
- case 'p':
- DocsPreviousNode = strdup(optarg);
- break;
- case 'n':
- DocsNextNode = strdup(optarg);
- break;
- case 'u':
- DocsUpNode = strdup(optarg);
- break;
-
- case '?':
- usage();
- return 0;
- }
- }
-
- if ( optind != argc )
- {
- usage();
- return 0 ;
- }
-
- if ( Verbose )
- fprintf( stderr, "Arguments successfully parsed\n" );
-
- FillLinePool();
-
- ProcessFile2( stdin, stdout );
-
- if ( Verbose )
- fprintf( stderr, "Exitting\n" );
-
- return 0;
-}
-
-/*
- * ProcessFile
- */
-
-void ProcessFile2(
- FILE *infile,
- FILE *outfile
-)
-{
- int index;
-
- /*
- * Read the file into our internal data structure
- */
-
- if ( Verbose )
- printf( "Processing (%s) -> (%s)\n", "stdin", "stdout" );
-
- ReadFileIntoChain2( infile );
-
- if ( Verbose )
- fprintf( stderr, "-------->FILE READ IN\n" );
-
- /*
- * Remove any spaces before the keyword and mark each keyword line as
- * such. Also remove extra white space at the end of lines.
- */
-
- StripBlanks();
-
- if ( Verbose )
- fprintf( stderr, "-------->BLANKS BEFORE KEYWORDS STRIPPED\n" );
-
-
- FormatToTexinfo();
-
- if ( Verbose )
- fprintf( stderr, "-------->FILE FORMATTED TO TEXINFO\n" );
-
- /*
- * Print the file
- */
-
- PrintFile2( outfile );
-
- if ( Verbose )
- fprintf( stderr, "-------->FILE PRINTED\n" );
-
- /*
- * Clean Up
- */
-
- ReleaseFile();
-
- if ( Verbose )
- fprintf( stderr, "-------->FILE RELEASED\n" );
-}
-
-/*
- * usage
- */
-
-void usage( void )
-{
- int index;
-
- for ( index=0 ; strcmp( Usage_Strings[ index ], "EOF" ) ; index++ )
- fprintf( stderr, Usage_Strings[ index ] );
-}
-
-/*
- * ReadFileIntoChain
- */
-
-void ReadFileIntoChain2(
- FILE *InFile
-)
-{
- int line_count;
- int max_length;
- char *line;
- char Buffer[ BUFFER_SIZE ];
- Line_Control *new_line;
-
- if ( !InFile ) {
- fprintf( stderr, "Unable to open (%s)\n", "stdin" );
- exit( 1 );
- }
- assert( InFile );
-
- max_length = 0;
- line_count = 0;
-
- _Chain_Initialize_empty( &Lines );
-
- for ( ;; ) {
- line = fgets( Buffer, BUFFER_SIZE, InFile );
- if ( !line )
- break;
-
- Buffer[ strlen( Buffer ) - 1 ] = '\0';
-
- new_line = AllocateLine();
-
- strcpy( new_line->Contents, Buffer );
-
- new_line->number = ++line_count;
-
- _Chain_Append( &Lines, &new_line->Node );
- }
-
- fclose( InFile );
-}
-
-/*
- * StripBlanks
- */
-
-void StripBlanks( void )
-{
- Line_Control *line;
- Keyword_indices_t index;
- int indentation;
- int length;
-
- for ( line = (Line_Control *) Lines.first ;
- !_Chain_Is_last( &line->Node ) ;
- line = (Line_Control *) line->Node.next
- ) {
-
- /*
- * Strip white space from the end of each line
- */
-
- length = strlen( line->Contents );
-
- while ( isspace( line->Contents[ --length ] ) )
- line->Contents[ length ] = '\0';
-
- if ( strstr( line->Contents, "@chapter" ) )
- line->keyword = KEYWORD_CHAPTER;
- else if ( strstr( line->Contents, "@appendix" ) )
- line->keyword = KEYWORD_APPENDIX;
- else if ( strstr( line->Contents, "@preface" ) )
- line->keyword = KEYWORD_PREFACE;
- else if ( strstr( line->Contents, "@chapheading" ) )
- line->keyword = KEYWORD_CHAPHEADING;
- else if ( strstr( line->Contents, "@section" ) )
- line->keyword = KEYWORD_SECTION;
- else if ( strstr( line->Contents, "@subsection" ) )
- line->keyword = KEYWORD_SUBSECTION;
- else if ( strstr( line->Contents, "@subsubsection" ) )
- line->keyword = KEYWORD_SUBSUBSECTION;
- else if ( strstr( line->Contents, "@raise" ) )
- line->keyword = KEYWORD_RAISE;
- else if ( strstr( line->Contents, "@lower" ) )
- line->keyword = KEYWORD_LOWER;
- else
- line->keyword = KEYWORD_OTHER;
-
- }
- line = AllocateLine();
- line->keyword = KEYWORD_END;
- _Chain_Append( &Lines, &line->Node );
-}
-
-/*
- * strIsAllSpace
- */
-
-boolean strIsAllSpace(
- char *s
-)
-{
- char *p;
-
- for ( p = s ; *p ; p++ )
- if ( !isspace( *p ) )
- return FALSE;
-
- return TRUE;
-}
-
-/*
- * BuildTexinfoNodes
- */
-
-void BuildTexinfoNodes( void )
-{
- char Buffer[ BUFFER_SIZE ];
- Line_Control *line;
- Line_Control *next_node;
- Line_Control *up_node;
- Line_Control *new_line;
- Line_Control *menu_insert_point;
- Line_Control *node_line;
- int next_found;
- int menu_items;
- Keyword_indices_t index;
- char ChapterName[ BUFFER_SIZE ];
- char NodeName[ BUFFER_SIZE ];
- char UpNodeName[ BUFFER_SIZE ];
- char NextNodeName[ BUFFER_SIZE ];
- char PreviousNodeName[ BUFFER_SIZE ];
-
- /*
- * Set Initial Previous Node Name
- */
-
- strcpy( PreviousNodeName, DocsPreviousNode );
-
- for ( line = (Line_Control *) Lines.first ;
- !_Chain_Is_last( &line->Node ) ;
- line = (Line_Control *) line->Node.next
- ) {
-
- if ( line->level == -1 )
- continue;
-
- LineCopyFromRight( line, NodeName );
-
- if ( line->keyword == KEYWORD_CHAPTER ||
- line->keyword == KEYWORD_APPENDIX ||
- line->keyword == KEYWORD_PREFACE ||
- line->keyword == KEYWORD_CHAPHEADING ) {
-
- strcpy( ChapterName, NodeName );
-
- } else if ( NodeNameIncludesChapter ) {
-
- sprintf( Buffer, "%s %s", ChapterName, NodeName );
- strcpy( NodeName, Buffer );
- }
-
- /*
- * Set Default Next Node Name
- */
-
- next_found = FALSE;
- strcpy( NextNodeName, DocsNextNode );
-
- /*
- * Go ahead and put it on the chain in the right order (ahead of
- * the menu) and we can fill it in later (after the menu is built).
- */
-
- new_line = AllocateLine();
- strcpy( new_line->Contents, "" ); /*"@ifinfo" ); */
- _Chain_Insert( line->Node.previous, &new_line->Node );
-
- node_line = AllocateLine();
- _Chain_Insert( line->Node.previous, &node_line->Node );
-
- new_line = AllocateLine();
- strcpy( new_line->Contents, "" ); /* "@end ifinfo" ); */
- _Chain_Insert( line->Node.previous, &new_line->Node );
-
- next_node = (Line_Control *) line->Node.next;
- menu_insert_point = next_node;
- menu_items = 0;
-
- for ( ; ; ) {
- if ( next_node->keyword == KEYWORD_END )
- break;
-
- if ( next_node->level == -1 )
- goto continue_menu_loop;
-
- LineCopySectionName( next_node, Buffer );
- if ( !next_found ) {
- next_found = TRUE;
- if (NodeNameIncludesChapter)
- sprintf( NextNodeName, "%s %s", ChapterName, Buffer );
- else
- sprintf( NextNodeName, "%s", Buffer );
- }
-
- if ( next_node->level <= line->level )
- break;
-
- if ( next_node->level != (line->level + 1) )
- goto continue_menu_loop;
-
- if ( menu_items == 0 ) {
- new_line = AllocateLine();
- strcpy( new_line->Contents, "" ); /* "@ifinfo" ); */
- _Chain_Insert( menu_insert_point->Node.previous, &new_line->Node );
-
- new_line = AllocateLine();
- strcpy( new_line->Contents, "@menu" );
- _Chain_Insert( menu_insert_point->Node.previous, &new_line->Node );
- }
-
- menu_items++;
-
- new_line = AllocateLine();
- if (NodeNameIncludesChapter)
- sprintf( new_line->Contents, "* %s %s::", ChapterName, Buffer );
- else
- sprintf( new_line->Contents, "* %s::", Buffer );
- _Chain_Insert( menu_insert_point->Node.previous, &new_line->Node );
-
-continue_menu_loop:
- next_node = (Line_Control *) next_node->Node.next;
- }
-
- /*
- * If menu items were generated, then insert the end of menu stuff.
- */
-
- if ( menu_items ) {
- new_line = AllocateLine();
- strcpy( new_line->Contents, "@end menu" );
- _Chain_Insert( menu_insert_point->Node.previous, &new_line->Node );
-
- new_line = AllocateLine();
- strcpy( new_line->Contents, "" ); /* "@end ifinfo" ); */
- _Chain_Insert( menu_insert_point->Node.previous, &new_line->Node );
- }
-
- /*
- * Find the UpNodeName
- */
-
-/* DumpList( &Lines ); */
-
- if ( line->level == 0 ) {
- strcpy( UpNodeName, DocsUpNode );
- } else {
- for ( up_node = line;
- up_node && !_Chain_Is_first((Chain_Node *)up_node) ;
- up_node = (Line_Control *) up_node->Node.previous
- ) {
-
- if ( (up_node->level == -1) )
- continue;
-
- if ( up_node->level == (line->level - 1) ) {
- LineCopySectionName( up_node, Buffer );
- if (NodeNameIncludesChapter) {
- if (!strcmp(ChapterName, Buffer))
- sprintf( UpNodeName, "%s", Buffer );
- else
- sprintf( UpNodeName, "%s %s", ChapterName, Buffer );
- } else
- sprintf( UpNodeName, "%s", Buffer );
- break;
- }
- }
- }
-
- /*
- * Update the node information
- */
-
-#if 0
- fprintf(
- stderr,
- "@node %s, %s, %s, %s\n",
- NodeName,
- NextNodeName,
- PreviousNodeName,
- UpNodeName
- );
-#endif
-
- /* node_line was previously inserted */
- if (!NodeNameIncludesChapter) {
- sprintf(
- node_line->Contents,
- "@node %s, %s, %s, %s",
- NodeName,
- NextNodeName,
- PreviousNodeName,
- UpNodeName
- );
- } else {
- sprintf(
- node_line->Contents,
- "@node %s, %s, %s, %s",
- NodeName,
- NextNodeName,
- PreviousNodeName,
- UpNodeName
- );
- }
-
- strcpy( PreviousNodeName, NodeName );
-
- /* PrintLine( line ); */
- }
-}
-
-/*
- * FormatToTexinfo
- */
-
-void FormatToTexinfo( void )
-{
- Line_Control *line;
- int baselevel = 0;
- int currentlevel;
-
- if ( Verbose )
- fprintf( stderr, "-------->INSERTING TEXINFO MENUS\n" );
-
- for ( line = (Line_Control *) Lines.first ;
- !_Chain_Is_last( &line->Node ) ;
- line = (Line_Control *) line->Node.next ) {
-
- switch (line->keyword) {
- case UNUSED:
- case KEYWORD_OTHER:
- case KEYWORD_END:
- line->level = -1;
- break;
- case KEYWORD_CHAPTER:
- case KEYWORD_APPENDIX:
- case KEYWORD_PREFACE:
- case KEYWORD_CHAPHEADING:
- currentlevel = 0;
- line->level = baselevel + currentlevel;
- break;
- case KEYWORD_SECTION:
- currentlevel = 1;
- line->level = baselevel + currentlevel;
- break;
- case KEYWORD_SUBSECTION:
- currentlevel = 2;
- line->level = baselevel + currentlevel;
- break;
- case KEYWORD_SUBSUBSECTION:
- currentlevel = 3;
- line->level = baselevel + currentlevel;
- break;
- case KEYWORD_RAISE:
- assert( baselevel );
- baselevel--;
- line->level = -1;
- break;
- case KEYWORD_LOWER:
- baselevel++;
- line->level = -1;
- break;
- }
- }
-
- BuildTexinfoNodes();
-}
-
-/*
- * PrintFile
- */
-
-void PrintFile2(
- FILE *OutFile
-)
-{
- Line_Control *line;
-
- if ( !OutFile ) {
- fprintf( stderr, "Unable to open (%s) for output\n", "stdout" );
- exit_application( 1 );
- }
- assert( OutFile );
-
- for ( line = (Line_Control *) Lines.first ;
- !_Chain_Is_last( &line->Node ) ;
- line = (Line_Control *) line->Node.next ) {
- fprintf( OutFile, "%s\n", line->Contents );
-/*
- fprintf(
- OutFile,
- "(%d,%d)%s\n",
- line->keyword,
- line->format,
- line->Contents
- );
-*/
- }
-}
-
-/*
- * DumpList
- */
-
-void DumpList(
- Chain_Control *the_list
-)
-{
- Line_Control *line;
-
- fprintf( stderr, "---> Dumping list (%p)\n", the_list );
-
- for ( line = (Line_Control *) the_list->first ;
- !_Chain_Is_last( &line->Node ) ;
- line = (Line_Control *) line->Node.next ) {
- /* if (line->level != -1) */
- PrintLine( line );
- /* fprintf( stderr, "%s\n", line->Contents ); */
- }
-}
-
-/*
- * ReleaseFile
- */
-
-void ReleaseFile()
-{
- Line_Control *line;
- Line_Control *next;
-
- for ( line = (Line_Control *) Lines.first ;
- !_Chain_Is_last( &line->Node ) ;
- ) {
- next = (Line_Control *) line->Node.next;
- line = next;
- }
-}
-
-/*
- * strtoInitialCaps
- */
-
-void strtoInitialCaps(
- char *dest,
- char *src
-)
-{
- char *source = src;
- char *destination = dest;
-
- source = src;
- destination = (dest) ? dest : src;
-
- while ( *source ) {
- while ( isspace( *source ) )
- *destination++ = *source++;
-
- if ( !*source )
- break;
-
- *destination++ = toupper( *source++ );
-
- for ( ; *source && !isspace( *source ) ; source++ )
- *destination++ = tolower( *source );
-
- if ( !*source )
- break;
- }
-
- *destination = '\0';
-}
diff --git a/doc/tools/bmenu/chain.c b/doc/tools/bmenu/chain.c
deleted file mode 100644
index e50c06fd28..0000000000
--- a/doc/tools/bmenu/chain.c
+++ /dev/null
@@ -1,189 +0,0 @@
-/*
- * Chain Handler
- *
- * COPYRIGHT (c) 1988-2002.
- * On-Line Applications Research Corporation (OAR).
- * All rights reserved.
- */
-
-#include "system.h"
-#include "address.h"
-#include "chain.h"
-
-/*PAGE
- *
- * _Chain_Initialize
- *
- * This kernel routine initializes a doubly linked chain.
- *
- * Input parameters:
- * the_chain - pointer to chain header
- * starting_address - starting address of first node
- * number_nodes - number of nodes in chain
- * node_size - size of node in bytes
- *
- * Output parameters: NONE
- */
-
-void _Chain_Initialize(
- Chain_Control *the_chain,
- void *starting_address,
- size_t number_nodes,
- size_t node_size
-)
-{
- size_t count;
- Chain_Node *current;
- Chain_Node *next;
-
- count = number_nodes;
- current = _Chain_Head( the_chain );
- the_chain->permanent_null = NULL;
- next = (Chain_Node *)starting_address;
- while ( count-- ) {
- current->next = next;
- next->previous = current;
- current = next;
- next = (Chain_Node *)
- _Addresses_Add_offset( (void *) next, node_size );
- }
- current->next = _Chain_Tail( the_chain );
- the_chain->last = current;
-}
-
-/*PAGE
- *
- * _Chain_Get
- *
- * This kernel routine returns a pointer to a node taken from the
- * given chain.
- *
- * Input parameters:
- * the_chain - pointer to chain header
- *
- * Output parameters:
- * return_node - pointer to node in chain allocated
- * CHAIN_END - if no nodes available
- *
- * INTERRUPT LATENCY:
- * only case
- */
-
-Chain_Node *_Chain_Get(
- Chain_Control *the_chain
-)
-{
- Chain_Node *return_node;
-
- return_node = NULL;
- if ( !_Chain_Is_empty( the_chain ) )
- return_node = _Chain_Get_first_unprotected( the_chain );
- return return_node;
-}
-
-/*PAGE
- *
- * _Chain_Append
- *
- * This kernel routine puts a node on the end of the specified chain.
- *
- * Input parameters:
- * the_chain - pointer to chain header
- * node - address of node to put at rear of chain
- *
- * Output parameters: NONE
- *
- * INTERRUPT LATENCY:
- * only case
- */
-
-void _Chain_Append(
- Chain_Control *the_chain,
- Chain_Node *node
-)
-{
- _Chain_Append_unprotected( the_chain, node );
-}
-
-/*PAGE
- *
- * _Chain_Extract
- *
- * This kernel routine deletes the given node from a chain.
- *
- * Input parameters:
- * node - pointer to node in chain to be deleted
- *
- * Output parameters: NONE
- *
- * INTERRUPT LATENCY:
- * only case
- */
-
-void _Chain_Extract(
- Chain_Node *node
-)
-{
- _Chain_Extract_unprotected( node );
-}
-
-/*PAGE
- *
- * _Chain_Insert
- *
- * This kernel routine inserts a given node after a specified node
- * a requested chain.
- *
- * Input parameters:
- * after_node - pointer to node in chain to be inserted after
- * node - pointer to node to be inserted
- *
- * Output parameters: NONE
- *
- * INTERRUPT LATENCY:
- * only case
- */
-
-void _Chain_Insert(
- Chain_Node *after_node,
- Chain_Node *node
-)
-{
- _Chain_Insert_unprotected( after_node, node );
-}
-
-/*PAGE
- *
- * _Chain_Insert_chain
- *
- * This routine inserts a chain after the specified node in another
- * chain. It is assumed that the insert after node is not on the
- * second chain.
- *
- * Input parameters:
- * insert_after - insert the chain after this node
- * to_insert - the chain to insert
- */
-
-void _Chain_Insert_chain(
- Chain_Node *insert_after,
- Chain_Control *to_insert
-)
-{
- Chain_Node *first;
- Chain_Node *last;
- Chain_Node *insert_after_next;
-
- first = to_insert->first;
- last = to_insert->last;
-
- insert_after_next = insert_after->next;
-
- insert_after->next = first;
- first->previous = insert_after;
-
- insert_after_next->previous = last;
- last->next = insert_after_next;
-
- _Chain_Initialize_empty( to_insert );
-}
diff --git a/doc/tools/bmenu/chain.h b/doc/tools/bmenu/chain.h
deleted file mode 100644
index 9b1b009d30..0000000000
--- a/doc/tools/bmenu/chain.h
+++ /dev/null
@@ -1,347 +0,0 @@
-/* chain.h
- *
- * This include file contains all the constants and structures associated
- * with the Doubly Linked Chain Handler.
- *
- * COPYRIGHT (c) 1988-2002.
- * On-Line Applications Research Corporation (OAR).
- * All rights reserved.
- */
-
-#ifndef __CHAIN_h
-#define __CHAIN_h
-
-#include <stddef.h>
-
-#include "address.h"
-
-/*
- * This is used to manage each element (node) which is placed
- * on a chain.
- *
- * NOTE: Typically, a more complicated structure will use the
- * chain package. The more complicated structure will
- * include a chain node as the first element in its
- * control structure. It will then call the chain package
- * with a pointer to that node element. The node pointer
- * and the higher level structure start at the same address
- * so the user can cast the pointers back and forth.
- */
-
-typedef struct Chain_Node_struct Chain_Node;
-
-struct Chain_Node_struct {
- Chain_Node *next;
- Chain_Node *previous;
-};
-
-/*
- * This is used to manage a chain. A chain consists of a doubly
- * linked list of zero or more nodes.
- *
- * NOTE: This implementation does not require special checks for
- * manipulating the first and last elements on the chain.
- * To accomplish this the chain control structure is
- * treated as two overlapping chain nodes. The permanent
- * head of the chain overlays a node structure on the
- * first and permanent_null fields. The permanent tail
- * of the chain overlays a node structure on the
- * permanent_null and last elements of the structure.
- */
-
-typedef struct {
- Chain_Node *first;
- Chain_Node *permanent_null;
- Chain_Node *last;
-} Chain_Control;
-
-/*
- * _Chain_Initialize
- *
- * This routine initializes the_chain structure to manage the
- * contiguous array of number_nodes nodes which starts at
- * starting_address. Each node is of node_size bytes.
- */
-
-void _Chain_Initialize(
- Chain_Control *the_chain,
- void *starting_address,
- size_t number_nodes,
- size_t node_size
-);
-
-/*
- * _Chain_Initialize_empty
- *
- * This routine initializes the specified chain to contain zero nodes.
- */
-
-STATIC INLINE void _Chain_Initialize_empty(
- Chain_Control *the_chain
-);
-
-/*
- * _Chain_Extract_unprotected
- *
- * This routine extracts the_node from the chain on which it resides.
- * It does NOT disable interrupts to insure the atomicity of the
- * extract operation.
- */
-
-STATIC INLINE void _Chain_Extract_unprotected(
- Chain_Node *the_node
-);
-
-/*
- * _Chain_Extract
- *
- * This routine extracts the_node from the chain on which it resides.
- * It disables interrupts to insure the atomicity of the
- * extract operation.
- */
-
-void _Chain_Extract(
- Chain_Node *the_node
-);
-
-/*
- * _Chain_Get_unprotected
- *
- * This function removes the first node from the_chain and returns
- * a pointer to that node. If the_chain is empty, then NULL is returned.
- * It does NOT disable interrupts to insure the atomicity of the
- * get operation.
- */
-
-STATIC INLINE Chain_Node *_Chain_Get_unprotected(
- Chain_Control *the_chain
-);
-
-/*
- * _Chain_Get
- *
- * This function removes the first node from the_chain and returns
- * a pointer to that node. If the_chain is empty, then NULL is returned.
- * It disables interrupts to insure the atomicity of the
- * get operation.
- */
-
-Chain_Node *_Chain_Get(
- Chain_Control *the_chain
-);
-
-/*
- * _Chain_Get_first_unprotected
- *
- * This function removes the first node from the_chain and returns
- * a pointer to that node. It does NOT disable interrupts to insure
- * the atomicity of the get operation.
- */
-
-STATIC INLINE Chain_Node *_Chain_Get_first_unprotected(
- Chain_Control *the_chain
-);
-
-/*
- * _Chain_Insert_unprotected
- *
- * This routine inserts the_node on a chain immediately following
- * after_node. It does NOT disable interrupts to insure the atomicity
- * of the extract operation.
- */
-
-STATIC INLINE void _Chain_Insert_unprotected(
- Chain_Node *after_node,
- Chain_Node *the_node
-);
-
-/*
- * _Chain_Insert
- *
- * This routine inserts the_node on a chain immediately following
- * after_node. It disables interrupts to insure the atomicity
- * of the extract operation.
- */
-
-void _Chain_Insert(
- Chain_Node *after_node,
- Chain_Node *the_node
-);
-
-/*
- * _Chain_Append_unprotected
- *
- * This routine appends the_node onto the end of the_chain.
- * It does NOT disable interrupts to insure the atomicity of the
- * append operation.
- */
-
-STATIC INLINE void _Chain_Append_unprotected(
- Chain_Control *the_chain,
- Chain_Node *the_node
-);
-
-/*
- * _Chain_Append
- *
- * This routine appends the_node onto the end of the_chain.
- * It disables interrupts to insure the atomicity of the
- * append operation.
- */
-
-void _Chain_Append(
- Chain_Control *the_chain,
- Chain_Node *the_node
-);
-
-/*
- * _Chain_Prepend_unprotected
- *
- * This routine prepends the_node onto the front of the_chain.
- * It does NOT disable interrupts to insure the atomicity of the
- * prepend operation.
- */
-
-STATIC INLINE void _Chain_Prepend_unprotected(
- Chain_Control *the_chain,
- Chain_Node *the_node
-);
-
-/*
- * _Chain_Prepend
- *
- * This routine prepends the_node onto the front of the_chain.
- * It disables interrupts to insure the atomicity of the
- * prepend operation.
- */
-
-STATIC INLINE void _Chain_Prepend(
- Chain_Control *the_chain,
- Chain_Node *the_node
-);
-
-/*
- * _Chain_Insert_chain
- *
- * This routine inserts a chain after the specified node in another
- * chain. It is assumed that the insert after node is not on the
- * second chain.
- */
-
-void _Chain_Insert_chain(
- Chain_Node *insert_after,
- Chain_Control *to_insert
-);
-
-/*
- * _Chain_Head
- *
- * This function returns a pointer to the first node on the chain.
- */
-
-STATIC INLINE Chain_Node *_Chain_Head(
- Chain_Control *the_chain
-);
-
-/*
- * _Chain_Tail
- *
- * This function returns a pointer to the last node on the chain.
- */
-
-STATIC INLINE Chain_Node *_Chain_Tail(
- Chain_Control *the_chain
-);
-
-/*
- * _Chain_Is_head
- *
- * This function returns TRUE if the_node is the head of the_chain and
- * FALSE otherwise.
- */
-
-STATIC INLINE boolean _Chain_Is_head(
- Chain_Control *the_chain,
- Chain_Node *the_node
-);
-
-/*
- * _Chain_Is_tail
- *
- * This function returns TRUE if the_node is the tail of the_chain and
- * FALSE otherwise.
- */
-
-STATIC INLINE boolean _Chain_Is_tail(
- Chain_Control *the_chain,
- Chain_Node *the_node
-);
-
-/*
- * _Chain_Is_first
- *
- * This function returns TRUE if the_node is the first node on a chain and
- * FALSE otherwise.
- */
-
-STATIC INLINE boolean _Chain_Is_first(
- Chain_Node *the_node
-);
-
-/*
- * _Chain_Is_last
- *
- * This function returns TRUE if the_node is the last node on a chain and
- * FALSE otherwise.
- */
-
-STATIC INLINE boolean _Chain_Is_last(
- Chain_Node *the_node
-);
-
-/*
- * _Chain_Is_empty
- *
- * This function returns TRUE if there a no nodes on the_chain and
- * FALSE otherwise.
- */
-
-STATIC INLINE boolean _Chain_Is_empty(
- Chain_Control *the_chain
-);
-
-/*
- * _Chain_Has_only_one_node
- *
- * This function returns TRUE if there is only one node on the_chain and
- * FALSE otherwise.
- */
-
-STATIC INLINE boolean _Chain_Has_only_one_node(
- Chain_Control *the_chain
-);
-
-/*
- * _Chain_Is_null
- *
- * This function returns TRUE if the_chain is NULL and FALSE otherwise.
- */
-
-STATIC INLINE boolean _Chain_Is_null(
- Chain_Control *the_chain
-);
-
-/*
- * _Chain_Is_null_node
- *
- * This function returns TRUE if the_node is NULL and FALSE otherwise.
- */
-
-STATIC INLINE boolean _Chain_Is_null_node(
- Chain_Node *the_node
-);
-
-#include "chain.inl"
-
-#endif
-/* end of include file */
diff --git a/doc/tools/bmenu/chain.inl b/doc/tools/bmenu/chain.inl
deleted file mode 100644
index 2ea53edebb..0000000000
--- a/doc/tools/bmenu/chain.inl
+++ /dev/null
@@ -1,234 +0,0 @@
-/*
- * This include file contains the bodies of the routines which are
- * associated with doubly linked chains and inlined.
- */
-
-/*
- * COPYRIGHT (c) 1988-2002.
- * On-Line Applications Research Corporation (OAR).
- * All rights reserved.
- */
-
-#ifndef __INLINE_CHAIN_inl
-#define __INLINE_CHAIN_inl
-
-/*
- * _Chain_Is_null
- */
-STATIC INLINE boolean _Chain_Is_null(
- Chain_Control *the_chain
-)
-{
- return ( the_chain == NULL );
-}
-
-/*
- * _Chain_Is_null_node
- */
-STATIC INLINE boolean _Chain_Is_null_node(
- Chain_Node *the_node
-)
-{
- return ( the_node == NULL );
-}
-
-/*
- * _Chain_Head
- */
-STATIC INLINE Chain_Node *_Chain_Head(
- Chain_Control *the_chain
-)
-{
- return (Chain_Node *) the_chain;
-}
-
-/*
- * _Chain_Tail
- */
-STATIC INLINE Chain_Node *_Chain_Tail(
- Chain_Control *the_chain
-)
-{
- return (Chain_Node *) &the_chain->permanent_null;
-}
-
-/*
- * _Chain_Is_empty
- */
-STATIC INLINE boolean _Chain_Is_empty(
- Chain_Control *the_chain
-)
-{
- return ( the_chain->first == _Chain_Tail( the_chain ) );
-}
-
-/*
- * _Chain_Is_first
- */
-STATIC INLINE boolean _Chain_Is_first(
- Chain_Node *the_node
-)
-{
- return ( the_node->previous == NULL );
-}
-
-/*
- * _Chain_Is_last
- */
-STATIC INLINE boolean _Chain_Is_last(
- Chain_Node *the_node
-)
-{
- return ( the_node->next == NULL );
-}
-
-/*
- * _Chain_Has_only_one_node
- */
-STATIC INLINE boolean _Chain_Has_only_one_node(
- Chain_Control *the_chain
-)
-{
- return ( the_chain->first == the_chain->last );
-}
-
-/*
- * _Chain_Is_head
- */
-STATIC INLINE boolean _Chain_Is_head(
- Chain_Control *the_chain,
- Chain_Node *the_node
-)
-{
- return ( the_node == _Chain_Head( the_chain ) );
-}
-
-/*
- * _Chain_Is_tail
- */
-STATIC INLINE boolean _Chain_Is_tail(
- Chain_Control *the_chain,
- Chain_Node *the_node
-)
-{
- return ( the_node == _Chain_Tail( the_chain ) );
-}
-
-/*
- * Chain_Initialize_empty
- */
-STATIC INLINE void _Chain_Initialize_empty(
- Chain_Control *the_chain
-)
-{
- the_chain->first = _Chain_Tail( the_chain );
- the_chain->permanent_null = NULL;
- the_chain->last = _Chain_Head( the_chain );
-}
-
-/*
- * _Chain_Extract_unprotected
- */
-STATIC INLINE void _Chain_Extract_unprotected(
- Chain_Node *the_node
-)
-{
- Chain_Node *next;
- Chain_Node *previous;
-
- next = the_node->next;
- previous = the_node->previous;
- next->previous = previous;
- previous->next = next;
-}
-
-/*
- * _Chain_Get_first_unprotected
- */
-STATIC INLINE Chain_Node *_Chain_Get_first_unprotected(
- Chain_Control *the_chain
-)
-{
- Chain_Node *return_node;
- Chain_Node *new_first;
-
- return_node = the_chain->first;
- new_first = return_node->next;
- the_chain->first = new_first;
- new_first->previous = _Chain_Head( the_chain );
-
- return return_node;
-}
-
-/*
- * Chain_Get_unprotected
- */
-STATIC INLINE Chain_Node *_Chain_Get_unprotected(
- Chain_Control *the_chain
-)
-{
- if ( !_Chain_Is_empty( the_chain ) )
- return _Chain_Get_first_unprotected( the_chain );
- else
- return NULL;
-}
-
-/*
- * _Chain_Insert_unprotected
- */
-STATIC INLINE void _Chain_Insert_unprotected(
- Chain_Node *after_node,
- Chain_Node *the_node
-)
-{
- Chain_Node *before_node;
-
- the_node->previous = after_node;
- before_node = after_node->next;
- after_node->next = the_node;
- the_node->next = before_node;
- before_node->previous = the_node;
-}
-
-/*
- * _Chain_Append_unprotected
- */
-STATIC INLINE void _Chain_Append_unprotected(
- Chain_Control *the_chain,
- Chain_Node *the_node
-)
-{
- Chain_Node *old_last_node;
-
- the_node->next = _Chain_Tail( the_chain );
- old_last_node = the_chain->last;
- the_chain->last = the_node;
- old_last_node->next = the_node;
- the_node->previous = old_last_node;
-}
-
-/*
- * _Chain_Prepend_unprotected
- */
-STATIC INLINE void _Chain_Prepend_unprotected(
- Chain_Control *the_chain,
- Chain_Node *the_node
-)
-{
- _Chain_Insert_unprotected( _Chain_Head( the_chain ), the_node );
-
-}
-
-/*
- * _Chain_Prepend
- */
-STATIC INLINE void _Chain_Prepend(
- Chain_Control *the_chain,
- Chain_Node *the_node
-)
-{
- _Chain_Insert( _Chain_Head( the_chain ), the_node );
-}
-
-#endif
-/* end of include file */
diff --git a/doc/tools/bmenu/system.h b/doc/tools/bmenu/system.h
deleted file mode 100644
index c1dec959ed..0000000000
--- a/doc/tools/bmenu/system.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * COPYRIGHT (c) 1988-2002.
- * On-Line Applications Research Corporation (OAR).
- * All rights reserved.
- */
-
-#ifndef __SYSTEM_h
-#define __SYSTEM_h
-
-#define STATIC static
-#define INLINE inline
-
-#ifndef NULL
-#define NULL 0
-#endif
-
-typedef unsigned int boolean;
-
-#if !defined( TRUE ) || (TRUE != 1)
-#undef TRUE
-#define TRUE (1)
-#endif
-
-#if !defined( FALSE ) || (FALSE != 0)
-#undef FALSE
-#define FALSE 0
-#endif
-
-#endif
diff --git a/doc/tools/configure.ac b/doc/tools/configure.ac
deleted file mode 100644
index f67f450706..0000000000
--- a/doc/tools/configure.ac
+++ /dev/null
@@ -1,28 +0,0 @@
-dnl Process this file with autoconf to produce a configure script.
-dnl NOTE: This is a very coarse port to automake
-AC_PREREQ([2.69])
-
-AC_INIT([rtems-doc-tools],[_RTEMS_VERSION],[https://devel.rtems.org/newticket])
-AC_CONFIG_SRCDIR([word-replace2])
-RTEMS_TOP([../..])
-
-AM_INIT_AUTOMAKE([no-define foreign 1.12.2])
-dnl Checks for programs.
-AC_PROG_CC
-
-dnl Checks for libraries.
-
-dnl Checks for header files.
-AC_HEADER_STDC
-AC_CHECK_HEADERS(limits.h)
-
-dnl Checks for typedefs, structures, and compiler characteristics.
-
-dnl Checks for library functions.
-AC_CHECK_FUNCS(strdup strstr)
-
-# texi2www/Makefile
-AC_CONFIG_FILES([Makefile
-bmenu/Makefile
-])
-AC_OUTPUT
diff --git a/doc/tools/word-replace2 b/doc/tools/word-replace2
deleted file mode 100644
index 31d36a6ca5..0000000000
--- a/doc/tools/word-replace2
+++ /dev/null
@@ -1,98 +0,0 @@
-#!/usr/bin/perl
-
-eval "exec /usr/local/bin/perl -S $0 $*"
- if $running_under_some_shell;
-
-require 'getopts.pl';
-&Getopts("p:vh"); # help, pattern file, verbose,
-
-if ($opt_h || ! $opt_p) {
- print STDERR <<NO_MORE_HELP;
-word-replace2
-
- Replace *words* with patterns. Pattern file specifies which patterns
- to replace on each line. All patterns are wrapped with perl \\b regexp
- specifiers.
-
-Usage: $0 [-v] -p pattern-file files to replace
-
- -v -- possibly more verbose
- -p file -- pattern file
- -h -- help
-
- anything else == this help message
-
-Pattern file looks like this:
-
-# Example:
-# ignores all lines with beginning with # or not exactly 2 fields
-_Dorky_Name rtems_dorky_name # comments, and blank lines are cool
-_Dorky_Name2 rtems_dorky_name2 # comments, and blank lines are cool
-NO_MORE_HELP
- exit 0;
-}
-
-$verbose = $opt_v;
-$pattern_file = $opt_p;
-
-# make standard outputs unbuffered (so the '.'s come out ok)
-$oldfh = select(STDERR); $| = 1; select($oldfh);
-$oldfh = select(STDOUT); $| = 1; select($oldfh);
-
-# pull in the patterns
-open(PATTERNS, "<$pattern_file") ||
- die "could not open $pattern_file: $!, crapped out at";
-
-
-
-foreach (<PATTERNS>)
-{
- chop;
- s/#.*//;
- next if /^$/;
- ($orig, $new, $junk, @rest) = split;
- next if ( ! $orig || ! $new || $junk); # <2 or >2 patterns
- die "pattern appears 2x: '$orig' in '$pattern_file'--" if defined($patterns{$orig});
- $patterns{$orig} = $new;
-}
-close PATTERNS;
-# walk thru each line in each file
-
-$infile = '-' ;
-$outfile = '-' ;
-
-if ( $#ARGV > -1 )
-{
- $infile = "@ARGV[0]" ;
- shift @ARGV ;
-}
-
-if ( $#ARGV > -1 )
-{
- $outfile = "@ARGV[0]" ;
- shift @ARGV ;
-}
-
-open (INFILE, "<$infile") ||
- die "could not open input file $infile: $!";
-$line = join('',<INFILE>) ;
-close INFILE;
-
-
-print STDERR "$outfile\t";
-
-open (OUTFILE, ">$outfile") ||
- die "could not open output file $outfile: $!";
-
-foreach $key (keys %patterns)
-{
- if ( $line =~ s/\b$key\b/$patterns{$key}/ge )
- {
- print STDERR "." ;
- }
-}
-
-print OUTFILE $line ;
-
-print STDERR "\n";
-close OUTFILE;
diff --git a/doc/user/Makefile.am b/doc/user/Makefile.am
deleted file mode 100644
index ef9fdfd5eb..0000000000
--- a/doc/user/Makefile.am
+++ /dev/null
@@ -1,227 +0,0 @@
-#
-# COPYRIGHT (c) 1988-2011
-# On-Line Applications Research Corporation (OAR).
-# All rights reserved.
-
-PROJECT = c_user
-
-include $(top_srcdir)/project.am
-include $(top_srcdir)/main.am
-
-FILES = bsp.texi example.texi glossary.texi preface.texi
-
-GENERATED_FILES = overview.texi concepts.texi datatypes.texi init.texi \
- task.texi intr.texi clock.texi timer.texi sem.texi msg.texi event.texi \
- signal.texi part.texi region.texi dpmem.texi io.texi fatal.texi \
- schedule.texi rtmon.texi barrier.texi bsp.texi userext.texi conf.texi \
- mp.texi stackchk.texi cpuuse.texi object.texi chains.texi rbtree.texi \
- timespec.texi cbs.texi dirstat.texi smp.texi libpci.texi linkersets.texi
-
-COMMON_FILES += $(top_srcdir)/common/cpright.texi
-
-info_TEXINFOS = c_user.texi
-c_user_TEXINFOS = $(FILES) $(COMMON_FILES) $(GENERATED_FILES)
-
-TXT_FILES = rtemsarc.txt rtemspie.txt states.txt
-
-PNG_FILES = rtemsarc.png rtemspie.png states.png ObjectId-32Bits.png \
- ObjectId-16Bits.png semaphore_attributes.png
-
-EPS_IMAGES = rtemspie.eps states.eps ObjectId-32Bits.eps \
- ObjectId-32Bits.eps semaphore_attributes.eps
-$(PROJECT).dvi: $(EPS_IMAGES)
-
-PDF_IMAGES = rtemspie.pdf states.pdf ObjectId-16Bits.pdf \
- ObjectId-32Bits.pdf semaphore_attributes.pdf
-CLEANFILES += $(PDF_IMAGES)
-
-if USE_HTML
-html_project_DATA += $(PNG_FILES)
-endif
-
-overview.texi: overview.t
- $(BMENU2) -p "Preface" \
- -u "Top" \
- -n "Key Concepts" < $< > $@
-
-concepts.texi: concepts.t
- $(BMENU2) -p "Overview Manual Organization" \
- -u "Top" \
- -n "RTEMS Data Types" < $< > $@
-
-datatypes.texi: datatypes.t
- $(BMENU2) -p "Key Concepts Memory Management" \
- -u "Top" \
- -n "Scheduling Concepts" < $< > $@
-
-schedule.texi: schedule.t
- $(BMENU2) -p "RTEMS Data Types List of Data Types" \
- -u "Top" \
- -n "Initialization Manager" < $< > $@
-
-init.texi: init.t
- $(BMENU2) -p "Scheduling Concepts Task State Transitions" \
- -u "Top" \
- -n "Task Manager" < $< > $@
-
-task.texi: task.t
- $(BMENU2) -p "Initialization Manager SHUTDOWN_EXECUTIVE - Shutdown RTEMS" \
- -u "Top" \
- -n "Interrupt Manager" < $< > $@
-
-intr.texi: intr.t
- $(BMENU2) -p "Task Manager TASK_VARIABLE_DELETE - Remove per task variable" \
- -u "Top" \
- -n "Clock Manager" < $< > $@
-
-clock.texi: clock.t
- $(BMENU2) \
- -p "Interrupt Manager INTERRUPT_IS_IN_PROGRESS - Is an ISR in Progress" \
- -u "Top" \
- -n "Timer Manager" < $< > $@
-
-timer.texi: timer.t
- $(BMENU2) -p "Clock Manager CLOCK_TICK - Announce a clock tick" \
- -u "Top" \
- -n "Rate Monotonic Manager" < $< > $@
-
-rtmon.texi: rtmon.t
- $(BMENU2) -p "Timer Manager TIMER_RESET - Reset an interval timer" \
- -u "Top" \
- -n "Semaphore Manager" < $< > $@
-
-sem.texi: sem.t
- $(BMENU2) -p "Rate Monotonic Manager RATE_MONOTONIC_REPORT_STATISTICS - Print period statistics report" \
- -u "Top" \
- -n "Barrier Manager" < $< > $@
-
-barrier.texi: barrier.t
- $(BMENU2) -p "Semaphore Manager SEMAPHORE_SET_PRIORITY - Set priority by scheduler for a semaphore" \
- -u "Top" \
- -n "Message Manager" < $< > $@
-
-msg.texi: msg.t
- $(BMENU2) -p "Barrier Manager BARRIER_RELEASE - Release a barrier" \
- -u "Top" \
- -n "Event Manager" < $< > $@
-
-event.texi: event.t
- $(BMENU2) \
- -p "Message Manager MESSAGE_QUEUE_FLUSH - Flush all messages on a queue" \
- -u "Top" \
- -n "Signal Manager" < $< > $@
-
-signal.texi: signal.t
- $(BMENU2) -p "Event Manager EVENT_RECEIVE - Receive event condition" \
- -u "Top" \
- -n "Partition Manager" < $< > $@
-
-part.texi: part.t
- $(BMENU2) -p "Signal Manager SIGNAL_SEND - Send signal set to a task" \
- -u "Top" \
- -n "Region Manager" < $< > $@
-
-region.texi: region.t
- $(BMENU2) \
--p "Partition Manager PARTITION_RETURN_BUFFER - Return buffer to a partition" \
- -u "Top" \
- -n "Dual-Ported Memory Manager" < $< > $@
-
-dpmem.texi: dpmem.t
- $(BMENU2) \
- -p "Region Manager REGION_RESIZE_SEGMENT - Change size of a segment" \
- -u "Top" \
- -n "I/O Manager" < $< > $@
-
-io.texi: io.t
- $(BMENU2) -p "Dual-Ported Memory Manager PORT_INTERNAL_TO_EXTERNAL - Convert internal to external address" \
- -u "Top" \
- -n "Fatal Error Manager" < $< > $@
-
-fatal.texi: fatal.t
- $(BMENU2) -p "I/O Manager IO_CONTROL - Special device services" \
- -u "Top" \
- -n "Board Support Packages" < $< > $@
-
-bsp.texi: bsp.t
- $(BMENU2) -p "Fatal Error Manager INTERNAL_ERROR_TEXT - Returns a text for an internal error code" \
- -u "Top" \
- -n "User Extensions Manager" < $< > $@
-
-userext.texi: userext.t
- $(BMENU2) -p "Board Support Packages Heterogeneous Systems" \
- -u "Top" \
- -n "Configuring a System" < $< > $@
-
-conf.texi: conf.t
- $(BMENU2) -p "User Extensions Manager EXTENSION_DELETE - Delete a extension set" \
- -u "Top" \
- -n "Multiprocessing Manager" < $< > $@
-
-mp.texi: mp.t
- $(BMENU2) -p "Configuring a System Configuration Data Structures" \
- -u "Top" \
- -n "Symmetric Multiprocessing Services" < $< > $@
-
-smp.texi: smp.t
- $(BMENU2) -p "Multiprocessing Manager MULTIPROCESSING_ANNOUNCE - Announce the arrival of a packet"\
- -u "Top" \
- -n "PCI Library" < $< > $@
-
-libpci.texi: libpci.t
- $(BMENU2) -p "Symmetric Multiprocessing Services TASK_SET_AFFINITY - Set task processor affinity" \
- -u "Top" \
- -n "Stack Bounds Checker" < $< > $@
-
-stackchk.texi: stackchk.t
- $(BMENU2) -p "PCI Library PCI Shell command" \
- -u "Top" \
- -n "CPU Usage Statistics" < $< > $@
-
-cpuuse.texi: cpuuse.t
- $(BMENU2) -p "Stack Bounds Checker STACK_CHECKER_REPORT_USAGE - Report Task Stack Usage" \
- -u "Top" \
- -n "Object Services" < $< > $@
-
-object.texi: object.t
- $(BMENU2) -p "CPU Usage Statistics cpu_usage_reset - Reset CPU Usage Statistics" \
- -u "Top" \
- -n "Chains" < $< > $@
-
-chains.texi: chains.t
- $(BMENU2) -p "Object Services OBJECT_GET_CLASS_INFORMATION - Obtain Class Information" \
- -u "Top" \
- -n "Red-Black Trees" < $< > $@
-
-rbtree.texi: rbtree.t
- $(BMENU2) -p "Chains Prepend a Node" \
- -u "Top" \
- -n "Timespec Helpers" < $< > $@
-
-timespec.texi: timespec.t
- $(BMENU2) -p "Red-Black Trees Documentation for the Red-Black Tree Directives" \
- -u "Top" \
- -n "Constant Bandwidth Server Scheduler API" < $< > $@
-
-cbs.texi: cbs.t
- $(BMENU2) -p "Timespec Helpers TIMESPEC_FROM_TICKS - Convert Ticks to struct timespec Representation" \
- -u "Top" \
- -n "Directive Status Codes" < $< > $@
-
-dirstat.texi: dirstat.t
- $(BMENU2) -p "Constant Bandwidth Server Scheduler API CBS_GET_APPROVED_BUDGET - Get scheduler approved execution time" \
- -u "Top" \
- -n "Linker Sets" < $< > $@
-
-linkersets.texi: linkersets.t
- $(BMENU2) -p "Directive Status Codes STATUS_TEXT - Returns the enumeration name for a status code" \
- -u "Top" \
- -n "Example Application" < $< > $@
-
-EXTRA_DIST = bsp.t cbs.t clock.t chains.t concepts.t cpuuse.t datatypes.t conf.t \
- dpmem.t event.t fatal.t init.t intr.t io.t mp.t msg.t overview.t \
- part.t rbtree.t region.t rtmon.t sem.t schedule.t signal.t stackchk.t \
- task.t timer.t userext.t dirstat.t $(TXT_FILES) $(PNG_FILES) $(EPS_IMAGES) \
- $(noinst_DATA) linkersets.t
-
-CLEANFILES += c_user.info c_user.info-? c_user.info-??
diff --git a/doc/user/ObjectId-16Bits.eps b/doc/user/ObjectId-16Bits.eps
deleted file mode 100644
index cad4da432f..0000000000
--- a/doc/user/ObjectId-16Bits.eps
+++ /dev/null
@@ -1,3797 +0,0 @@
-%!PS-Adobe-3.0 EPSF-3.0
-%%Creator: GIMP PostScript file plugin V 1.17 by Peter Kirchgessner
-%%Title: ObjectId-16Bits.eps
-%%CreationDate: Sun Feb 24 10:04:31 2013
-%%DocumentData: Clean7Bit
-%%LanguageLevel: 2
-%%Pages: 1
-%%BoundingBox: 14 14 675 404
-%%EndComments
-%%BeginProlog
-% Use own dictionary to avoid conflicts
-10 dict begin
-%%EndProlog
-%%Page: 1 1
-% Translate for offset
-14.173228346456694 14.173228346456694 translate
-% Translate to begin of first scanline
-0 389.72094030064426 translate
-659.93385826771657 -389.72094030064426 scale
-% Image geometry
-1375 812 8
-% Transformation matrix
-[ 1375 0 0 812 0 0 ]
-% Strings to hold RGB-samples per scanline
-/rstr 1375 string def
-/gstr 1375 string def
-/bstr 1375 string def
-{currentfile /ASCII85Decode filter /RunLengthDecode filter rstr readstring pop}
-{currentfile /ASCII85Decode filter /RunLengthDecode filter gstr readstring pop}
-{currentfile /ASCII85Decode filter /RunLengthDecode filter bstr readstring pop}
-true 3
-%%BeginData: 223862 ASCII Bytes
-colorimage
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-df0<Gr=Ar]JO"cOJO$"r![81.JO"cOJO"cOJO"cOlp(P-r=As]df4g~>
-df0<Gr=Ar]JO"cOJO$"r![81.JO"cOJO"cOJO"cOlp(P-r=As]df4g~>
-df0<Gr=Ar]JO"cOJO$"r![81.JO"cOJO"cOJO"cOlp(P-r=As]df4g~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcD_L!*J_U!9\q5O8f8h!2"iBJcC<$JcC<$JcG*:!5JI4!2%^>J,~>
-df0<^r;ZhiJcD_L!*J_U!9\q5O8f8h!2"iBJcC<$JcC<$JcG*:!5JI4!2%^>J,~>
-df0<^r;ZhiJcD_L!*J_U!9\q5O8f8h!2"iBJcC<$JcC<$JcG*:!5JI4!2%^>J,~>
-df0<^r;ZhiJcD_L!$Lb2!8iA-O8f8h!2"iBJcC<$JcC<$JcG*:!5JI4!2%^>J,~>
-df0<^r;ZhiJcD_L!$Lb2!8iA-O8f8h!2"iBJcC<$JcC<$JcG*:!5JI4!2%^>J,~>
-df0<^r;ZhiJcD_L!$Lb2!8iA-O8f8h!2"iBJcC<$JcC<$JcG*:!5JI4!2%^>J,~>
-df0<^r;ZhiJcD_L!$Lb2!8iA-O8f8h!2"iB\c2`_^VBbtqEP1.J![qEJcC<$JcC<$`r?%Rr;Zhi
-df4g~>
-df0<^r;ZhiJcD_L!$Lb2!8iA-O8f8h!2"iB\c2`_^VBbtqEP1.J![qEJcC<$JcC<$`r?%Rr;Zhi
-df4g~>
-df0<^r;ZhiJcD_L!$Lb2!8iA-O8f8h!2"iB\c2`_^VBbtqEP1.J![qEJcC<$JcC<$`r?%Rr;Zhi
-df4g~>
-df0<^r;ZhiJcG-;!70kY!3c45!;GIP!$Lb2!8iA-O8f8h!2"iB^&J3/Y@o'I!!=WWO2$8GJcC<$
-JcEmm!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!70kY!3c45!;GIP!$Lb2!8iA-O8f8h!2"iB^&J3/Y@o'I!!=WWO2$8GJcC<$
-JcEmm!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!70kY!3c45!;GIP!$Lb2!8iA-O8f8h!2"iB^&J3/Y@o'I!!=WWO2$8GJcC<$
-JcEmm!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2&'I"<]sZ^\?pk!$Lb2!8iA-O8f8h!2"iB_#FJnLH+Dr!Do\Fs+13$s+13p
-rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2&'I"<]sZ^\?pk!$Lb2!8iA-O8f8h!2"iB_#FJnLH+Dr!Do\Fs+13$s+13p
-rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2&'I"<]sZ^\?pk!$Lb2!8iA-O8f8h!2"iB_#FJnLH+Dr!Do\Fs+13$s+13p
-rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%mD!C3RIrr=22!!(pLrrD6P^AuT2s/l;&?iZgMs2+d:k@!6K!YB%cJcG?A
-n@nttJcG0<n@nttJcD#8!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2%mD!C3RIrr=22!!(pLrrD6P^AuT2s/l;&?iZgMs2+d:k@!6K!YB%cJcG?A
-n@nttJcG0<n@nttJcD#8!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2%mD!C3RIrr=22!!(pLrrD6P^AuT2s/l;&?iZgMs2+d:k@!6K!YB%cJcG?A
-n@nttJcG0<n@nttJcD#8!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2%gB!Z6^]m/I&.n,NIGp&>#anGiPSJcDkP!al##JcE[g!q1@>h#IL)TD*p:
-pAaU^!8iA-mf2bV!8iA-Q2^j!r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2%gB!Z6^]m/I&.n,NIGp&>#anGiPSJcDkP!al##JcE[g!q1@>h#IL)TD*p:
-pAaU^!8iA-mf2bV!8iA-Q2^j!r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2%gB!Z6^]m/I&.n,NIGp&>#anGiPSJcDkP!al##JcE[g!q1@>h#IL)TD*p:
-pAaU^!8iA-mf2bV!8iA-Q2^j!r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2%a@!?fGMrr=22!!(pLrrA\]!!#98s/l;&?iZgMs2P'?pP0=5!!4!emt(N6
-s6p!ghgtgqs6p!ghgtfmrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%a@!?fGMrr=22!!(pLrrA\]!!#98s/l;&?iZgMs2P'?pP0=5!!4!emt(N6
-s6p!ghgtgqs6p!ghgtfmrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%a@!?fGMrr=22!!(pLrrA\]!!#98s/l;&?iZgMs2P'?pP0=5!!4!emt(N6
-s6p!ghgtgqs6p!ghgtfmrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%[>!.XG:!$Lb2!8mJL!2&c]!'l,8XoAH1!2"iBa8Z1t.+J:t&:slVs6p!g
-hgtgqs6p!ghgtfmrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%[>!.XG:!$Lb2!8mJL!2&c]!'l,8XoAH1!2"iBa8Z1t.+J:t&:slVs6p!g
-hgtgqs6p!ghgtfmrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%[>!.XG:!$Lb2!8mJL!2&c]!'l,8XoAH1!2"iBa8Z1t.+J:t&:slVs6p!g
-hgtgqs6p!ghgtfmrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%X=!(cSY!$Lb2!8mJL!2&c]!'l,8XoAH1!2"iBaSu:]&CUW1s7lW`!!(o-
-s6fpV!!(o-s-<Ta^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2%X=!(cSY!$Lb2!8mJL!2&c]!'l,8XoAH1!2"iBaSu:]&CUW1s7lW`!!(o-
-s6fpV!!(o-s-<Ta^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2%X=!(cSY!$Lb2!8mJL!2&c]!'l,8XoAH1!2"iBaSu:]&CUW1s7lW`!!(o-
-s6fpV!!(o-s-<Ta^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2%U<!.XM<!$Lb2!8mJL!2&c]!'l,8XoAH1!2"iBao;C>#gr^(s7lW`!!(o-
-s6fpV!!(o-s-<Ta^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2%U<!.XM<!$Lb2!8mJL!2&c]!'l,8XoAH1!2"iBao;C>#gr^(s7lW`!!(o-
-s6fpV!!(o-s-<Ta^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2%U<!.XM<!$Lb2!8mJL!2&c]!'l,8XoAH1!2"iBao;C>#gr^(s7lW`!!(o-
-s6fpV!!(o-s-<Ta^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2%R;!4VLu!$Lb2!8mJL!2&c]!'l,8XoAH1!2"iBb5VHsciAXsq#Bg`!8iA-
-mf2bV!8iA-Q2^j!r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2%R;!4VLu!$Lb2!8mJL!2&c]!'l,8XoAH1!2"iBb5VHsciAXsq#Bg`!8iA-
-mf2bV!8iA-Q2^j!r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2%R;!4VLu!$Lb2!8mJL!2&c]!'l,8XoAH1!2"iBb5VHsciAXsq#Bg`!8iA-
-mf2bV!8iA-Q2^j!r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2%R;!>+_jrr=22!!(pLrrA\]!!#98s/l;&?iZgMs3(EBB[6[0s7lW`!!(o-
-s6fpV!!(o-s-<Ta^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2%R;!>+_jrr=22!!(pLrrA\]!!#98s/l;&?iZgMs3(EBB[6[0s7lW`!!(o-
-s6fpV!!(o-s-<Ta^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2%R;!>+_jrr=22!!(pLrrA\]!!#98s/l;&?iZgMs3(EBB[6[0s7lW`!!(o-
-s6fpV!!(o-s-<Ta^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2%O:!139V!*J_U!9a%T!2&c]!'l,8XoAH1!2"iBbl7[8c2`Fqq#Bg`!8iA-
-mf2bV!8iA-Q2^j!r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2%O:!139V!*J_U!9a%T!2&c]!'l,8XoAH1!2"iBbl7[8c2`Fqq#Bg`!8iA-
-mf2bV!8iA-Q2^j!r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2%O:!139V!*J_U!9a%T!2&c]!'l,8XoAH1!2"iBbl7[8c2`Fqq#Bg`!8iA-
-mf2bV!8iA-Q2^j!r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2%O:!'&I-!2&c]!'l,8XoAH1!2"iBc2Rgj#gNF$s7lW`!!(o-s6fpV!!(o-
-s-<Ta^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2%O:!'&I-!2&c]!'l,8XoAH1!2"iBc2Rgj#gNF$s7lW`!!(o-s6fpV!!(o-
-s-<Ta^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2%O:!'&I-!2&c]!'l,8XoAH1!2"iBc2Rgj#gNF$s7lW`!!(o-s6fpV!!(o-
-s-<Ta^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2%L9!700p!2&c]!'l,8XoAH1!2"iBcMmq6+QNM'+@,8nJcGNFn,NIGJcG0<
-n,NIGJcD#8!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2%L9!700p!2&c]!'l,8XoAH1!2"iBcMmq6+QNM'+@,8nJcGNFn,NIGJcG0<
-n,NIGJcD#8!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2%L9!700p!2&c]!'l,8XoAH1!2"iBcMmq6+QNM'+@,8nJcGNFn,NIGJcG0<
-n,NIGJcD#8!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2%L9!/K)(!2&c]!'l,8XoAH1!2"iBcMml@kl:es=I7qBrr_G^?m,"?JcGNF
-n,NIGJcG0<n,NIGJcD#8!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2%L9!/K)(!2&c]!'l,8XoAH1!2"iBcMml@kl:es=I7qBrr_G^?m,"?JcGNF
-n,NIGJcG0<n,NIGJcD#8!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2%L9!/K)(!2&c]!'l,8XoAH1!2"iBcMml@kl:es=I7qBrr_G^?m,"?JcGNF
-n,NIGJcG0<n,NIGJcD#8!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2&`\!'p>Z"2D<a.-pp6B[m%^TCDm]5_8s;rrQR.T7R$grrA,F!!*q/oD\ip
-0_>?rs7lW`!!(o-s6fpV!!(o-s-<Ta^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2&`\!'p>Z"2D<a.-pp6B[m%^TCDm]5_8s;rrQR.T7R$grrA,F!!*q/oD\ip
-0_>?rs7lW`!!(o-s6fpV!!(o-s-<Ta^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2&`\!'p>Z"2D<a.-pp6B[m%^TCDm]5_8s;rrQR.T7R$grrA,F!!*q/oD\ip
-0_>?rs7lW`!!(o-s6fpV!!(o-s-<Ta^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2&`\!'p2V!KRf[!!#R>rrA\]!!#98s/l;&?iZgMs3UcHk6UDS!YC.]nG`Nu
-5kY2/s7lW`!!(o-s6fpV!!(o-s-<Ta^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2&`\!'p2V!KRf[!!#R>rrA\]!!#98s/l;&?iZgMs3UcHk6UDS!YC.]nG`Nu
-5kY2/s7lW`!!(o-s6fpV!!(o-s-<Ta^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2&`\!'p2V!KRf[!!#R>rrA\]!!#98s/l;&?iZgMs3UcHk6UDS!YC.]nG`Nu
-5kY2/s7lW`!!(o-s6fpV!!(o-s-<Ta^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2&`\!'p/U!4V@r!&2q&!2&c]!'l,8XoAH1!2"iBd/O)bli7&/cg:Z4^Gtug
-i;Wl9^\=8un,NIGdf0C+^\=E$n,NIGJcD#8!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2&`\!'p/U!4V@r!&2q&!2&c]!'l,8XoAH1!2"iBd/O)bli7&/cg:Z4^Gtug
-i;Wl9^\=8un,NIGdf0C+^\=E$n,NIGJcD#8!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2&`\!'p/U!4V@r!&2q&!2&c]!'l,8XoAH1!2"iBd/O)bli7&/cg:Z4^Gtug
-i;Wl9^\=8un,NIGdf0C+^\=E$n,NIGJcD#8!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2&`\!'p,T!*J[i!$Kek!2&c]!'o?>!p@%Br]gHCr;cg^"&OKNa+=9OrrQR.
-T7R$irrMj"m/R/@kNW!ILC!_Vkl1hTYAc`l)#=480L/0aa2n8ghhPl15QCcq5X9:tkl:,P!8lN1
-"m;Lc5X5nW!!FE0:lirHrsR_>BL"f_!"_C\E4>'2n,NIGh#@GjO'qrP!"f,0!%@h3"*fmAmt(M_
-rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2&`\!'p,T!*J[i!$Kek!2&c]!'o?>!p@%Br]gHCr;cg^"&OKNa+=9OrrQR.
-T7R$irrMj"m/R/@kNW!ILC!_Vkl1hTYAc`l)#=480L/0aa2n8ghhPl15QCcq5X9:tkl:,P!8lN1
-"m;Lc5X5nW!!FE0:lirHrsR_>BL"f_!"_C\E4>'2n,NIGh#@GjO'qrP!"f,0!%@h3"*fmAmt(M_
-rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2&`\!'p,T!*J[i!$Kek!2&c]!'o?>!p@%Br]gHCr;cg^"&OKNa+=9OrrQR.
-T7R$irrMj"m/R/@kNW!ILC!_Vkl1hTYAc`l)#=480L/0aa2n8ghhPl15QCcq5X9:tkl:,P!8lN1
-"m;Lc5X5nW!!FE0:lirHrsR_>BL"f_!"_C\E4>'2n,NIGh#@GjO'qrP!"f,0!%@h3"*fmAmt(M_
-rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2&`\!'p,T!6=O.!&4$E!711b!3c8!!0@&-!)W1c!$Lf]!:TIX"8AEa+RT43
--ucZiJcG!7!al##JcF-t!0?LI!C6DBrrL.gqZ,s^!l&t>mf3Fq8;H*ds6tL<n,!%ckEdmq!!3F.
-ht$dI^\`NM!!%!/IfQ\?rr`#!BIN<L!shGap[%qLIfSs6rrVAM0_GDI#[$!TrrBh2J+*F<E:SJY
-YOMPna(RI#!!<d/Qf!Aod/O*\r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'p,T!6=O.!&4$E!711b!3c8!!0@&-!)W1c!$Lf]!:TIX"8AEa+RT43
--ucZiJcG!7!al##JcF-t!0?LI!C6DBrrL.gqZ,s^!l&t>mf3Fq8;H*ds6tL<n,!%ckEdmq!!3F.
-ht$dI^\`NM!!%!/IfQ\?rr`#!BIN<L!shGap[%qLIfSs6rrVAM0_GDI#[$!TrrBh2J+*F<E:SJY
-YOMPna(RI#!!<d/Qf!Aod/O*\r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'p,T!6=O.!&4$E!711b!3c8!!0@&-!)W1c!$Lf]!:TIX"8AEa+RT43
--ucZiJcG!7!al##JcF-t!0?LI!C6DBrrL.gqZ,s^!l&t>mf3Fq8;H*ds6tL<n,!%ckEdmq!!3F.
-ht$dI^\`NM!!%!/IfQ\?rr`#!BIN<L!shGap[%qLIfSs6rrVAM0_GDI#[$!TrrBh2J+*F<E:SJY
-YOMPna(RI#!!<d/Qf!Aod/O*\r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'p)S!$Lb2!*Jjm!2&c]!+>['!$Ktq!8mDJ!ln[[k5YQSTD*p:m/I,p
-!2"iBdf0@B)"%A))!C#\!V^:*!:BdeY;#/?!FXgMs6p!ghu*KUpNQu5!!.'-o`"o@g&M+\nG`Ra
-Nu7*]!Z7!mmf2bV!8m_S!r$pFn,NK.n+?V[J(al&@.XC"n!>Hc!!4QnhgtgVrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2&`\!'p)S!$Lb2!*Jjm!2&c]!+>['!$Ktq!8mDJ!ln[[k5YQSTD*p:m/I,p
-!2"iBdf0@B)"%A))!C#\!V^:*!:BdeY;#/?!FXgMs6p!ghu*KUpNQu5!!.'-o`"o@g&M+\nG`Ra
-Nu7*]!Z7!mmf2bV!8m_S!r$pFn,NK.n+?V[J(al&@.XC"n!>Hc!!4QnhgtgVrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2&`\!'p)S!$Lb2!*Jjm!2&c]!+>['!$Ktq!8mDJ!ln[[k5YQSTD*p:m/I,p
-!2"iBdf0@B)"%A))!C#\!V^:*!:BdeY;#/?!FXgMs6p!ghu*KUpNQu5!!.'-o`"o@g&M+\nG`Ra
-Nu7*]!Z7!mmf2bV!8m_S!r$pFn,NK.n+?V[J(al&@.XC"n!>Hc!!4QnhgtgVrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2&`\!'p)S!(cSZ!-n,8!2&c]!+>['!$Ktq!8mJL!QR1Z!!3^FhgtgqrrQR.
-T7R$jrrADR!!*A?ir9%W#lXhmrrK;Wj8]3ghsCC4!!(pTrrK#7m/R/0ht@!LJ(al&@.O=!pQ$0Q
-!!*ptn,MkW!8mbT!N-e%!!+5"p&>#Ag&M+\p&>*^GR3:/!D'DFs4.,L^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2&`\!'p)S!(cSZ!-n,8!2&c]!+>['!$Ktq!8mJL!QR1Z!!3^FhgtgqrrQR.
-T7R$jrrADR!!*A?ir9%W#lXhmrrK;Wj8]3ghsCC4!!(pTrrK#7m/R/0ht@!LJ(al&@.O=!pQ$0Q
-!!*ptn,MkW!8mbT!N-e%!!+5"p&>#Ag&M+\p&>*^GR3:/!D'DFs4.,L^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2&`\!'p)S!(cSZ!-n,8!2&c]!+>['!$Ktq!8mJL!QR1Z!!3^FhgtgqrrQR.
-T7R$jrrADR!!*A?ir9%W#lXhmrrK;Wj8]3ghsCC4!!(pTrrK#7m/R/0ht@!LJ(al&@.O=!pQ$0Q
-!!*ptn,MkW!8mbT!N-e%!!+5"p&>#Ag&M+\p&>*^GR3:/!D'DFs4.,L^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2&`\!'p)S!+>9r!13<W!2&c]!+>['!$Ktq!8mPN!Uj^Y!!%M"s6fmg?iZgM
-s3goI0^\o@LZ&17cO^'Vnc&XY5i;VBGjYP#!!M3Zs5,g$!!*q_pAY,Bg&M+\oD\j#(uYGq;"*rS
-n,NUKs8Ut9l2Ui%ch@A=J(al&@.sU$Y8H-s!$Hjmec,War;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'p)S!+>9r!13<W!2&c]!+>['!$Ktq!8mPN!Uj^Y!!%M"s6fmg?iZgM
-s3goI0^\o@LZ&17cO^'Vnc&XY5i;VBGjYP#!!M3Zs5,g$!!*q_pAY,Bg&M+\oD\j#(uYGq;"*rS
-n,NUKs8Ut9l2Ui%ch@A=J(al&@.sU$Y8H-s!$Hjmec,War;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'p)S!+>9r!13<W!2&c]!+>['!$Ktq!8mPN!Uj^Y!!%M"s6fmg?iZgM
-s3goI0^\o@LZ&17cO^'Vnc&XY5i;VBGjYP#!!M3Zs5,g$!!*q_pAY,Bg&M+\oD\j#(uYGq;"*rS
-n,NUKs8Ut9l2Ui%ch@A=J(al&@.sU$Y8H-s!$Hjmec,War;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'p)S!'p#R!6=^2!2&c]!+>['!$Ktq!8mSO!Oip%!!%M"s6fmg?iZgM
-s3puJhsLIF)#)qf!oJKWo)Aa:+Pm)!8FQ$In,NRJs0iR'!!*Yop\t5Cg&M+\o`"oPh>dR1ht$g:
-!!D-Y[h.a'!>+Ggrr@Q&!!$F%rrMRZh#IEtJcF:#!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2&`\!'p)S!'p#R!6=^2!2&c]!+>['!$Ktq!8mSO!Oip%!!%M"s6fmg?iZgM
-s3puJhsLIF)#)qf!oJKWo)Aa:+Pm)!8FQ$In,NRJs0iR'!!*Yop\t5Cg&M+\o`"oPh>dR1ht$g:
-!!D-Y[h.a'!>+Ggrr@Q&!!$F%rrMRZh#IEtJcF:#!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2&`\!'p)S!'p#R!6=^2!2&c]!+>['!$Ktq!8mSO!Oip%!!%M"s6fmg?iZgM
-s3puJhsLIF)#)qf!oJKWo)Aa:+Pm)!8FQ$In,NRJs0iR'!!*Yop\t5Cg&M+\o`"oPh>dR1ht$g:
-!!D-Y[h.a'!>+Ggrr@Q&!!$F%rrMRZh#IEtJcF:#!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2&`\!'p)S!%@@;!&4!D!2&c]!+>['!$Ktq!8mVP!Nuda!!%M"s6fmg?iZgM
-s3puJYO2AjO3R\*Y7TIh!@Zjps6p!hhga_f!(cka!.W]&!+>O#!V^!W!!*YWoDe:[!T/Cg!!#Ra
-rr@Q&!!$F&rrMRBg].<sJcF:#!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2&`\!'p)S!%@@;!&4!D!2&c]!+>['!$Ktq!8mVP!Nuda!!%M"s6fmg?iZgM
-s3puJYO2AjO3R\*Y7TIh!@Zjps6p!hhga_f!(cka!.W]&!+>O#!V^!W!!*YWoDe:[!T/Cg!!#Ra
-rr@Q&!!$F&rrMRBg].<sJcF:#!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2&`\!'p)S!%@@;!&4!D!2&c]!+>['!$Ktq!8mVP!Nuda!!%M"s6fmg?iZgM
-s3puJYO2AjO3R\*Y7TIh!@Zjps6p!hhga_f!(cka!.W]&!+>O#!V^!W!!*YWoDe:[!T/Cg!!#Ra
-rr@Q&!!$F&rrMRBg].<sJcF:#!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2&`\!'p,T!8$]?!2&i^!2&c]!+>['!$Ktq!8mYQ!2%sF!.TS"mf*>r!2"iB
-e,KDemf3A*pWid=O4aL6&C9nHn,NGJirB(Oq#:>Dg&M+\p\t9_38+?5+Ret&n,NGJirB(Oq#:>D
-g&M+\qYpTR.,+_%+G'RCrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2&`\!'p,T!8$]?!2&i^!2&c]!+>['!$Ktq!8mYQ!2%sF!.TS"mf*>r!2"iB
-e,KDemf3A*pWid=O4aL6&C9nHn,NGJirB(Oq#:>Dg&M+\p\t9_38+?5+Ret&n,NGJirB(Oq#:>D
-g&M+\qYpTR.,+_%+G'RCrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2&`\!'p,T!8$]?!2&i^!2&c]!+>['!$Ktq!8mYQ!2%sF!.TS"mf*>r!2"iB
-e,KDemf3A*pWid=O4aL6&C9nHn,NGJirB(Oq#:>Dg&M+\p\t9_38+?5+Ret&n,NGJirB(Oq#:>D
-g&M+\qYpTR.,+_%+G'RCrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2&`\!'p,T!-%H.!>tS%rrA\]!!$F'rr=1q!!(pRrrBge!!%M"s6fmg?iZgM
-s3puJ0^euAE6eI`\(:T\+Ren$d/X1ap\FghJ(al&@/0a&pGge*!)W=fd/X1ap\FghJ(al&@/Ks)
-pF+_q!$Hjmec,War;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'p,T!-%H.!>tS%rrA\]!!$F'rr=1q!!(pRrrBge!!%M"s6fmg?iZgM
-s3puJ0^euAE6eI`\(:T\+Ren$d/X1ap\FghJ(al&@/0a&pGge*!)W=fd/X1ap\FghJ(al&@/Ks)
-pF+_q!$Hjmec,War;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'p,T!-%H.!>tS%rrA\]!!$F'rr=1q!!(pRrrBge!!%M"s6fmg?iZgM
-s3puJ0^euAE6eI`\(:T\+Ren$d/X1ap\FghJ(al&@/0a&pGge*!)W=fd/X1ap\FghJ(al&@/Ks)
-pF+_q!$Hjmec,War;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'p/U!5J"'!0?[M!2&c]!+>['!$Ktq!8m_S!UglY!!%M"s6fmg?iZgM
-s4%&Kn*U/Ucd2Ulh[n?=!'p,Tci='4q>UGEg&M+\q#:>5ec5]2p&EA=!13N]!.W]&!+>^(!-m/s
-!$Hjmec,War;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'p/U!5J"'!0?[M!2&c]!+>['!$Ktq!8m_S!UglY!!%M"s6fmg?iZgM
-s4%&Kn*U/Ucd2Ulh[n?=!'p,Tci='4q>UGEg&M+\q#:>5ec5]2p&EA=!13N]!.W]&!+>^(!-m/s
-!$Hjmec,War;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'p/U!5J"'!0?[M!2&c]!+>['!$Ktq!8m_S!UglY!!%M"s6fmg?iZgM
-s4%&Kn*U/Ucd2Ulh[n?=!'p,Tci='4q>UGEg&M+\q#:>5ec5]2p&EA=!13N]!.W]&!+>^(!-m/s
-!$Hjmec,War;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'p2V!J^sN!!,(Rnc&T]nGiPsqYpO<g&M-1r;Qb)fDko$JcG0<!al##
-JcF7"!3bhk!"dKV!V\S'!!%N?s3L`G0_t_KJ(al&@/9g&VsFE`)!h5'#hSeMci=&"q>UGEg&M+\
-r;Qc;fDkmoJcF:#!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2&`\!'p2V!J^sN!!,(Rnc&T]nGiPsqYpO<g&M-1r;Qb)fDko$JcG0<!al##
-JcF7"!3bhk!"dKV!V\S'!!%N?s3L`G0_t_KJ(al&@/9g&VsFE`)!h5'#hSeMci=&"q>UGEg&M+\
-r;Qc;fDkmoJcF:#!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2&`\!'p2V!J^sN!!,(Rnc&T]nGiPsqYpO<g&M-1r;Qb)fDko$JcG0<!al##
-JcF7"!3bhk!"dKV!V\S'!!%N?s3L`G0_t_KJ(al&@/9g&VsFE`)!h5'#hSeMci=&"q>UGEg&M+\
-r;Qc;fDkmoJcF:#!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2&`\!'p;Y!q2a8n,NJ3kOAKOTCDm]@/Bm'+PHeqhu3QT^Ztk%-pU$WnGiQ=
-JcG0<!al##JcF7"!-%B,!)V#A!-$?d!5J1+cN!skqYpPFg&M+\qYpTJ#k7m%#\]R>p](9f^Rn'c
-!!%!3s3CZFchdYAJ(al&@/U$)0^Jc>&H4op&Fof$+G'RCrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2&`\!'p;Y!q2a8n,NJ3kOAKOTCDm]@/Bm'+PHeqhu3QT^Ztk%-pU$WnGiQ=
-JcG0<!al##JcF7"!-%B,!)V#A!-$?d!5J1+cN!skqYpPFg&M+\qYpTJ#k7m%#\]R>p](9f^Rn'c
-!!%!3s3CZFchdYAJ(al&@/U$)0^Jc>&H4op&Fof$+G'RCrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2&`\!'p;Y!q2a8n,NJ3kOAKOTCDm]@/Bm'+PHeqhu3QT^Ztk%-pU$WnGiQ=
-JcG0<!al##JcF7"!-%B,!)V#A!-$?d!5J1+cN!skqYpPFg&M+\qYpTJ#k7m%#\]R>p](9f^Rn'c
-!!%!3s3CZFchdYAJ(al&@/U$)0^Jc>&H4op&Fof$+G'RCrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2&`\!"eoj!#Y,(!>*lOrrA\]!!$F'rr=1q!!(pTrr?Hq!!49ffDGRNpV41N
-)#""1It@XfrrQR.T7R$lrr?0i!!&),rrC[<!!l,FVoShX^OI["!!"_Fs3CZFO8AkVJ(al&@/Bm'
-0_#,D=QfGY!M9qn!!*Agp]&P>!0@!V!.W]&!+>d*!71*6!si#,p\XsmcbGMppAb19JcF:#!5JI4
-!2%^>J,~>
-df0<^r;ZhiJcG-;!2&`\!"eoj!#Y,(!>*lOrrA\]!!$F'rr=1q!!(pTrr?Hq!!49ffDGRNpV41N
-)#""1It@XfrrQR.T7R$lrr?0i!!&),rrC[<!!l,FVoShX^OI["!!"_Fs3CZFO8AkVJ(al&@/Bm'
-0_#,D=QfGY!M9qn!!*Agp]&P>!0@!V!.W]&!+>d*!71*6!si#,p\XsmcbGMppAb19JcF:#!5JI4
-!2%^>J,~>
-df0<^r;ZhiJcG-;!2&`\!"eoj!#Y,(!>*lOrrA\]!!$F'rr=1q!!(pTrr?Hq!!49ffDGRNpV41N
-)#""1It@XfrrQR.T7R$lrr?0i!!&),rrC[<!!l,FVoShX^OI["!!"_Fs3CZFO8AkVJ(al&@/Bm'
-0_#,D=QfGY!M9qn!!*Agp]&P>!0@!V!.W]&!+>d*!71*6!si#,p\XsmcbGMppAb19JcF:#!5JI4
-!2%^>J,~>
-df0<^r;ZhiJcG-;!2%^?!>*$6rrA\]!!$F'rrA,XIfN=8!!"/3IfSs:rrMj*n,NHDoD\m4E$4uW
-!.TS"mf*>r!2"iBeGfM6mf3@6d/O)bmf3AJfD,@HT+LGk!3c(qcN!rIqYpQ1qg\)8!-%LY!3c;"
-!3bnm!.XY@!S8ai!!&)Ss3CZF=Si$t^\`NM!!%!/IfQ\Nrr@<5!!,(Bo`#!MQU(BI!$Hjmec,Wa
-r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2%^?!>*$6rrA\]!!$F'rrA,XIfN=8!!"/3IfSs:rrMj*n,NHDoD\m4E$4uW
-!.TS"mf*>r!2"iBeGfM6mf3@6d/O)bmf3AJfD,@HT+LGk!3c(qcN!rIqYpQ1qg\)8!-%LY!3c;"
-!3bnm!.XY@!S8ai!!&)Ss3CZF=Si$t^\`NM!!%!/IfQ\Nrr@<5!!,(Bo`#!MQU(BI!$Hjmec,Wa
-r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2%^?!>*$6rrA\]!!$F'rrA,XIfN=8!!"/3IfSs:rrMj*n,NHDoD\m4E$4uW
-!.TS"mf*>r!2"iBeGfM6mf3@6d/O)bmf3AJfD,@HT+LGk!3c(qcN!rIqYpQ1qg\)8!-%LY!3c;"
-!3bnm!.XY@!S8ai!!&)Ss3CZF=Si$t^\`NM!!%!/IfQ\Nrr@<5!!,(Bo`#!MQU(BI!$Hjmec,Wa
-r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2%a@!GLrhrrA\]!!$F!rrA\]!!#:OrrB7l!!'e&rrJ`/qu?_HJcG0<!al##
-JcF7"!%@:9d/O.0#k.fp8GDiX!T,$h!!#R_s6BXc304$Q!LHXM!!"G=s6p!ghs::B0_,2D8Flc\
-YOMSn)#*h*lMprFO8ZfoQVd&L!%@I=n,NIGmJd/'nGiP[n,EF7;#C:n+G'RCrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%a@!GLrhrrA\]!!$F!rrA\]!!#:OrrB7l!!'e&rrJ`/qu?_HJcG0<!al##
-JcF7"!%@:9d/O.0#k.fp8GDiX!T,$h!!#R_s6BXc304$Q!LHXM!!"G=s6p!ghs::B0_,2D8Flc\
-YOMSn)#*h*lMprFO8ZfoQVd&L!%@I=n,NIGmJd/'nGiP[n,EF7;#C:n+G'RCrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%a@!GLrhrrA\]!!$F!rrA\]!!#:OrrB7l!!'e&rrJ`/qu?_HJcG0<!al##
-JcF7"!%@:9d/O.0#k.fp8GDiX!T,$h!!#R_s6BXc304$Q!LHXM!!"G=s6p!ghs::B0_,2D8Flc\
-YOMSn)#*h*lMprFO8ZfoQVd&L!%@I=n,NIGmJd/'nGiP[n,EF7;#C:n+G'RCrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%gB!BA-crrA\]!!$F!rrA\]!!#:Orr@Q=!!"G7rrVqM&H2Y0It@XfrrQR.
-T7R$lrr=22!!!;Orr@$-!!,@Zo`"sL)"7M*ch@D,!!3^NkP>,Yf/W0u!:TR[n,NIGm/I(#nc/[r
-hsp^H0_#,Ca8#]&!!3^NkP>,Yf/W0u!:TR[n,NIGmf*:Un,NHtmJd4%5lL``+G'RCrrBh4!!&Y>
-s*t~>
-df0<^r;ZhiJcG-;!2%gB!BA-crrA\]!!$F!rrA\]!!#:Orr@Q=!!"G7rrVqM&H2Y0It@XfrrQR.
-T7R$lrr=22!!!;Orr@$-!!,@Zo`"sL)"7M*ch@D,!!3^NkP>,Yf/W0u!:TR[n,NIGm/I(#nc/[r
-hsp^H0_#,Ca8#]&!!3^NkP>,Yf/W0u!:TR[n,NIGmf*:Un,NHtmJd4%5lL``+G'RCrrBh4!!&Y>
-s*t~>
-df0<^r;ZhiJcG-;!2%gB!BA-crrA\]!!$F!rrA\]!!#:Orr@Q=!!"G7rrVqM&H2Y0It@XfrrQR.
-T7R$lrr=22!!!;Orr@$-!!,@Zo`"sL)"7M*ch@D,!!3^NkP>,Yf/W0u!:TR[n,NIGm/I(#nc/[r
-hsp^H0_#,Ca8#]&!!3^NkP>,Yf/W0u!:TR[n,NIGmf*:Un,NHtmJd4%5lL``+G'RCrrBh4!!&Y>
-s*t~>
-df0<^r;ZhiJcG-;!2%jC!>)I"rrA\]!!$F!rrA\]!!#:Orr?Hs!!$]urrhe(!!%M"s6fmg?iZgM
-s4%);!!".hrrMQon,NI7o)A]Nn,NGbpAaR]!FYBirrMjJmf3@Fo`+C\!8m/C!)W4d!/L(D!3bnm
-!0?pTmf3Arn+Qb^pFu%9!8mGKn,NIGmf*:5n,NIWli.'Z(]Y\0s4.,L^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2%jC!>)I"rrA\]!!$F!rrA\]!!#:Orr?Hs!!$]urrhe(!!%M"s6fmg?iZgM
-s4%);!!".hrrMQon,NI7o)A]Nn,NGbpAaR]!FYBirrMjJmf3@Fo`+C\!8m/C!)W4d!/L(D!3bnm
-!0?pTmf3Arn+Qb^pFu%9!8mGKn,NIGmf*:5n,NIWli.'Z(]Y\0s4.,L^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2%jC!>)I"rrA\]!!$F!rrA\]!!#:Orr?Hs!!$]urrhe(!!%M"s6fmg?iZgM
-s4%);!!".hrrMQon,NI7o)A]Nn,NGbpAaR]!FYBirrMjJmf3@Fo`+C\!8m/C!)W4d!/L(D!3bnm
-!0?pTmf3Arn+Qb^pFu%9!8mGKn,NIGmf*:5n,NIWli.'Z(]Y\0s4.,L^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2%dA!YB%[mJd0YnGiPso`"o`nGiPSmJd/OnGiPKl2Lh"5bEW-mf*>r!2"iB
-ec,X<mf3>AdJj3Mn,NH-nc&Xa)"@S,#l")nn,NHdoD\g:mf3@&o`+C\!8m2D!8m>I!>,"orr<o,
-!!#jjs6p!gVt9ogcgLi6^\%Qq!!(pErrB7l!!(()rrVXk=FpM&rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%dA!YB%[mJd0YnGiPso`"o`nGiPSmJd/OnGiPKl2Lh"5bEW-mf*>r!2"iB
-ec,X<mf3>AdJj3Mn,NH-nc&Xa)"@S,#l")nn,NHdoD\g:mf3@&o`+C\!8m2D!8m>I!>,"orr<o,
-!!#jjs6p!gVt9ogcgLi6^\%Qq!!(pErrB7l!!(()rrVXk=FpM&rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%dA!YB%[mJd0YnGiPso`"o`nGiPSmJd/OnGiPKl2Lh"5bEW-mf*>r!2"iB
-ec,X<mf3>AdJj3Mn,NH-nc&Xa)"@S,#l")nn,NHdoD\g:mf3@&o`+C\!8m2D!8m>I!>,"orr<o,
-!!#jjs6p!gVt9ogcgLi6^\%Qq!!(pErrB7l!!(()rrVXk=FpM&rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%[>!Z5n>nG`K\nGiPso`"o`nGiPSmJd/Gn,NHtJcF7"!al##JcF:#!8m5F
-!'ns3!-%E-!8$`?!/L%D!5J:.n,NIGo)A\Ln,NI'o`+C\!8m2D!2&f^!''EH!(cY\!$M(:n,NIG
-o)A\Ln,NI'o`+C\!8m5E!2&`\!)S7H]DhlGr;Zhidf4g~>
-df0<^r;ZhiJcG-;!2%[>!Z5n>nG`K\nGiPso`"o`nGiPSmJd/Gn,NHtJcF7"!al##JcF:#!8m5F
-!'ns3!-%E-!8$`?!/L%D!5J:.n,NIGo)A\Ln,NI'o`+C\!8m2D!2&f^!''EH!(cY\!$M(:n,NIG
-o)A\Ln,NI'o`+C\!8m5E!2&`\!)S7H]DhlGr;Zhidf4g~>
-df0<^r;ZhiJcG-;!2%[>!Z5n>nG`K\nGiPso`"o`nGiPSmJd/Gn,NHtJcF7"!al##JcF:#!8m5F
-!'ns3!-%E-!8$`?!/L%D!5J:.n,NIGo)A\Ln,NI'o`+C\!8m2D!2&f^!''EH!(cY\!$M(:n,NIG
-o)A\Ln,NI'o`+C\!8m5E!2&`\!)S7H]DhlGr;Zhidf4g~>
-df0<^r;ZhiJcG-;!2%U<!>rlIrrA\]!!$F!rrA\]!!#:Orr>=R!!*Y7JcF:#!al##JcF:#!6=O.
-!*IYK!&3pC!%@=9!8m8G!.XbCn,NIGo)A]>n,NHlo`+C\!8m2D!+>?t!-%B+!,1m&!8mVPn,NIG
-o)A]>n,NHlo`+C\!8m5E!4VCs!EeN9s1SF4^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2%U<!>rlIrrA\]!!$F!rrA\]!!#:Orr>=R!!*Y7JcF:#!al##JcF:#!6=O.
-!*IYK!&3pC!%@=9!8m8G!.XbCn,NIGo)A]>n,NHlo`+C\!8m2D!+>?t!-%B+!,1m&!8mVPn,NIG
-o)A]>n,NHlo`+C\!8m5E!4VCs!EeN9s1SF4^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2%U<!>rlIrrA\]!!$F!rrA\]!!#:Orr>=R!!*Y7JcF:#!al##JcF:#!6=O.
-!*IYK!&3pC!%@=9!8m8G!.XbCn,NIGo)A]>n,NHlo`+C\!8m2D!+>?t!-%B+!,1m&!8mVPn,NIG
-o)A]>n,NHlo`+C\!8m5E!4VCs!EeN9s1SF4^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2%O:!0?^N!2&c]!+>I!!2&c]!'orO!*JXh![rQEJcFC&!al##JcF:#!5It&
-!+=7T!:TCW!.XG:!%@@;!'p;Yn,NIGo)A]nn,NH\o`+C\!8m2D!$Lh4!13-R!0?XM!5J@0n,NIG
-o)A]nn,NH\o`+C\!8m5E!5Iq%!si;<pOW@[rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%O:!0?^N!2&c]!+>I!!2&c]!'orO!*JXh![rQEJcFC&!al##JcF:#!5It&
-!+=7T!:TCW!.XG:!%@@;!'p;Yn,NIGo)A]nn,NH\o`+C\!8m2D!$Lh4!13-R!0?XM!5J@0n,NIG
-o)A]nn,NH\o`+C\!8m5E!5Iq%!si;<pOW@[rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%O:!0?^N!2&c]!+>I!!2&c]!'orO!*JXh![rQEJcFC&!al##JcF:#!5It&
-!+=7T!:TCW!.XG:!%@@;!'p;Yn,NIGo)A]nn,NH\o`+C\!8m2D!$Lh4!13-R!0?XM!5J@0n,NIG
-o)A]nn,NH\o`+C\!8m5E!5Iq%!si;<pOW@[rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%L9!Eeg_rrA\]!!$F!rrA\]!!#:Orr@$(!!=?WQd:6_h#@F`!2"iBec,X,
-mf3>Qdf0<Nn,NHlmf*9#nGiRqp\=dX!!(pIrrCC7!!&Y`s6p!ghsULEhsg[HQgVTgJ+3L=TDANV
-!!(pIrrCC7!!&Y`s6p!ghsULEhs17F#Z-#cpOW@_rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%L9!Eeg_rrA\]!!$F!rrA\]!!#:Orr@$(!!=?WQd:6_h#@F`!2"iBec,X,
-mf3>Qdf0<Nn,NHlmf*9#nGiRqp\=dX!!(pIrrCC7!!&Y`s6p!ghsULEhsg[HQgVTgJ+3L=TDANV
-!!(pIrrCC7!!&Y`s6p!ghsULEhs17F#Z-#cpOW@_rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%L9!Eeg_rrA\]!!$F!rrA\]!!#:Orr@$(!!=?WQd:6_h#@F`!2"iBec,X,
-mf3>Qdf0<Nn,NHlmf*9#nGiRqp\=dX!!(pIrrCC7!!&Y`s6p!ghsULEhsg[HQgVTgJ+3L=TDANV
-!!(pIrrCC7!!&Y`s6p!ghsULEhs17F#Z-#cpOW@_rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%I8!AO9@rrA\]!!$F!rrA\]!!#:OrrB7b!!>K2\+bIRiVrse!2"iBec,X<
-mf3>Idf0;dn,NI?mf*9Jn,NI/q#Bg`!8mAI!:TCW!2&o`n,NIGmf*9ZbQ%X8q>]pa!8mAI!:TCW
-!2&o`n,NIGmJd//k5YT4@%Z>-s2b3?^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2%I8!AO9@rrA\]!!$F!rrA\]!!#:OrrB7b!!>K2\+bIRiVrse!2"iBec,X<
-mf3>Idf0;dn,NI?mf*9Jn,NI/q#Bg`!8mAI!:TCW!2&o`n,NIGmf*9ZbQ%X8q>]pa!8mAI!:TCW
-!2&o`n,NIGmJd//k5YT4@%Z>-s2b3?^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2%I8!AO9@rrA\]!!$F!rrA\]!!#:OrrB7b!!>K2\+bIRiVrse!2"iBec,X<
-mf3>Idf0;dn,NI?mf*9Jn,NI/q#Bg`!8mAI!:TCW!2&o`n,NIGmf*9ZbQ%X8q>]pa!8mAI!:TCW
-!2&o`n,NIGmJd//k5YT4@%Z>-s2b3?^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2%F7!+>L"!2&c]!+>I!!2&c]!'orO!:SnI"#tP7pOWA+rrQR.T7R$ls6fpf
-+O^8i@.=3s#jqWla7''/YPA.e!!(pHs6p!gTCi0Q!!(pErr@;f!!%NEs6p!ghspa9!!&Y`s6p!g
-hsLFD=Q9A`+CLi!JcEso!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2%F7!+>L"!2&c]!+>I!!2&c]!'orO!:SnI"#tP7pOWA+rrQR.T7R$ls6fpf
-+O^8i@.=3s#jqWla7''/YPA.e!!(pHs6p!gTCi0Q!!(pErr@;f!!%NEs6p!ghspa9!!&Y`s6p!g
-hsLFD=Q9A`+CLi!JcEso!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2%F7!+>L"!2&c]!+>I!!2&c]!'orO!:SnI"#tP7pOWA+rrQR.T7R$ls6fpf
-+O^8i@.=3s#jqWla7''/YPA.e!!(pHs6p!gTCi0Q!!(pErr@;f!!%NEs6p!ghspa9!!&Y`s6p!g
-hsLFD=Q9A`+CLi!JcEso!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2&`\!"eli!''-A!3c+r!2&c]!+>I!!2&c]!'ooN!(c#J!Z6^]JcFp5!al##
-JcF7"!#Y2*!"dTY!(cV[!&3g?!:TCW!2'&dn,NIGnc/(Y!2&o`n,NIGmf*8pbQ%Wmq>]pa!8m>H
-n,NH\o`+C\!8m2D!3b8[!FX6)s3CWE^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2&`\!"eli!''-A!3c+r!2&c]!+>I!!2&c]!'ooN!(c#J!Z6^]JcFp5!al##
-JcF7"!#Y2*!"dTY!(cV[!&3g?!:TCW!2'&dn,NIGnc/(Y!2&o`n,NIGmf*8pbQ%Wmq>]pa!8m>H
-n,NH\o`+C\!8m2D!3b8[!FX6)s3CWE^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2&`\!"eli!''-A!3c+r!2&c]!+>I!!2&c]!'ooN!(c#J!Z6^]JcFp5!al##
-JcF7"!#Y2*!"dTY!(cV[!&3g?!:TCW!2'&dn,NIGnc/(Y!2&o`n,NIGmf*8pbQ%Wmq>]pa!8m>H
-n,NH\o`+C\!8m2D!3b8[!FX6)s3CWE^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2&`\!'p2V"7NF,#jhTl0_YMHTCDm]@.aI!TCDm]5j\LNYMK6\&9-NXs69Ob
-?iZgMs4%&K+R]<Yrr>=S!!#:Ns6p!gL\Uo=!!(pHrr<>p!!&Y`s6p!ghsULE8B_&6@/9il!!(pH
-rr<>p!!&Y`s6p!ghsC@C(u>5n8@O0Md/O*\r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'p2V"7NF,#jhTl0_YMHTCDm]@.aI!TCDm]5j\LNYMK6\&9-NXs69Ob
-?iZgMs4%&K+R]<Yrr>=S!!#:Ns6p!gL\Uo=!!(pHrr<>p!!&Y`s6p!ghsULE8B_&6@/9il!!(pH
-rr<>p!!&Y`s6p!ghsC@C(u>5n8@O0Md/O*\r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'p2V"7NF,#jhTl0_YMHTCDm]@.aI!TCDm]5j\LNYMK6\&9-NXs69Ob
-?iZgMs4%&K+R]<Yrr>=S!!#:Ns6p!gL\Uo=!!(pHrr<>p!!&Y`s6p!ghsULE8B_&6@/9il!!(pH
-rr<>p!!&Y`s6p!ghsC@C(u>5n8@O0Md/O*\r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'p)S!U!kX!!'4srrA\]!!$F!rrA\]!!#:Mrr=b.!!%e*s6BUc?iZgM
-s4%&K5jn[QkL9G2..I9;8F6BG!!%NDs6p!ghsp^H+RoF3TCi0Q!!(pErr>%&!!$F&s6p!ghsp^H
-+RoF3TCi0Q!!(pCrrAD@!!,(JJcF0u!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2&`\!'p)S!U!kX!!'4srrA\]!!$F!rrA\]!!#:Mrr=b.!!%e*s6BUc?iZgM
-s4%&K5jn[QkL9G2..I9;8F6BG!!%NDs6p!ghsp^H+RoF3TCi0Q!!(pErr>%&!!$F&s6p!ghsp^H
-+RoF3TCi0Q!!(pCrrAD@!!,(JJcF0u!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2&`\!'p)S!U!kX!!'4srrA\]!!$F!rrA\]!!#:Mrr=b.!!%e*s6BUc?iZgM
-s4%&K5jn[QkL9G2..I9;8F6BG!!%NDs6p!ghsp^H+RoF3TCi0Q!!(pErr>%&!!$F&s6p!ghsp^H
-+RoF3TCi0Q!!(pCrrAD@!!,(JJcF0u!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2&`\!'p#Q!2&ZZ!'p;Y!2&c]!+>I!!2&c]!'olM!RD&,!!-L%JcG*:!al##
-JcF7"!(cPY!2%a?!$Le3!+>0n!"eZ#!+>U%n,NIGnc&S3nGiQ]o`+C\!8m5E!$KJc!+>X&n,NIG
-nc&S3nGiQ]o`+C\!8m,B!'o<>!?g!Fs3puJ^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2&`\!'p#Q!2&ZZ!'p;Y!2&c]!+>I!!2&c]!'olM!RD&,!!-L%JcG*:!al##
-JcF7"!(cPY!2%a?!$Le3!+>0n!"eZ#!+>U%n,NIGnc&S3nGiQ]o`+C\!8m5E!$KJc!+>X&n,NIG
-nc&S3nGiQ]o`+C\!8m,B!'o<>!?g!Fs3puJ^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2&`\!'p#Q!2&ZZ!'p;Y!2&c]!+>I!!2&c]!'olM!RD&,!!-L%JcG*:!al##
-JcF7"!(cPY!2%a?!$Le3!+>0n!"eZ#!+>U%n,NIGnc&S3nGiQ]o`+C\!8m5E!$KJc!+>X&n,NIG
-nc&S3nGiQ]o`+C\!8m,B!'o<>!?g!Fs3puJ^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2&`\!'ouP!/L"C!=8GprrA\]!!$F!rrA\]!!#:Lrr@i/!!,XZJcG-;!al##
-JcF7"!,1g$!+=:Un,NGrm/I&.nGiPsq#Bg`!8m>H!$Le3!2&o`n,NIGmf*7ubQ%WNq>]pa!8m>H
-!$Le3!2&o`n,NIGli."C&DR6d&@[5jeGfN`r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'ouP!/L"C!=8GprrA\]!!$F!rrA\]!!#:Lrr@i/!!,XZJcG-;!al##
-JcF7"!,1g$!+=:Un,NGrm/I&.nGiPsq#Bg`!8m>H!$Le3!2&o`n,NIGmf*7ubQ%WNq>]pa!8m>H
-!$Le3!2&o`n,NIGli."C&DR6d&@[5jeGfN`r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'ouP!/L"C!=8GprrA\]!!$F!rrA\]!!#:Lrr@i/!!,XZJcG-;!al##
-JcF7"!,1g$!+=:Un,NGrm/I&.nGiPsq#Bg`!8m>H!$Le3!2&o`n,NIGmf*7ubQ%WNq>]pa!8m>H
-!$Le3!2&o`n,NIGli."C&DR6d&@[5jeGfN`r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'ouP!V[H"!!'e/rrA\]!!$F!rrA\]!!#:Krr@Q'!!+eJJcG0<!al##
-JcF7"!2&][!$Kbj!!r)p!+>0n!$Le3!+>U%n,NIGnc&S3nGiQ]o`+C\!8m5Eb5_NMq>]pa!8m>H
-!$Le3!2&o`n,NIGlMgn2&DI0b[t4S0rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2&`\!'ouP!V[H"!!'e/rrA\]!!$F!rrA\]!!#:Krr@Q'!!+eJJcG0<!al##
-JcF7"!2&][!$Kbj!!r)p!+>0n!$Le3!+>U%n,NIGnc&S3nGiQ]o`+C\!8m5Eb5_NMq>]pa!8m>H
-!$Le3!2&o`n,NIGlMgn2&DI0b[t4S0rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2&`\!'ouP!V[H"!!'e/rrA\]!!$F!rrA\]!!#:Krr@Q'!!+eJJcG0<!al##
-JcF7"!2&][!$Kbj!!r)p!+>0n!$Le3!+>U%n,NIGnc&S3nGiQ]o`+C\!8m5Eb5_NMq>]pa!8m>H
-!$Le3!2&o`n,NIGlMgn2&DI0b[t4S0rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2&`\!'orO!/L"C!/L@L!2&c]!+>I!!2&c]!'ocJ!KRNA!!$DXs6fmg?iZgM
-s4%&KfBrV=cd_sp+RoF3@-mmn&Ff`#B__Vs!!(pHrr=23!!&Y`s6p!ghsULE+Nsfc@/9il!!(pH
-rr=23!!&Y`s6p!ghs(.Af.bt[!@[\ns472M^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2&`\!'orO!/L"C!/L@L!2&c]!+>I!!2&c]!'ocJ!KRNA!!$DXs6fmg?iZgM
-s4%&KfBrV=cd_sp+RoF3@-mmn&Ff`#B__Vs!!(pHrr=23!!&Y`s6p!ghsULE+Nsfc@/9il!!(pH
-rr=23!!&Y`s6p!ghs(.Af.bt[!@[\ns472M^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2&`\!'orO!/L"C!/L@L!2&c]!+>I!!2&c]!'ocJ!KRNA!!$DXs6fmg?iZgM
-s4%&KfBrV=cd_sp+RoF3@-mmn&Ff`#B__Vs!!(pHrr=23!!&Y`s6p!ghsULE+Nsfc@/9il!!(pH
-rr=23!!&Y`s6p!ghs(.Af.bt[!@[\ns472M^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2&`\!'orO!4VCs!-%`5!2&c]!+>I!!2&c]!'o`I!RE1L!!'cbs6osh?iZgM
-s3puJ&FTT!LXc>(..I9;@-mp_!!%NDs6p!ghsp^H+RoF3TCi0Q!!(pErr=Ik!!$F&s6p!ghsp^H
-+RoF3TCi0Q!!(p?rrMk-g].>8JcF=$!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2&`\!'orO!4VCs!-%`5!2&c]!+>I!!2&c]!'o`I!RE1L!!'cbs6osh?iZgM
-s3puJ&FTT!LXc>(..I9;@-mp_!!%NDs6p!ghsp^H+RoF3TCi0Q!!(pErr=Ik!!$F&s6p!ghsp^H
-+RoF3TCi0Q!!(p?rrMk-g].>8JcF=$!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2&`\!'orO!4VCs!-%`5!2&c]!+>I!!2&c]!'o`I!RE1L!!'cbs6osh?iZgM
-s3puJ&FTT!LXc>(..I9;@-mp_!!%NDs6p!ghsp^H+RoF3TCi0Q!!(pErr=Ik!!$F&s6p!ghsp^H
-+RoF3TCi0Q!!(p?rrMk-g].>8JcF=$!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2&`\!'orO!71*6!+>U%!2&c]!+>I!!2&c]!'oZG!LFY[!!#iHs6osh?iZgM
-s3puJ;""Ab)#)S\!'p&S!'ooNn,NHLq#Bg`!8m>H!$Le3!2&o`n,NIGmf*8PnGiQMh7isAq>]pa
-!8m>H!$Le3!2&o`n,NIGk5PJ.5i)JA)#&U]fDbicr;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'orO!71*6!+>U%!2&c]!+>I!!2&c]!'oZG!LFY[!!#iHs6osh?iZgM
-s3puJ;""Ab)#)S\!'p&S!'ooNn,NHLq#Bg`!8m>H!$Le3!2&o`n,NIGmf*8PnGiQMh7isAq>]pa
-!8m>H!$Le3!2&o`n,NIGk5PJ.5i)JA)#&U]fDbicr;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'orO!71*6!+>U%!2&c]!+>I!!2&c]!'oZG!LFY[!!#iHs6osh?iZgM
-s3puJ;""Ab)#)S\!'p&S!'ooNn,NHLq#Bg`!8m>H!$Le3!2&o`n,NIGmf*8PnGiQMh7isAq>]pa
-!8m>H!$Le3!2&o`n,NIGk5PJ.5i)JA)#&U]fDbicr;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'orO!8m5F!(cnb!2&c]!+>I!!2&c]!'oWF!r&<HhZ*Z>JcG6>!al##
-JcF4!!0?OJ!0>\1!)W1c!'orO!;Gs_!2'&dn,NIGnc&S3nGiQ]o`+C\!8m5E!*Jak!2%d@n,NIG
-nc&S3nGiQ]o`+C\!8ll;!ln[[huEb<JcF@%!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2&`\!'orO!8m5F!(cnb!2&c]!+>I!!2&c]!'oWF!r&<HhZ*Z>JcG6>!al##
-JcF4!!0?OJ!0>\1!)W1c!'orO!;Gs_!2'&dn,NIGnc&S3nGiQ]o`+C\!8m5E!*Jak!2%d@n,NIG
-nc&S3nGiQ]o`+C\!8ll;!ln[[huEb<JcF@%!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2&`\!'orO!8m5F!(cnb!2&c]!+>I!!2&c]!'oWF!r&<HhZ*Z>JcG6>!al##
-JcF4!!0?OJ!0>\1!)W1c!'orO!;Gs_!2'&dn,NIGnc&S3nGiQ]o`+C\!8m5E!*Jak!2%d@n,NIG
-nc&S3nGiQ]o`+C\!8ll;!ln[[huEb<JcF@%!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!2&`\!'orO!8m5F!(cnb!2&c]!+>I!!2&c]!'oNC"5el)#ibmbT7R%3rrQR.
-T7R$krrCC5!!*r2hu<cPLO]4$!+><s!#Y,'!71-7!3c1tn,NIGnc&S3nGiQ]o`+C\!8m5E!+><s
-!-m#nn,NIGnc&S3nGiQ]o`+C\!8lf9"8AEq+QEG%:kAYurrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2&`\!'orO!8m5F!(cnb!2&c]!+>I!!2&c]!'oNC"5el)#ibmbT7R%3rrQR.
-T7R$krrCC5!!*r2hu<cPLO]4$!+><s!#Y,'!71-7!3c1tn,NIGnc&S3nGiQ]o`+C\!8m5E!+><s
-!-m#nn,NIGnc&S3nGiQ]o`+C\!8lf9"8AEq+QEG%:kAYurrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2&`\!'orO!8m5F!(cnb!2&c]!+>I!!2&c]!'oNC"5el)#ibmbT7R%3rrQR.
-T7R$krrCC5!!*r2hu<cPLO]4$!+><s!#Y,'!71-7!3c1tn,NIGnc&S3nGiQ]o`+C\!8m5E!+><s
-!-m#nn,NIGnc&S3nGiQ]o`+C\!8lf9"8AEq+QEG%:kAYurrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2&`\!'orO!5It&!+>U%!2&c]!+>I!!2&c]!'oB?"360f+Qi_)E.S&YrrQR.
-T7R$krrMj"mJm6Ji;WoB0E;+Mrr@Q<!!)KUrrAtd!!(@?s6p!ghsp^H+RoF3TCi0Q!!(pErr@Q=
-!!$-Ns6p!ghsp^H+RoF3TCi0Q!!(p5rr_/N?o[<L!&0!(fDbicr;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'orO!5It&!+>U%!2&c]!+>I!!2&c]!'oB?"360f+Qi_)E.S&YrrQR.
-T7R$krrMj"mJm6Ji;WoB0E;+Mrr@Q<!!)KUrrAtd!!(@?s6p!ghsp^H+RoF3TCi0Q!!(pErr@Q=
-!!$-Ns6p!ghsp^H+RoF3TCi0Q!!(p5rr_/N?o[<L!&0!(fDbicr;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'orO!5It&!+>U%!2&c]!+>I!!2&c]!'oB?"360f+Qi_)E.S&YrrQR.
-T7R$krrMj"mJm6Ji;WoB0E;+Mrr@Q<!!)KUrrAtd!!(@?s6p!ghsp^H+RoF3TCi0Q!!(pErr@Q=
-!!$-Ns6p!ghsp^H+RoF3TCi0Q!!(p5rr_/N?o[<L!&0!(fDbicr;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'orO!0?RK!.XeD!2&c]!+>I!!2&c]!'o6;"7O!S8F$6U5_8t)rrQR.
-T7R$jrr?a#!!*AOir9&*+T;B<rrBh'!!'Lrrr@<6!!!T)s6p!ghsp^H+RoF3TCi0Q!!(pErrBh(
-!!*B"ec5+=!8m>H!$Le3!2&o`n,NIGg&D0#QXCZs!!!R]s4@8N^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2&`\!'orO!0?RK!.XeD!2&c]!+>I!!2&c]!'o6;"7O!S8F$6U5_8t)rrQR.
-T7R$jrr?a#!!*AOir9&*+T;B<rrBh'!!'Lrrr@<6!!!T)s6p!ghsp^H+RoF3TCi0Q!!(pErrBh(
-!!*B"ec5+=!8m>H!$Le3!2&o`n,NIGg&D0#QXCZs!!!R]s4@8N^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2&`\!'orO!0?RK!.XeD!2&c]!+>I!!2&c]!'o6;"7O!S8F$6U5_8t)rrQR.
-T7R$jrr?a#!!*AOir9&*+T;B<rrBh'!!'Lrrr@<6!!!T)s6p!ghsp^H+RoF3TCi0Q!!(pErrBh(
-!!*B"ec5+=!8m>H!$Le3!2&o`n,NIGg&D0#QXCZs!!!R]s4@8N^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2&`\!'orO!&3jA!13K\!2&c]!+>I!!2&c]!'o*7!q3$`mJm58JcG6>!al##
-JcF0u!71$4!?gRdrrJ`'r;c`p!VZli!!%N:rr>U[!!#jis6p!ghsp^H+RoF3TCi0Q!!(pErrMj"
-nGiQeec5+=!8m>H!$Le3!2&o`n,NIGec,]kE"MF;!9\q5f`(rdr;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'orO!&3jA!13K\!2&c]!+>I!!2&c]!'o*7!q3$`mJm58JcG6>!al##
-JcF0u!71$4!?gRdrrJ`'r;c`p!VZli!!%N:rr>U[!!#jis6p!ghsp^H+RoF3TCi0Q!!(pErrMj"
-nGiQeec5+=!8m>H!$Le3!2&o`n,NIGec,]kE"MF;!9\q5f`(rdr;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'orO!&3jA!13K\!2&c]!+>I!!2&c]!'o*7!q3$`mJm58JcG6>!al##
-JcF0u!71$4!?gRdrrJ`'r;c`p!VZli!!%N:rr>U[!!#jis6p!ghsp^H+RoF3TCi0Q!!(pErrMj"
-nGiQeec5+=!8m>H!$Le3!2&o`n,NIGec,]kE"MF;!9\q5f`(rdr;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'ouP!4V@r!3c1t!2&c]!+>I!!2&c]!"dTY!REIh!!"-ms7$$i?iZgM
-s3^iH;!e5`5kjIA!Uj.f!;c]q5k+gS..@09kO8HOO8&\D!!(pHrr=23!!&Y`s6p!gYO2>i5k+gS
-5h5o(!!(pHrr=23!!&Y`s6p!gYLELPms+:$!69Zjf`(rdr;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'ouP!4V@r!3c1t!2&c]!+>I!!2&c]!"dTY!REIh!!"-ms7$$i?iZgM
-s3^iH;!e5`5kjIA!Uj.f!;c]q5k+gS..@09kO8HOO8&\D!!(pHrr=23!!&Y`s6p!gYO2>i5k+gS
-5h5o(!!(pHrr=23!!&Y`s6p!gYLELPms+:$!69Zjf`(rdr;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'ouP!4V@r!3c1t!2&c]!+>I!!2&c]!"dTY!REIh!!"-ms7$$i?iZgM
-s3^iH;!e5`5kjIA!Uj.f!;c]q5k+gS..@09kO8HOO8&\D!!(pHrr=23!!&Y`s6p!gYO2>i5k+gS
-5h5o(!!(pHrr=23!!&Y`s6p!gYLELPms+:$!69Zjf`(rdr;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'p#Q!T+IV!!(pOrrA\]!!$F!rrA\\!!(pFrr_-Y.*(QO!Tt<i!!"-m
-s7$$i?iZgMs3^iHcg1W45k!t;!QQ&R!;c]qJ+*F<fC8e?L[Y9DchIJ/!!(pHrr=23!!&Y`rr=23
-!!%92rrA,L!!&AGrr_^l!+>U%n,NIGnc&S3nGiQ]o`"n6nGiQ6mf*>r#`%UC!,1j%!5F*bf`(rd
-r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'p#Q!T+IV!!(pOrrA\]!!$F!rrA\\!!(pFrr_-Y.*(QO!Tt<i!!"-m
-s7$$i?iZgMs3^iHcg1W45k!t;!QQ&R!;c]qJ+*F<fC8e?L[Y9DchIJ/!!(pHrr=23!!&Y`rr=23
-!!%92rrA,L!!&AGrr_^l!+>U%n,NIGnc&S3nGiQ]o`"n6nGiQ6mf*>r#`%UC!,1j%!5F*bf`(rd
-r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'p#Q!T+IV!!(pOrrA\]!!$F!rrA\\!!(pFrr_-Y.*(QO!Tt<i!!"-m
-s7$$i?iZgMs3^iHcg1W45k!t;!QQ&R!;c]qJ+*F<fC8e?L[Y9DchIJ/!!(pHrr=23!!&Y`rr=23
-!!%92rrA,L!!&AGrr_^l!+>U%n,NIGnc&S3nGiQ]o`"n6nGiQ6mf*>r#`%UC!,1j%!5F*bf`(rd
-r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'p&R!P]cF!!#"QrrA\]!!$F!rrBh'!!'4krrh3Z!!nYLrr?a&!!#!0
-s7$$i?iZgMs3UcG0^Jc?(ru"C!Uk"&!;c]q^[M4'B^u*'pDEE#!"el(n,NIGnc&S3nGiQ]o`"n6
-nGiPSmJd14n,NIpfB*#8[ho)F@/0ck!!(pHrr=23!!&Y`rr=23!!#:Prrc^0!(cSCrrC+/!!(W%
-s4I>O^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2&`\!'p&R!P]cF!!#"QrrA\]!!$F!rrBh'!!'4krrh3Z!!nYLrr?a&!!#!0
-s7$$i?iZgMs3UcG0^Jc?(ru"C!Uk"&!;c]q^[M4'B^u*'pDEE#!"el(n,NIGnc&S3nGiQ]o`"n6
-nGiPSmJd14n,NIpfB*#8[ho)F@/0ck!!(pHrr=23!!&Y`rr=23!!#:Prrc^0!(cSCrrC+/!!(W%
-s4I>O^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2&`\!'p&R!P]cF!!#"QrrA\]!!$F!rrBh'!!'4krrh3Z!!nYLrr?a&!!#!0
-s7$$i?iZgMs3UcG0^Jc?(ru"C!Uk"&!;c]q^[M4'B^u*'pDEE#!"el(n,NIGnc&S3nGiQ]o`"n6
-nGiPSmJd14n,NIpfB*#8[ho)F@/0ck!!(pHrr=23!!&Y`rr=23!!#:Prrc^0!(cSCrrC+/!!(W%
-s4I>O^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2&`\!'p,T!RFm7!!&)SrrA\]!!$F!rrC+/!!%94rrCsT!!,@:lMgj/nGiPk
-JcG6>!al##JcF*s!3b\g!XO;EnG`RaNtD$cqYpTj)"7M*cgq)9Gjk\5E;'>$!!(pHrr=23!!&Y`
-rr>=S!!*Z*mJd/7n,NJ+cfkB0cVXQ?!+>U%n,NIGnc&S3nGiQ]o`"nVnGiS$p[A+^@/^-,(n^*n
-!8$]?!;D'Ef`(rdr;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'p,T!RFm7!!&)SrrA\]!!$F!rrC+/!!%94rrCsT!!,@:lMgj/nGiPk
-JcG6>!al##JcF*s!3b\g!XO;EnG`RaNtD$cqYpTj)"7M*cgq)9Gjk\5E;'>$!!(pHrr=23!!&Y`
-rr>=S!!*Z*mJd/7n,NJ+cfkB0cVXQ?!+>U%n,NIGnc&S3nGiQ]o`"nVnGiS$p[A+^@/^-,(n^*n
-!8$]?!;D'Ef`(rdr;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'p,T!RFm7!!&)SrrA\]!!$F!rrC+/!!%94rrCsT!!,@:lMgj/nGiPk
-JcG6>!al##JcF*s!3b\g!XO;EnG`RaNtD$cqYpTj)"7M*cgq)9Gjk\5E;'>$!!(pHrr=23!!&Y`
-rr>=S!!*Z*mJd/7n,NJ+cfkB0cVXQ?!+>U%n,NIGnc&S3nGiQ]o`"nVnGiS$p[A+^@/^-,(n^*n
-!8$]?!;D'Ef`(rdr;Zhidf4g~>
-df0<^r;ZhiJcG-;!2&`\!'p8X"37lq.-^d4kP+uVTCDm]@.aI!hs^UH&EiQ_!8m\S!XNc&m/I&F
-nGiQ.JcG6>!al##JcF'r!''6D!YBkMo`#!MBFsh:q>UGUn,NJCn+?V\cNs"?!9a(Un,NIGnc&S3
-nGiQ]o`"n^n,NHDmJd0imf3A"VsF?`cVXK=!+>U%n,NIGnc&S3nGiQ]o`"n^n,NHDn,EAqqu?aO
-YO)8hQgk%U&:sl5rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2&`\!'p8X"37lq.-^d4kP+uVTCDm]@.aI!hs^UH&EiQ_!8m\S!XNc&m/I&F
-nGiQ.JcG6>!al##JcF'r!''6D!YBkMo`#!MBFsh:q>UGUn,NJCn+?V\cNs"?!9a(Un,NIGnc&S3
-nGiQ]o`"n^n,NHDmJd0imf3A"VsF?`cVXK=!+>U%n,NIGnc&S3nGiQ]o`"n^n,NHDn,EAqqu?aO
-YO)8hQgk%U&:sl5rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2&`\!'p8X"37lq.-^d4kP+uVTCDm]@.aI!hs^UH&EiQ_!8m\S!XNc&m/I&F
-nGiQ.JcG6>!al##JcF'r!''6D!YBkMo`#!MBFsh:q>UGUn,NJCn+?V\cNs"?!9a(Un,NIGnc&S3
-nGiQ]o`"n^n,NHDmJd0imf3A"VsF?`cVXK=!+>U%n,NIGnc&S3nGiQ]o`"n^n,NHDn,EAqqu?aO
-YO)8hQgk%U&:sl5rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%C6!)WCh!2&c]!+>I!!9`eN!C6,IrrqT#p](9Nq#CG'\*s=s^[M4'YCZ`C
-rrQR.T7R$grrM!gkPt]EGdl<&rr^TFBINEOq>UKi)"7M+0^n`8!RD>H!!#jgs6p!ghsp^H+RoF3
-TCi-`@.4-s#d<q$!Pd7`rr=b@!!,@2nG`RQQU(?H!+>U%n,NIGnc&S3nGiQ]o`"o!n,NIpYP%nr
-^XrJb!+>X'!\fu(nG`OX0_#,C:kAYurrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%C6!)WCh!2&c]!+>I!!9`eN!C6,IrrqT#p](9Nq#CG'\*s=s^[M4'YCZ`C
-rrQR.T7R$grrM!gkPt]EGdl<&rr^TFBINEOq>UKi)"7M+0^n`8!RD>H!!#jgs6p!ghsp^H+RoF3
-TCi-`@.4-s#d<q$!Pd7`rr=b@!!,@2nG`RQQU(?H!+>U%n,NIGnc&S3nGiQ]o`"o!n,NIpYP%nr
-^XrJb!+>X'!\fu(nG`OX0_#,C:kAYurrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%C6!)WCh!2&c]!+>I!!9`eN!C6,IrrqT#p](9Nq#CG'\*s=s^[M4'YCZ`C
-rrQR.T7R$grrM!gkPt]EGdl<&rr^TFBINEOq>UKi)"7M+0^n`8!RD>H!!#jgs6p!ghsp^H+RoF3
-TCi-`@.4-s#d<q$!Pd7`rr=b@!!,@2nG`RQQU(?H!+>U%n,NIGnc&S3nGiQ]o`"o!n,NIpYP%nr
-^XrJb!+>X'!\fu(nG`OX0_#,C:kAYurrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%F7!=7<NrrA\]!!$Eurr=21!!4:8n,*+jkFYQN!8mhVhtI*P(i\*urrIl\
-nGiS,pOWA6rrQR.T7R$frrBgX!;QQoGjbV5(oR30!Uk:$!!(@<s6p!ghsp^H+RoF3TCi-`O6uuK
-Gh;fl"Li=e!+>^(!4V:p""8Z6p\4[ha-T'b!!$F%s6p!ghsp^H+RoF3TCi-`O6uuKGh;fl"Li=e
-!+>g+!+>O$!`5fho`"s4..@3:YCZ`*rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%F7!=7<NrrA\]!!$Eurr=21!!4:8n,*+jkFYQN!8mhVhtI*P(i\*urrIl\
-nGiS,pOWA6rrQR.T7R$frrBgX!;QQoGjbV5(oR30!Uk:$!!(@<s6p!ghsp^H+RoF3TCi-`O6uuK
-Gh;fl"Li=e!+>^(!4V:p""8Z6p\4[ha-T'b!!$F%s6p!ghsp^H+RoF3TCi-`O6uuKGh;fl"Li=e
-!+>g+!+>O$!`5fho`"s4..@3:YCZ`*rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%F7!=7<NrrA\]!!$Eurr=21!!4:8n,*+jkFYQN!8mhVhtI*P(i\*urrIl\
-nGiS,pOWA6rrQR.T7R$frrBgX!;QQoGjbV5(oR30!Uk:$!!(@<s6p!ghsp^H+RoF3TCi-`O6uuK
-Gh;fl"Li=e!+>^(!4V:p""8Z6p\4[ha-T'b!!$F%s6p!ghsp^H+RoF3TCi-`O6uuKGh;fl"Li=e
-!+>g+!+>O$!`5fho`"s4..@3:YCZ`*rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%F7!/L7I!2&c]!+>Eu!+>-ns$-["GX*DL!!D-Ys53GK""8DlfDGRMn#'P1
-mf3?4JcG3=!al##JcF!p!.W5nq#:BX#jqZo(grF(^B&g\m/R,_o`+C\!8m>H!$Le3!2&o`!71!3
-"XlW4GX*,D!!$F'rr>mZ!!X!"5]C*r3:QtK@/0ck!!(pHrr=23!!&Y`rrCC3!!Oc9:j>5Bqu?_)
-rr2t+o`,++=GOZcqu6`DIk^<k!#U:ef)G`br;Zhidf4g~>
-df0<^r;ZhiJcG-;!2%F7!/L7I!2&c]!+>Eu!+>-ns$-["GX*DL!!D-Ys53GK""8DlfDGRMn#'P1
-mf3?4JcG3=!al##JcF!p!.W5nq#:BX#jqZo(grF(^B&g\m/R,_o`+C\!8m>H!$Le3!2&o`!71!3
-"XlW4GX*,D!!$F'rr>mZ!!X!"5]C*r3:QtK@/0ck!!(pHrr=23!!&Y`rrCC3!!Oc9:j>5Bqu?_)
-rr2t+o`,++=GOZcqu6`DIk^<k!#U:ef)G`br;Zhidf4g~>
-df0<^r;ZhiJcG-;!2%F7!/L7I!2&c]!+>Eu!+>-ns$-["GX*DL!!D-Ys53GK""8DlfDGRMn#'P1
-mf3?4JcG3=!al##JcF!p!.W5nq#:BX#jqZo(grF(^B&g\m/R,_o`+C\!8m>H!$Le3!2&o`!71!3
-"XlW4GX*,D!!$F'rr>mZ!!X!"5]C*r3:QtK@/0ck!!(pHrr=23!!&Y`rrCC3!!Oc9:j>5Bqu?_)
-rr2t+o`,++=GOZcqu6`DIk^<k!#U:ef)G`br;Zhidf4g~>
-df0<^r;ZhiJcG-;!2%I8!AO9@rrA\]!!$EurrADE!!D-Ys52?,!=7;.s6osh?iZgMs31KC:sK(8
-rrA,/!!*AWo`+C\!8m>H!$Le3!2&l_!"e,i!+>['!S7n2!!$F%s6p!ghsp^H+RoF3TC`'_&E3Zi
-@/g0+@+>5WIt@XNrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%I8!AO9@rrA\]!!$EurrADE!!D-Ys52?,!=7;.s6osh?iZgMs31KC:sK(8
-rrA,/!!*AWo`+C\!8m>H!$Le3!2&l_!"e,i!+>['!S7n2!!$F%s6p!ghsp^H+RoF3TC`'_&E3Zi
-@/g0+@+>5WIt@XNrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%I8!AO9@rrA\]!!$EurrADE!!D-Ys52?,!=7;.s6osh?iZgMs31KC:sK(8
-rrA,/!!*AWo`+C\!8m>H!$Le3!2&l_!"e,i!+>['!S7n2!!$F%s6p!ghsp^H+RoF3TC`'_&E3Zi
-@/g0+@+>5WIt@XNrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%L9!>*lTrrA\]!!$EurrC[0!!D-Ys52?,!.TS"mf*>r!2"iBbl7_4+O:&]
-rr>mF!!&Y_s6p!ghsp^H+RoF3TC`'_:uVHT@/9g'^Bi9g!+>U%n,NIGnc&S3nGiQ]oD\eeiW&sd
-rr2t+ec5_!pOW@qrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%L9!>*lTrrA\]!!$EurrC[0!!D-Ys52?,!.TS"mf*>r!2"iBbl7_4+O:&]
-rr>mF!!&Y_s6p!ghsp^H+RoF3TC`'_:uVHT@/9g'^Bi9g!+>U%n,NIGnc&S3nGiQ]oD\eeiW&sd
-rr2t+ec5_!pOW@qrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%L9!>*lTrrA\]!!$EurrC[0!!D-Ys52?,!.TS"mf*>r!2"iBbl7_4+O:&]
-rr>mF!!&Y_s6p!ghsp^H+RoF3TC`'_:uVHT@/9g'^Bi9g!+>U%n,NIGnc&S3nGiQ]oD\eeiW&sd
-rr2t+ec5_!pOW@qrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%O:!>*TKrrA\]!!$Etrr>mT!!D-Ys52B-!'#Q0mJd5q!2"iBbPqV+37%[!
-rrMR:ec5\ho)J1Z!8m>H!$Le3!2&l_!5ILn!+>U%!2n9G!+>U%n,NIGnc&S3nGiQ]oD\g*iW&sd
-rr2t+f)PgWc[l,HrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%O:!>*TKrrA\]!!$Etrr>mT!!D-Ys52B-!'#Q0mJd5q!2"iBbPqV+37%[!
-rrMR:ec5\ho)J1Z!8m>H!$Le3!2&l_!5ILn!+>U%!2n9G!+>U%n,NIGnc&S3nGiQ]oD\g*iW&sd
-rr2t+f)PgWc[l,HrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%O:!>*TKrrA\]!!$Etrr>mT!!D-Ys52B-!'#Q0mJd5q!2"iBbPqV+37%[!
-rrMR:ec5\ho)J1Z!8m>H!$Le3!2&l_!5ILn!+>U%!2n9G!+>U%n,NIGnc&S3nGiQ]oD\g*iW&sd
-rr2t+f)PgWc[l,HrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%R;!>*TJrrA\]!!$EtrrCC)!!D-Ys52E.!>*k6s6]gf?iZgMs2t?BpL)AK
-p&>'E#hT+X3;<"Dn,NIGnc&S3nGiQ]o)A\DirB'ep\t5Ke,TJVq#Bg`!8m>H!$Le3!2&i^!&3F5
-!+>g+!+=CY!/H.*eGfN`r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2%R;!>*TJrrA\]!!$EtrrCC)!!D-Ys52E.!>*k6s6]gf?iZgMs2t?BpL)AK
-p&>'E#hT+X3;<"Dn,NIGnc&S3nGiQ]o)A\DirB'ep\t5Ke,TJVq#Bg`!8m>H!$Le3!2&i^!&3F5
-!+>g+!+=CY!/H.*eGfN`r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2%R;!>*TJrrA\]!!$EtrrCC)!!D-Ys52E.!>*k6s6]gf?iZgMs2t?BpL)AK
-p&>'E#hT+X3;<"Dn,NIGnc&S3nGiQ]o)A\DirB'ep\t5Ke,TJVq#Bg`!8m>H!$Le3!2&i^!&3F5
-!+>g+!+=CY!/H.*eGfN`r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2%U<!BA^$rrA\]!!$Esrr>UM!!D-Ys52H/!>*S.s6Tae?iZgMs2b3?O4"%#
-rrKS7g&M.-hspa9!!(pHrr=23!!&Y^rrBOg!!$F#rr@Q!!!$F%s6p!ghsp^H+RoF3TCW!^\)RGg
-@/g0+@+YGZIt@XKrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%U<!BA^$rrA\]!!$Esrr>UM!!D-Ys52H/!>*S.s6Tae?iZgMs2b3?O4"%#
-rrKS7g&M.-hspa9!!(pHrr=23!!&Y^rrBOg!!$F#rr@Q!!!$F%s6p!ghsp^H+RoF3TCW!^\)RGg
-@/g0+@+YGZIt@XKrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%U<!BA^$rrA\]!!$Esrr>UM!!D-Ys52H/!>*S.s6Tae?iZgMs2b3?O4"%#
-rrKS7g&M.-hspa9!!(pHrr=23!!&Y^rrBOg!!$F#rr@Q!!!$F%s6p!ghsp^H+RoF3TCW!^\)RGg
-@/g0+@+YGZIt@XKrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG-;!2%[>!=4JLrrA\]!!$EsrrM:*j8];>s8V!0!!+5"JcG'9!al##JcEdj!P]2r
-!!#R]rrLFgg].@Gn*pAH!!(pHrr=23!!&Y]rr@<)!!$F"rrL._f)PeYq#Bg`!8m>H!$Le3!2&f]
-!-mQ)!+>g+!+=I[!2"iBdf0<^r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2%[>!=4JLrrA\]!!$EsrrM:*j8];>s8V!0!!+5"JcG'9!al##JcEdj!P]2r
-!!#R]rrLFgg].@Gn*pAH!!(pHrr=23!!&Y]rr@<)!!$F"rrL._f)PeYq#Bg`!8m>H!$Le3!2&f]
-!-mQ)!+>g+!+=I[!2"iBdf0<^r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2%[>!=4JLrrA\]!!$EsrrM:*j8];>s8V!0!!+5"JcG'9!al##JcEdj!P]2r
-!!#R]rrLFgg].@Gn*pAH!!(pHrr=23!!&Y]rr@<)!!$F"rrL._f)PeYq#Bg`!8m>H!$Le3!2&f]
-!-mQ)!+>g+!+=I[!2"iBdf0<^r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2%^?!D),9rrA\]!!$ErrrLFOjT#D?s8V!1!!,@BJcG$8!al##JcEai!T.;;
-!!-KRnc&XQ38OW8B^Yoi!!(pHrr=23!!&Y\rr>mW!!$F!rrMRrfDknZq#Bg`!8m>H!$Le3!2&c\
-!)VbW!+>g+!+=O]!>q_cs3^iH^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2%^?!D),9rrA\]!!$ErrrLFOjT#D?s8V!1!!,@BJcG$8!al##JcEai!T.;;
-!!-KRnc&XQ38OW8B^Yoi!!(pHrr=23!!&Y\rr>mW!!$F!rrMRrfDknZq#Bg`!8m>H!$Le3!2&c\
-!)VbW!+>g+!+=O]!>q_cs3^iH^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2%^?!D),9rrA\]!!$ErrrLFOjT#D?s8V!1!!,@BJcG$8!al##JcEai!T.;;
-!!-KRnc&XQ38OW8B^Yoi!!(pHrr=23!!&Y\rr>mW!!$F!rrMRrfDknZq#Bg`!8m>H!$Le3!2&c\
-!)VbW!+>g+!+=O]!>q_cs3^iH^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2%dA!EchtrrA\]!!$EqrrL.gjo>PAs8VOih#IHmVh+m3rrQR.T7R$\rrM"b
-h#IKfE8U*`!V^!\!!*XtmJlYU!8m>H!$Le3!2&c\!UjFY!!$EtrrJ`7gAh7F^\Iiu!!(pHrr=23
-!!&Y\rrMRrjo>Bhrr3"s(u5/mE:8AXd/O*\r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2%dA!EchtrrA\]!!$EqrrL.gjo>PAs8VOih#IHmVh+m3rrQR.T7R$\rrM"b
-h#IKfE8U*`!V^!\!!*XtmJlYU!8m>H!$Le3!2&c\!UjFY!!$EtrrJ`7gAh7F^\Iiu!!(pHrr=23
-!!&Y\rrMRrjo>Bhrr3"s(u5/mE:8AXd/O*\r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2%dA!EchtrrA\]!!$EqrrL.gjo>PAs8VOih#IHmVh+m3rrQR.T7R$\rrM"b
-h#IKfE8U*`!V^!\!!*XtmJlYU!8m>H!$Le3!2&c\!UjFY!!$EtrrJ`7gAh7F^\Iiu!!(pHrr=23
-!!&Y\rrMRrjo>Bhrr3"s(u5/mE:8AXd/O*\r;Zhidf4g~>
-df0<^r;ZhiJcG-;!2%mD![*9]lMgjVnGiPsmf*=^Gio&,hu3QVkBIj'!!3FNmt(N%rrQR.T7R$Z
-rrM"bi;`m\Vs43^cVW^'!YBkMm/QPT!8m>H!$Le3!2&]Z!Oip0!!$ErrrK;ohuEfqGi/5pn,NIG
-nc&S3nGiQ]mf*<s)!Cr"@/U$*Va02@!C4t^s3CWE^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2%mD![*9]lMgjVnGiPsmf*=^Gio&,hu3QVkBIj'!!3FNmt(N%rrQR.T7R$Z
-rrM"bi;`m\Vs43^cVW^'!YBkMm/QPT!8m>H!$Le3!2&]Z!Oip0!!$ErrrK;ohuEfqGi/5pn,NIG
-nc&S3nGiQ]mf*<s)!Cr"@/U$*Va02@!C4t^s3CWE^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2%mD![*9]lMgjVnGiPsmf*=^Gio&,hu3QVkBIj'!!3FNmt(N%rrQR.T7R$Z
-rrM"bi;`m\Vs43^cVW^'!YBkMm/QPT!8m>H!$Le3!2&]Z!Oip0!!$ErrrK;ohuEfqGi/5pn,NIG
-nc&S3nGiQ]mf*<s)!Cr"@/U$*Va02@!C4t^s3CWE^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2&'I"=R)r\)6BK!2&c]!+>0n!nV)sl2UhAqu6cmY@o'A!!5-Pmt(N#rrQR.
-T7R$XrrV)58E^$U#Y:<Njo5A-;!@r]&:a06s6p!ghsp^H+RoF3TC)X[pRaG1!!$EprrV(k&EWro
--ucrms6p!ghsp^H+RoF3TC)X[pRaG1!!$F'rrUf55j&+K(jOY`s31KC^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2&'I"=R)r\)6BK!2&c]!+>0n!nV)sl2UhAqu6cmY@o'A!!5-Pmt(N#rrQR.
-T7R$XrrV)58E^$U#Y:<Njo5A-;!@r]&:a06s6p!ghsp^H+RoF3TC)X[pRaG1!!$EprrV(k&EWro
--ucrms6p!ghsp^H+RoF3TC)X[pRaG1!!$F'rrUf55j&+K(jOY`s31KC^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!2&'I"=R)r\)6BK!2&c]!+>0n!nV)sl2UhAqu6cmY@o'A!!5-Pmt(N#rrQR.
-T7R$XrrV)58E^$U#Y:<Njo5A-;!@r]&:a06s6p!ghsp^H+RoF3TC)X[pRaG1!!$EprrV(k&EWro
--ucrms6p!ghsp^H+RoF3TC)X[pRaG1!!$F'rrUf55j&+K(jOY`s31KC^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!9`=U!6=!s!9`me!8$N9"S\O55R?r]"$ggla7]H7f8i`Vmf3G,8;GfJs5O%[
-?iZgMs1SF7pU>)qn,NOr8;G7Crr^l>=:js%""7i\n*'f@^B"#urrC+0^B!H^rr^l&:a#?0"=RB%
-^[LIf"4*<A..7-=#XEX4hsg[8^B"#urrC+0^B!H^rr^l&:a#?0"=RB%^[Lmr"7N.$5jeUR5]EoX
-s2k9@^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!9`=U!6=!s!9`me!8$N9"S\O55R?r]"$ggla7]H7f8i`Vmf3G,8;GfJs5O%[
-?iZgMs1SF7pU>)qn,NOr8;G7Crr^l>=:js%""7i\n*'f@^B"#urrC+0^B!H^rr^l&:a#?0"=RB%
-^[LIf"4*<A..7-=#XEX4hsg[8^B"#urrC+0^B!H^rr^l&:a#?0"=RB%^[Lmr"7N.$5jeUR5]EoX
-s2k9@^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!9`=U!6=!s!9`me!8$N9"S\O55R?r]"$ggla7]H7f8i`Vmf3G,8;GfJs5O%[
-?iZgMs1SF7pU>)qn,NOr8;G7Crr^l>=:js%""7i\n*'f@^B"#urrC+0^B!H^rr^l&:a#?0"=RB%
-^[LIf"4*<A..7-=#XEX4hsg[8^B"#urrC+0^B!H^rr^l&:a#?0"=RB%^[Lmr"7N.$5jeUR5]EoX
-s2k9@^\n-4T@3ai~>
-df0<^r;ZhiJcC<$qu6ZJrkAQ%It*OY^Au=>rr^$&Iq\XC"DE:7\*&>BhZ!Xb!2"iB\c2ls^V?t%
-IsCiUs*k'aa4L=mc]<&E5lCZe&3rKOJ#DIprrDNe^AtJ:IfQtW^B!`\rrMSlrI=Z/"B^/'YLf<E
-!:Tp%!3cBO!4VsB!:T7R"4s`+J,)>48:Q,]c[l,8rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcC<$qu6ZJrkAQ%It*OY^Au=>rr^$&Iq\XC"DE:7\*&>BhZ!Xb!2"iB\c2ls^V?t%
-IsCiUs*k'aa4L=mc]<&E5lCZe&3rKOJ#DIprrDNe^AtJ:IfQtW^B!`\rrMSlrI=Z/"B^/'YLf<E
-!:Tp%!3cBO!4VsB!:T7R"4s`+J,)>48:Q,]c[l,8rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcC<$qu6ZJrkAQ%It*OY^Au=>rr^$&Iq\XC"DE:7\*&>BhZ!Xb!2"iB\c2ls^V?t%
-IsCiUs*k'aa4L=mc]<&E5lCZe&3rKOJ#DIprrDNe^AtJ:IfQtW^B!`\rrMSlrI=Z/"B^/'YLf<E
-!:Tp%!3cBO!4VsB!:T7R"4s`+J,)>48:Q,]c[l,8rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcDJEq>^M'JcC<$e,KD5qZ$U=JcCT,!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcDJEq>^M'JcC<$e,KD5qZ$U=JcCT,!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcDJEq>^M'JcC<$e,KD5qZ$U=JcCT,!5JI4!2%^>J,~>
-df0<^r;ZhiJcF[.!q3n=rdP!A^X%K2JcF$q!al##JcEpn"7O">Vu;,E^Z5@j!!$DXs+14!rr>=]
-!!"-ms,$aU^\n-4T@3ai~>
-df0<^r;ZhiJcF[.!q3n=rdP!A^X%K2JcF$q!al##JcEpn"7O">Vu;,E^Z5@j!!$DXs+14!rr>=]
-!!"-ms,$aU^\n-4T@3ai~>
-df0<^r;ZhiJcF[.!q3n=rdP!A^X%K2JcF$q!al##JcEpn"7O">Vu;,E^Z5@j!!$DXs+14!rr>=]
-!!"-ms,$aU^\n-4T@3ai~>
-df0<^r;ZhiJcFd1!oJb]p](@$@(2*pgV3aOJcG-;!al##JcF'r"8B!4)"dk10RqF3s7u]q@+bJZ
-chTg+[t4SKrrCC2^Aulhrr>=]!!"-ms,$aU^\n-4T@3ai~>
-df0<^r;ZhiJcFd1!oJb]p](@$@(2*pgV3aOJcG-;!al##JcF'r"8B!4)"dk10RqF3s7u]q@+bJZ
-chTg+[t4SKrrCC2^Aulhrr>=]!!"-ms,$aU^\n-4T@3ai~>
-df0<^r;ZhiJcFd1!oJb]p](@$@(2*pgV3aOJcG-;!al##JcF'r"8B!4)"dk10RqF3s7u]q@+bJZ
-chTg+[t4SKrrCC2^Aulhrr>=]!!"-ms,$aU^\n-4T@3ai~>
-df0<^r;ZhiJcFj3!S9U-!!+3tNrRi6!2"iBmJd5q!2"iBdJj9O:^HLi![)16lMp\\!+=IZ!5J=0
-!2"iBnG`JRlMpomYQ"SfqZ$U=JcCT,!5JI4!2%^>J,~>
-df0<^r;ZhiJcFj3!S9U-!!+3tNrRi6!2"iBmJd5q!2"iBdJj9O:^HLi![)16lMp\\!+=IZ!5J=0
-!2"iBnG`JRlMpomYQ"SfqZ$U=JcCT,!5JI4!2%^>J,~>
-df0<^r;ZhiJcFj3!S9U-!!+3tNrRi6!2"iBmJd5q!2"iBdJj9O:^HLi![)16lMp\\!+=IZ!5J=0
-!2"iBnG`JRlMpomYQ"SfqZ$U=JcCT,!5JI4!2%^>J,~>
-df0<^r;ZhiJcFm4!J^sL!!,XROT4&8!2"iBmJd5q!2"iBe,KHh5j87LE:</nq>^M'f`(rdq#CDe
-V>gPQqS*%)ec,V7lMpomYQ"SfqZ$U=JcCT,!5JI4!2%^>J,~>
-df0<^r;ZhiJcFm4!J^sL!!,XROT4&8!2"iBmJd5q!2"iBe,KHh5j87LE:</nq>^M'f`(rdq#CDe
-V>gPQqS*%)ec,V7lMpomYQ"SfqZ$U=JcCT,!5JI4!2%^>J,~>
-df0<^r;ZhiJcFm4!J^sL!!,XROT4&8!2"iBmJd5q!2"iBe,KHh5j87LE:</nq>^M'f`(rdq#CDe
-V>gPQqS*%)ec,V7lMpomYQ"SfqZ$U=JcCT,!5JI4!2%^>J,~>
-df0<^r;ZhiJcFs6!Ui;?!!*qOOoO/9!2"iBmJd5q!2"iBec,[5=QTSa&<H5Yq>^M'f`(rdq#CDe
-V>gOFq>^NQec,V7lMpomYQ"SfqZ$U=JcCT,!5JI4!2%^>J,~>
-df0<^r;ZhiJcFs6!Ui;?!!*qOOoO/9!2"iBmJd5q!2"iBec,[5=QTSa&<H5Yq>^M'f`(rdq#CDe
-V>gOFq>^NQec,V7lMpomYQ"SfqZ$U=JcCT,!5JI4!2%^>J,~>
-df0<^r;ZhiJcFs6!Ui;?!!*qOOoO/9!2"iBmJd5q!2"iBec,[5=QTSa&<H5Yq>^M'f`(rdq#CDe
-V>gOFq>^NQec,V7lMpomYQ"SfqZ$U=JcCT,!5JI4!2%^>J,~>
-df0<^r;ZhiJcG!7!V\kE!!*AGP5j8:!2"iBmJd5q!2"iBf)Gc[#ibmc0^nK1q>^M'f`(rdq#CDe
-V>gOFq>^NQec,V7lMpomYQ"SfqZ$U=JcCT,!5JI4!2%^>J,~>
-df0<^r;ZhiJcG!7!V\kE!!*AGP5j8:!2"iBmJd5q!2"iBf)Gc[#ibmc0^nK1q>^M'f`(rdq#CDe
-V>gOFq>^NQec,V7lMpomYQ"SfqZ$U=JcCT,!5JI4!2%^>J,~>
-df0<^r;ZhiJcG!7!V\kE!!*AGP5j8:!2"iBmJd5q!2"iBf)Gc[#ibmc0^nK1q>^M'f`(rdq#CDe
-V>gOFq>^NQec,V7lMpomYQ"SfqZ$U=JcCT,!5JI4!2%^>J,~>
-df0<^r;ZhiJcG!7!,1Qr!?gips4[MRT7R%0rrQR.T7R$orrK;/i;`m$hsg[B!!$EZrrBh0!!&Xf
-rr@QF!!(p,rr>=M!!$E1rr>=]!!"-ms,$aU^\n-4T@3ai~>
-df0<^r;ZhiJcG!7!,1Qr!?gips4[MRT7R%0rrQR.T7R$orrK;/i;`m$hsg[B!!$EZrrBh0!!&Xf
-rr@QF!!(p,rr>=M!!$E1rr>=]!!"-ms,$aU^\n-4T@3ai~>
-df0<^r;ZhiJcG!7!,1Qr!?gips4[MRT7R%0rrQR.T7R$orrK;/i;`m$hsg[B!!$EZrrBh0!!&Xf
-rr@QF!!(p,rr>=M!!$E1rr>=]!!"-ms,$aU^\n-4T@3ai~>
-df0<^r;ZhiJcG$8!13E[!FUEV^B1$W+SYp:5a26&!!&XBs6]gf?iZgMs4I>OTC`*b-pW%UIfa"C
-&G6#(+P6/`q>^M'f`(rdq#CDeV>gOFq>^NQec,Vgq`k-@q#L7V!/IcX!'pD]!$HjmM>mRjr;Zhi
-df4g~>
-df0<^r;ZhiJcG$8!13E[!FUEV^B1$W+SYp:5a26&!!&XBs6]gf?iZgMs4I>OTC`*b-pW%UIfa"C
-&G6#(+P6/`q>^M'f`(rdq#CDeV>gOFq>^NQec,Vgq`k-@q#L7V!/IcX!'pD]!$HjmM>mRjr;Zhi
-df4g~>
-df0<^r;ZhiJcG$8!13E[!FUEV^B1$W+SYp:5a26&!!&XBs6]gf?iZgMs4I>OTC`*b-pW%UIfa"C
-&G6#(+P6/`q>^M'f`(rdq#CDeV>gOFq>^NQec,Vgq`k-@q#L7V!/IcX!'pD]!$HjmM>mRjr;Zhi
-df4g~>
-df0<^r;ZhiJcG'9!Tsaa!!-3Zq>UJf)#4.3O-K\(5QDAm!!&XBs6]gf?iZgMs4RDPQhCC\0TXi[
-rrTB3&GH/*&D-LQq>^M'f`(rdq#CDeV>gOFq>^NQcMmn%q#I>m!'pD]!$HjmM>mRjr;Zhidf4g~>
-df0<^r;ZhiJcG'9!Tsaa!!-3Zq>UJf)#4.3O-K\(5QDAm!!&XBs6]gf?iZgMs4RDPQhCC\0TXi[
-rrTB3&GH/*&D-LQq>^M'f`(rdq#CDeV>gOFq>^NQcMmn%q#I>m!'pD]!$HjmM>mRjr;Zhidf4g~>
-df0<^r;ZhiJcG'9!Tsaa!!-3Zq>UJf)#4.3O-K\(5QDAm!!&XBs6]gf?iZgMs4RDPQhCC\0TXi[
-rrTB3&GH/*&D-LQq>^M'f`(rdq#CDeV>gOFq>^NQcMmn%q#I>m!'pD]!$HjmM>mRjr;Zhidf4g~>
-df0<^r;ZhiJcG'9!-%`6!.X_B!T,$r!!*r2JcGKE!Tsac!!&XBs6]gf?iZgMs4[JRcNs:G!>qI"
-rrMS-pAb4Bp[eF]!!$EZrrDN`^B!Gnrr@QF!!(p%rrCsP!2ohs5l1N]+G'QLrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG'9!-%`6!.X_B!T,$r!!*r2JcGKE!Tsac!!&XBs6]gf?iZgMs4[JRcNs:G!>qI"
-rrMS-pAb4Bp[eF]!!$EZrrDN`^B!Gnrr@QF!!(p%rrCsP!2ohs5l1N]+G'QLrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG'9!-%`6!.X_B!T,$r!!*r2JcGKE!Tsac!!&XBs6]gf?iZgMs4[JRcNs:G!>qI"
-rrMS-pAb4Bp[eF]!!$EZrrDN`^B!Gnrr@QF!!(p%rrCsP!2ohs5l1N]+G'QLrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG*:!Tsab!!%N@rrM!oq>^MfJcGKE!-%c7!2kDJmJd5q!2"iBg]%<K0_bVK@.3Ra
-!QR1p!!%98s7u]q@"J@Krr@QF!!(p%rrCsP!2ohs5l1N]+G'QLrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG*:!Tsab!!%N@rrM!oq>^MfJcGKE!-%c7!2kDJmJd5q!2"iBg]%<K0_bVK@.3Ra
-!QR1p!!%98s7u]q@"J@Krr@QF!!(p%rrCsP!2ohs5l1N]+G'QLrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG*:!Tsab!!%N@rrM!oq>^MfJcGKE!-%c7!2kDJmJd5q!2"iBg]%<K0_bVK@.3Ra
-!QR1p!!%98s7u]q@"J@Krr@QF!!(p%rrCsP!2ohs5l1N]+G'QLrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG*:!0?sV!&4!D!0?sV!&0!(q#:BX#l=T&)#&U]mJd5q!2"iBg]%7up](;Dm/I+\
-8GE/b^\%R&!!$DXs760iJ,0-Fhp26%ht[8Mrr>=]!!"-ms,$aU^\n-4T@3ai~>
-df0<^r;ZhiJcG*:!0?sV!&4!D!0?sV!&0!(q#:BX#l=T&)#&U]mJd5q!2"iBg]%7up](;Dm/I+\
-8GE/b^\%R&!!$DXs760iJ,0-Fhp26%ht[8Mrr>=]!!"-ms,$aU^\n-4T@3ai~>
-df0<^r;ZhiJcG*:!0?sV!&4!D!0?sV!&0!(q#:BX#l=T&)#&U]mJd5q!2"iBg]%7up](;Dm/I+\
-8GE/b^\%R&!!$DXs760iJ,0-Fhp26%ht[8Mrr>=]!!"-ms,$aU^\n-4T@3ai~>
-df0<^r;ZhiJcG*:!#YP4!3btn!V\#=!!'KZs7uZp;#1.lO+I>trrQR.T7R$trrC+7!!%N6rrMjb
-q#CF<p\"R_!!$DXs760iJ,0-Fhp26%ht[8Mrr>=]!!"-ms,$aU^\n-4T@3ai~>
-df0<^r;ZhiJcG*:!#YP4!3btn!V\#=!!'KZs7uZp;#1.lO+I>trrQR.T7R$trrC+7!!%N6rrMjb
-q#CF<p\"R_!!$DXs760iJ,0-Fhp26%ht[8Mrr>=]!!"-ms,$aU^\n-4T@3ai~>
-df0<^r;ZhiJcG*:!#YP4!3btn!V\#=!!'KZs7uZp;#1.lO+I>trrQR.T7R$trrC+7!!%N6rrMjb
-q#CF<p\"R_!!$DXs760iJ,0-Fhp26%ht[8Mrr>=]!!"-ms,$aU^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!71KA!&3pB!2')f!,-r`qYpQAq>^O5pOWA2rrQR.T7R$trr=bK!!%9-rrMjJ
-q#CDEp&Fjg!+:BXo)A]>q>^NQcMmn%q#I>m!'pD]!$HjmM>mRjr;Zhidf4g~>
-df0<^r;ZhiJcG-;!71KA!&3pB!2')f!,-r`qYpQAq>^O5pOWA2rrQR.T7R$trr=bK!!%9-rrMjJ
-q#CDEp&Fjg!+:BXo)A]>q>^NQcMmn%q#I>m!'pD]!$HjmM>mRjr;Zhidf4g~>
-df0<^r;ZhiJcG-;!71KA!&3pB!2')f!,-r`qYpQAq>^O5pOWA2rrQR.T7R$trr=bK!!%9-rrMjJ
-q#CDEp&Fjg!+:BXo)A]>q>^NQcMmn%q#I>m!'pD]!$HjmM>mRjr;Zhidf4g~>
-df0<^r;ZhiJcG-;!.XhF!/L(D!Ug<k!!"-ms8)`q;#1.lO+I>srrQR.T7R$urrBh0!!+MBkPkP.
-q#CF4p\+X`!!$DXs760iJ,0-Fhp26%ht[8Mrr>=]!!"-ms,$aU^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!.XhF!/L(D!Ug<k!!"-ms8)`q;#1.lO+I>srrQR.T7R$urrBh0!!+MBkPkP.
-q#CF4p\+X`!!$DXs760iJ,0-Fhp26%ht[8Mrr>=]!!"-ms,$aU^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!.XhF!/L(D!Ug<k!!"-ms8)`q;#1.lO+I>srrQR.T7R$urrBh0!!+MBkPkP.
-q#CF4p\+X`!!$DXs760iJ,0-Fhp26%ht[8Mrr>=]!!"-ms,$aU^\n-4T@3ai~>
-df0<^r;ZhiJcG-;!'pA\!71-6!'pA\!8iA-r;QcCq>^O5pOWA1rrQR.T7R$urr>mk!!'4arr?a.
-!!&qjs7u]q@/'^$^BKsRO2&I(aT):T"eU9oVn^"$rrC+=^AuULrr@QF!!(p%rrCsP!8d_[cbGfr
-LVLmfrrVZ(\,LjY\%h\7rr>=]!!"/*s8Th;T7;?g^V>@"WrE(6r;Zhidf4g~>
-df0<^r;ZhiJcG-;!'pA\!71-6!'pA\!8iA-r;QcCq>^O5pOWA1rrQR.T7R$urr>mk!!'4arr?a.
-!!&qjs7u]q@/'^$^BKsRO2&I(aT):T"eU9oVn^"$rrC+=^AuULrr@QF!!(p%rrCsP!8d_[cbGfr
-LVLmfrrVZ(\,LjY\%h\7rr>=]!!"/*s8Th;T7;?g^V>@"WrE(6r;Zhidf4g~>
-df0<^r;ZhiJcG-;!'pA\!71-6!'pA\!8iA-r;QcCq>^O5pOWA1rrQR.T7R$urr>mk!!'4arr?a.
-!!&qjs7u]q@/'^$^BKsRO2&I(aT):T"eU9oVn^"$rrC+=^AuULrr@QF!!(p%rrCsP!8d_[cbGfr
-LVLmfrrVZ(\,LjY\%h\7rr>=]!!"/*s8Th;T7;?g^V>@"WrE(6r;Zhidf4g~>
-df0<^r;ZhiJcG0<!Ug<k!!"/0rrA,V!!&XBs8;ls;#1.lO+I>rrrQR.T7R%!rrM9gq>^LljSo8D
-&GcA,0_YPC!!$F(rrVY]8GN5e&7EQMrrCsI^B!HarrUMk0_YPK5_%DHrrTZK+Sc!>+BXufqYpQA
-rP&>?q>^MnoY1D#h#@B3q#KpaqS*$^qYpW#?kE/7!YAJ;k5PM?O"g>/![r$>rr2s`qZ$U=m/I.5
-GVJjl!^M7eo`"p3q7cpem/I(;q7cq(JcFg2!5JI4!2%^>J,~>
-df0<^r;ZhiJcG0<!Ug<k!!"/0rrA,V!!&XBs8;ls;#1.lO+I>rrrQR.T7R%!rrM9gq>^LljSo8D
-&GcA,0_YPC!!$F(rrVY]8GN5e&7EQMrrCsI^B!HarrUMk0_YPK5_%DHrrTZK+Sc!>+BXufqYpQA
-rP&>?q>^MnoY1D#h#@B3q#KpaqS*$^qYpW#?kE/7!YAJ;k5PM?O"g>/![r$>rr2s`qZ$U=m/I.5
-GVJjl!^M7eo`"p3q7cpem/I(;q7cq(JcFg2!5JI4!2%^>J,~>
-df0<^r;ZhiJcG0<!Ug<k!!"/0rrA,V!!&XBs8;ls;#1.lO+I>rrrQR.T7R%!rrM9gq>^LljSo8D
-&GcA,0_YPC!!$F(rrVY]8GN5e&7EQMrrCsI^B!HarrUMk0_YPK5_%DHrrTZK+Sc!>+BXufqYpQA
-rP&>?q>^MnoY1D#h#@B3q#KpaqS*$^qYpW#?kE/7!YAJ;k5PM?O"g>/![r$>rr2s`qZ$U=m/I.5
-GVJjl!^M7eo`"p3q7cpem/I(;q7cq(JcFg2!5JI4!2%^>J,~>
-df0<^r;ZhiJcG0<!3c5!!)W+`!6=p9!+:BXrVllDq>^O5pOWA0rrQR.T7R%!rr@<>!!(("rr@<>
-!!(@>s7u]q@/^*+mqD:m!BA^(rr@Q>!!&Y[rrK#7nGiSdcftH2cWCJD!!,Wgr;Qa^k5YM>h#@B3
-q#Kpaq>^M'r;Qea&G,r'5f`0i!S9m5!!=pYs$6G]!$L_0!N-e)!!,pBpAY,Zq#CF<p[8%^k8=$q
-!*FgPj8T+or;Zhidf4g~>
-df0<^r;ZhiJcG0<!3c5!!)W+`!6=p9!+:BXrVllDq>^O5pOWA0rrQR.T7R%!rr@<>!!(("rr@<>
-!!(@>s7u]q@/^*+mqD:m!BA^(rr@Q>!!&Y[rrK#7nGiSdcftH2cWCJD!!,Wgr;Qa^k5YM>h#@B3
-q#Kpaq>^M'r;Qea&G,r'5f`0i!S9m5!!=pYs$6G]!$L_0!N-e)!!,pBpAY,Zq#CF<p[8%^k8=$q
-!*FgPj8T+or;Zhidf4g~>
-df0<^r;ZhiJcG0<!3c5!!)W+`!6=p9!+:BXrVllDq>^O5pOWA0rrQR.T7R%!rr@<>!!(("rr@<>
-!!(@>s7u]q@/^*+mqD:m!BA^(rr@Q>!!&Y[rrK#7nGiSdcftH2cWCJD!!,Wgr;Qa^k5YM>h#@B3
-q#Kpaq>^M'r;Qea&G,r'5f`0i!S9m5!!=pYs$6G]!$L_0!N-e)!!,pBpAY,Zq#CF<p[8%^k8=$q
-!*FgPj8T+or;Zhidf4g~>
-df0<^r;ZhiJcG0<!/LCN!-mr3!:Taa!%<EurVljWq>^MVJcG!7!al##JcFU,!#YP4!%?k,!8%#H
-!+>R$q>^M'rr3"c&Ff`$#`&-R!.XP>!2&f]!QR1e!!$^!rrM"Rm/R;,E7b-i5j&+Ihq\53ht[9A
-s7u]q@/g0,a"Zu_!2&ZY!r%0Mmf3AB+Su-=+RoC3a#NGd!,2*+!'p>[!-%B+!*K't!>t9Vs5X+Z
-^\n-4T@3ai~>
-df0<^r;ZhiJcG0<!/LCN!-mr3!:Taa!%<EurVljWq>^MVJcG!7!al##JcFU,!#YP4!%?k,!8%#H
-!+>R$q>^M'rr3"c&Ff`$#`&-R!.XP>!2&f]!QR1e!!$^!rrM"Rm/R;,E7b-i5j&+Ihq\53ht[9A
-s7u]q@/g0,a"Zu_!2&ZY!r%0Mmf3AB+Su-=+RoC3a#NGd!,2*+!'p>[!-%B+!*K't!>t9Vs5X+Z
-^\n-4T@3ai~>
-df0<^r;ZhiJcG0<!/LCN!-mr3!:Taa!%<EurVljWq>^MVJcG!7!al##JcFU,!#YP4!%?k,!8%#H
-!+>R$q>^M'rr3"c&Ff`$#`&-R!.XP>!2&f]!QR1e!!$^!rrM"Rm/R;,E7b-i5j&+Ihq\53ht[9A
-s7u]q@/g0,a"Zu_!2&ZY!r%0Mmf3AB+Su-=+RoC3a#NGd!,2*+!'p>[!-%B+!*K't!>t9Vs5X+Z
-^\n-4T@3ai~>
-df0<^r;ZhiJcG0<!,23/!13*Q!"eu,JcG`L!3c5!!>tQ^s69Ob?iZgMs53hVfD,CHLZ/753;NUT
-+SYp4!!?X/k;_i/!+>R$!.XP>!2&i^!.X86!D)\Jrr@Q4!!9(u5j&+Ihq\53ht[9As7u]t@/p7G
-m/R-Yn,EFG.-1F/+S#I3J*I"78FQ?R!T+Ia!!((/rrAtm!!'cbs5O%Y^\n-4T@3ai~>
-df0<^r;ZhiJcG0<!,23/!13*Q!"eu,JcG`L!3c5!!>tQ^s69Ob?iZgMs53hVfD,CHLZ/753;NUT
-+SYp4!!?X/k;_i/!+>R$!.XP>!2&i^!.X86!D)\Jrr@Q4!!9(u5j&+Ihq\53ht[9As7u]t@/p7G
-m/R-Yn,EFG.-1F/+S#I3J*I"78FQ?R!T+Ia!!((/rrAtm!!'cbs5O%Y^\n-4T@3ai~>
-df0<^r;ZhiJcG0<!,23/!13*Q!"eu,JcG`L!3c5!!>tQ^s69Ob?iZgMs53hVfD,CHLZ/753;NUT
-+SYp4!!?X/k;_i/!+>R$!.XP>!2&i^!.X86!D)\Jrr@Q4!!9(u5j&+Ihq\53ht[9As7u]t@/p7G
-m/R-Yn,EFG.-1F/+S#I3J*I"78FQ?R!T+Ia!!((/rrAtm!!'cbs5O%Y^\n-4T@3ai~>
-df0<^r;ZhiJcG0<!'pA\!5Iq$!''fT!7uf%s8N'Qq>^MVJcFs6!al##JcFX-!2'&e!8lc8!13K]
-!9a.Wq>^S)`u++B!-n;=!.XP>!2&l_!+>!j!AO!5rrMjrk5YRUs$5`I!8lT3!8mSPnGi=b!atI^
-lMpq*nc&XI+QNM&+S,O4@-@Rk0^nf:!2'&e!AO9=rrMR*q>^M7JcF^/!5JI4!2%^>J,~>
-df0<^r;ZhiJcG0<!'pA\!5Iq$!''fT!7uf%s8N'Qq>^MVJcFs6!al##JcFX-!2'&e!8lc8!13K]
-!9a.Wq>^S)`u++B!-n;=!.XP>!2&l_!+>!j!AO!5rrMjrk5YRUs$5`I!8lT3!8mSPnGi=b!atI^
-lMpq*nc&XI+QNM&+S,O4@-@Rk0^nf:!2'&e!AO9=rrMR*q>^M7JcF^/!5JI4!2%^>J,~>
-df0<^r;ZhiJcG0<!'pA\!5Iq$!''fT!7uf%s8N'Qq>^MVJcFs6!al##JcFX-!2'&e!8lc8!13K]
-!9a.Wq>^S)`u++B!-n;=!.XP>!2&l_!+>!j!AO!5rrMjrk5YRUs$5`I!8lT3!8mSPnGi=b!atI^
-lMpq*nc&XI+QNM&+S,O4@-@Rk0^nf:!2'&e!AO9=rrMR*q>^M7JcF^/!5JI4!2%^>J,~>
-df0<^r;ZhiJcG0<!$M+<!8m2D!+>X'!4ROZ!WTA"!!*r2JcFs6!al##JcFX-!,23/!'&p:!:T^`
-!3c1tq>^O=#jD<hO88eUJ+<R>TCr3bpJCM_s$-Q<o`+tgoD\j[5ir%JTDq1>!!(p3rrCsP!:^$b
-!!,&%l2Ui5p[eCch]UqZ!$Lq6!V]F`!<5:a0_GDG;"sti8GN5cJ+EU>@/9j(0_^.uiVrnmr;Zhi
-df4g~>
-df0<^r;ZhiJcG0<!$M+<!8m2D!+>X'!4ROZ!WTA"!!*r2JcFs6!al##JcFX-!,23/!'&p:!:T^`
-!3c1tq>^O=#jD<hO88eUJ+<R>TCr3bpJCM_s$-Q<o`+tgoD\j[5ir%JTDq1>!!(p3rrCsP!:^$b
-!!,&%l2Ui5p[eCch]UqZ!$Lq6!V]F`!<5:a0_GDG;"sti8GN5cJ+EU>@/9j(0_^.uiVrnmr;Zhi
-df4g~>
-df0<^r;ZhiJcG0<!$M+<!8m2D!+>X'!4ROZ!WTA"!!*r2JcFs6!al##JcFX-!,23/!'&p:!:T^`
-!3c1tq>^O=#jD<hO88eUJ+<R>TCr3bpJCM_s$-Q<o`+tgoD\j[5ir%JTDq1>!!(p3rrCsP!:^$b
-!!,&%l2Ui5p[eCch]UqZ!$Lq6!V]F`!<5:a0_GDG;"sti8GN5cJ+EU>@/9j(0_^.uiVrnmr;Zhi
-df4g~>
-df0<^r;ZhiJcG0<q#CEhmJd0"q>^M^Jc>cN0_tbLT7R%*rrQR.T7R%"rr=bL!!$uqrr=2<!!%!5
-s6fph(dL@Z!!*AgqYpPFnc/Z^p&>#"q#CL&BWq1.rrVAU;"t"jO7`GP;"ako0RnSUO*Eo<p](Af
-s$5`I!8lT3!8mSPnGhqW""6E"#ke5uJ+N[?3;3CX#XEWaIs=4DoDek6o`"o!q#CL&BWq1.rrVAU
-;"t"jO8/_Uk8=$q!=7<LrrBP)!!*AWJcF[.!5JI4!2%^>J,~>
-df0<^r;ZhiJcG0<q#CEhmJd0"q>^M^Jc>cN0_tbLT7R%*rrQR.T7R%"rr=bL!!$uqrr=2<!!%!5
-s6fph(dL@Z!!*AgqYpPFnc/Z^p&>#"q#CL&BWq1.rrVAU;"t"jO7`GP;"ako0RnSUO*Eo<p](Af
-s$5`I!8lT3!8mSPnGhqW""6E"#ke5uJ+N[?3;3CX#XEWaIs=4DoDek6o`"o!q#CL&BWq1.rrVAU
-;"t"jO8/_Uk8=$q!=7<LrrBP)!!*AWJcF[.!5JI4!2%^>J,~>
-df0<^r;ZhiJcG0<q#CEhmJd0"q>^M^Jc>cN0_tbLT7R%*rrQR.T7R%"rr=bL!!$uqrr=2<!!%!5
-s6fph(dL@Z!!*AgqYpPFnc/Z^p&>#"q#CL&BWq1.rrVAU;"t"jO7`GP;"ako0RnSUO*Eo<p](Af
-s$5`I!8lT3!8mSPnGhqW""6E"#ke5uJ+N[?3;3CX#XEWaIs=4DoDek6o`"o!q#CL&BWq1.rrVAU
-;"t"jO8/_Uk8=$q!=7<LrrBP)!!*AWJcF[.!5JI4!2%^>J,~>
-df0<^r;ZhiJcG3=!8%#Hm/I'8q>^M7Jc>_Rq>^LLJcFm4!al##JcF[.!:T^`!2&0K!)WLl!''cR
-o)JhGO5Km8!p>=]p](:ro)A^)q>^MfpAY,bq#CFTfCo4Fa#Nnq!=7$FrrA,T!!3FUhtd9RhhN?O
-!!&Ygrr@QF!!(p%rrCsP!:^$[!!49mhu*KUhiAWM!!*r2p&>#Ip](@DTC;UU!oJJMp](::p&>#a
-q#CFTfCo4Fa#Nnq!=7$HrrAtm!!#"OrrMR*q>^MVJcFX-!5JI4!2%^>J,~>
-df0<^r;ZhiJcG3=!8%#Hm/I'8q>^M7Jc>_Rq>^LLJcFm4!al##JcF[.!:T^`!2&0K!)WLl!''cR
-o)JhGO5Km8!p>=]p](:ro)A^)q>^MfpAY,bq#CFTfCo4Fa#Nnq!=7$FrrA,T!!3FUhtd9RhhN?O
-!!&Ygrr@QF!!(p%rrCsP!:^$[!!49mhu*KUhiAWM!!*r2p&>#Ip](@DTC;UU!oJJMp](::p&>#a
-q#CFTfCo4Fa#Nnq!=7$HrrAtm!!#"OrrMR*q>^MVJcFX-!5JI4!2%^>J,~>
-df0<^r;ZhiJcG3=!8%#Hm/I'8q>^M7Jc>_Rq>^LLJcFm4!al##JcF[.!:T^`!2&0K!)WLl!''cR
-o)JhGO5Km8!p>=]p](:ro)A^)q>^MfpAY,bq#CFTfCo4Fa#Nnq!=7$FrrA,T!!3FUhtd9RhhN?O
-!!&Ygrr@QF!!(p%rrCsP!:^$[!!49mhu*KUhiAWM!!*r2p&>#Ip](@DTC;UU!oJJMp](::p&>#a
-q#CFTfCo4Fa#Nnq!=7$HrrAtm!!#"OrrMR*q>^MVJcFX-!5JI4!2%^>J,~>
-df0<^r;ZhiJcG3=!5J@1!#Y)&!0?sV!)S:I!V\#=!!'3Rs5s=_?iZgMs5<nW^\Ij0cena&L\^uO
-#l"/po`,"XfD#:GpL*ar!719:!5J@1!2'#c!S7VR!!.?=o`"sd8GW;dE;0A5`sDJ@!C59/rrL/*
-r;Zhiqu6YGq>^NQcMmn%q#Kpao`,"@\+fn'k;`8;!3c+r!RD&I!!.?=o`#!5BFt%@!$M"8!S7VR
-!!.?=o`"sd8GW;dE;0A4=SVpsQhLFZ@/9j'5_8slrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG3=!5J@1!#Y)&!0?sV!)S:I!V\#=!!'3Rs5s=_?iZgMs5<nW^\Ij0cena&L\^uO
-#l"/po`,"XfD#:GpL*ar!719:!5J@1!2'#c!S7VR!!.?=o`"sd8GW;dE;0A5`sDJ@!C59/rrL/*
-r;Zhiqu6YGq>^NQcMmn%q#Kpao`,"@\+fn'k;`8;!3c+r!RD&I!!.?=o`#!5BFt%@!$M"8!S7VR
-!!.?=o`"sd8GW;dE;0A4=SVpsQhLFZ@/9j'5_8slrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG3=!5J@1!#Y)&!0?sV!)S:I!V\#=!!'3Rs5s=_?iZgMs5<nW^\Ij0cena&L\^uO
-#l"/po`,"XfD#:GpL*ar!719:!5J@1!2'#c!S7VR!!.?=o`"sd8GW;dE;0A5`sDJ@!C59/rrL/*
-r;Zhiqu6YGq>^NQcMmn%q#Kpao`,"@\+fn'k;`8;!3c+r!RD&I!!.?=o`#!5BFt%@!$M"8!S7VR
-!!.?=o`"sd8GW;dE;0A4=SVpsQhLFZ@/9j'5_8slrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG3=!4Ve)!$LY.!2')f!'l/9!0?sV!&0!(jo5Bi!2"iBi;WeLq>^L$hZ!Sbq#CEP
-q>^0h!>(mprr@<>!!$-mrrBh1!!&Ycrr>%U!!*A?nc&Xa)#F:6#j;!_!&43K!+><r"K*(:!2'/g
-!.XhF!8l*%!8mSPnGi4_!XOSUp&>'U)#=44;"jnh0_k\KTCDj\5l1N]+SPg83;W[V#f#p0!V[H.
-!!*Agq#:B`)#=45#j;!_!4Ve)!>+FFs5*bU^\n-4T@3ai~>
-df0<^r;ZhiJcG3=!4Ve)!$LY.!2')f!'l/9!0?sV!&0!(jo5Bi!2"iBi;WeLq>^L$hZ!Sbq#CEP
-q>^0h!>(mprr@<>!!$-mrrBh1!!&Ycrr>%U!!*A?nc&Xa)#F:6#j;!_!&43K!+><r"K*(:!2'/g
-!.XhF!8l*%!8mSPnGi4_!XOSUp&>'U)#=44;"jnh0_k\KTCDj\5l1N]+SPg83;W[V#f#p0!V[H.
-!!*Agq#:B`)#=45#j;!_!4Ve)!>+FFs5*bU^\n-4T@3ai~>
-df0<^r;ZhiJcG3=!4Ve)!$LY.!2')f!'l/9!0?sV!&0!(jo5Bi!2"iBi;WeLq>^L$hZ!Sbq#CEP
-q>^0h!>(mprr@<>!!$-mrrBh1!!&Ycrr>%U!!*A?nc&Xa)#F:6#j;!_!&43K!+><r"K*(:!2'/g
-!.XhF!8l*%!8mSPnGi4_!XOSUp&>'U)#=44;"jnh0_k\KTCDj\5l1N]+SPg83;W[V#f#p0!V[H.
-!!*Agq#:B`)#=45#j;!_!4Ve)!>+FFs5*bU^\n-4T@3ai~>
-df0<^r;ZhiJcG3=!2')f!''?F!5J@1!'l2:!V[H-!!'3Rs5j7^?iZgMs5<nWO88hV38XZ8ht[6P
-ch[V9!!,pZnc&S[q>^O%n+?V[^\Rp1TD8EdYPJ5!TC;d[O88hVGkq@>YPA.u=RQ1kmoTR^qu6YG
-q>^NQcMmn%q#Kpap](=KfCJqATDANf+SYm9^\Ij0TC;d[5l1N]+SYm9YPJ5!TC;d[O88hVGk_4<
-\+p"(8GW8dmhkm$!2kDJh>[Jir;Zhidf4g~>
-df0<^r;ZhiJcG3=!2')f!''?F!5J@1!'l2:!V[H-!!'3Rs5j7^?iZgMs5<nWO88hV38XZ8ht[6P
-ch[V9!!,pZnc&S[q>^O%n+?V[^\Rp1TD8EdYPJ5!TC;d[O88hVGkq@>YPA.u=RQ1kmoTR^qu6YG
-q>^NQcMmn%q#Kpap](=KfCJqATDANf+SYm9^\Ij0TC;d[5l1N]+SYm9YPJ5!TC;d[O88hVGk_4<
-\+p"(8GW8dmhkm$!2kDJh>[Jir;Zhidf4g~>
-df0<^r;ZhiJcG3=!2')f!''?F!5J@1!'l2:!V[H-!!'3Rs5j7^?iZgMs5<nWO88hV38XZ8ht[6P
-ch[V9!!,pZnc&S[q>^O%n+?V[^\Rp1TD8EdYPJ5!TC;d[O88hVGkq@>YPA.u=RQ1kmoTR^qu6YG
-q>^NQcMmn%q#Kpap](=KfCJqATDANf+SYm9^\Ij0TC;d[5l1N]+SYm9YPJ5!TC;d[O88hVGk_4<
-\+p"(8GW8dmhkm$!2kDJh>[Jir;Zhidf4g~>
-df0<^r;ZhiJcG3=!2')f!'ooN!5J@1!&0'*!0?sV!&0!(jSo9h!2"iBi;We,q>^L\hZ!TMq#CE0
-q>^9k!>r<7rrM9gq>^Mfo`"p+q>^Mfq#:=jqZ$Ummf*=^)#F:50_t_K8GW;e)#*Cs!LL:mrr@QF
-!!(p%rrCsP!:^$a!!-d-nc&Xa#l4N$n+cn_;#1.l;"">`5l1N]+SYm9;#:4m;"">apDEc-!&4-H
-!+>U&!2o\n!,23/!+:BXh#@Ahr;Zhidf4g~>
-df0<^r;ZhiJcG3=!2')f!'ooN!5J@1!&0'*!0?sV!&0!(jSo9h!2"iBi;We,q>^L\hZ!TMq#CE0
-q>^9k!>r<7rrM9gq>^Mfo`"p+q>^Mfq#:=jqZ$Ummf*=^)#F:50_t_K8GW;e)#*Cs!LL:mrr@QF
-!!(p%rrCsP!:^$a!!-d-nc&Xa#l4N$n+cn_;#1.l;"">`5l1N]+SYm9;#:4m;"">apDEc-!&4-H
-!+>U&!2o\n!,23/!+:BXh#@Ahr;Zhidf4g~>
-df0<^r;ZhiJcG3=!2')f!'ooN!5J@1!&0'*!0?sV!&0!(jSo9h!2"iBi;We,q>^L\hZ!TMq#CE0
-q>^9k!>r<7rrM9gq>^Mfo`"p+q>^Mfq#:=jqZ$Ummf*=^)#F:50_t_K8GW;e)#*Cs!LL:mrr@QF
-!!(p%rrCsP!:^$a!!-d-nc&Xa#l4N$n+cn_;#1.l;"">`5l1N]+SYm9;#:4m;"">apDEc-!&4-H
-!+>U&!2o\n!,23/!+:BXh#@Ahr;Zhidf4g~>
-df0<^r;ZhiJcG3=!2')f!'ooN!5J@1!$Hsp!V[H-!!'3Rs5a1]?iZgMs5<nWB_h]/:u20I!!&qm
-s7u]q@.!so;#1.l8G)o^^\Rp1TDAKech[VAcgC`4O88hVn,*+bchRP@\)[JgJ,0-Fhp26%ht[9A
-s7u]q=RQ1h8GW;d\,$%(fD5IJ#iG(M!'pD]!$M(:!71KA!71'4!0?sV!:T[^!V[`5!!*r*r;Qc3
-q>^O=mt(MorrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG3=!2')f!'ooN!5J@1!$Hsp!V[H-!!'3Rs5a1]?iZgMs5<nWB_h]/:u20I!!&qm
-s7u]q@.!so;#1.l8G)o^^\Rp1TDAKech[VAcgC`4O88hVn,*+bchRP@\)[JgJ,0-Fhp26%ht[9A
-s7u]q=RQ1h8GW;d\,$%(fD5IJ#iG(M!'pD]!$M(:!71KA!71'4!0?sV!:T[^!V[`5!!*r*r;Qc3
-q>^O=mt(MorrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG3=!2')f!'ooN!5J@1!$Hsp!V[H-!!'3Rs5a1]?iZgMs5<nWB_h]/:u20I!!&qm
-s7u]q@.!so;#1.l8G)o^^\Rp1TDAKech[VAcgC`4O88hVn,*+bchRP@\)[JgJ,0-Fhp26%ht[9A
-s7u]q=RQ1h8GW;d\,$%(fD5IJ#iG(M!'pD]!$M(:!71KA!71'4!0?sV!:T[^!V[`5!!*r*r;Qc3
-q>^O=mt(MorrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG3=!.XhF!'ooN!5J@1!$Hsp!0?sV!&0!(j8T0g!2"iBi;Wdbq>^M'h>[Hdq>^Mf
-q>^9k!+>3o!6=p9!!r5s!5J@1!2')e!,260!(cJV!9a1Y!3c;"!-%c7!(c,L!.XhF!8l*%!8mSP
-nGi=b!+>6p!-%c7!2')e!-n>?!-%?*!'pD]!$M(:!,260!(cJV!9a1Y!3c+r!5J=0!+>d*!V[`5
-!!(&js4dPR^\n-4T@3ai~>
-df0<^r;ZhiJcG3=!.XhF!'ooN!5J@1!$Hsp!0?sV!&0!(j8T0g!2"iBi;Wdbq>^M'h>[Hdq>^Mf
-q>^9k!+>3o!6=p9!!r5s!5J@1!2')e!,260!(cJV!9a1Y!3c;"!-%c7!(c,L!.XhF!8l*%!8mSP
-nGi=b!+>6p!-%c7!2')e!-n>?!-%?*!'pD]!$M(:!,260!(cJV!9a1Y!3c+r!5J=0!+>d*!V[`5
-!!(&js4dPR^\n-4T@3ai~>
-df0<^r;ZhiJcG3=!.XhF!'ooN!5J@1!$Hsp!0?sV!&0!(j8T0g!2"iBi;Wdbq>^M'h>[Hdq>^Mf
-q>^9k!+>3o!6=p9!!r5s!5J@1!2')e!,260!(cJV!9a1Y!3c;"!-%c7!(c,L!.XhF!8l*%!8mSP
-nGi=b!+>6p!-%c7!2')e!-n>?!-%?*!'pD]!$M(:!,260!(cJV!9a1Y!3c+r!5J=0!+>d*!V[`5
-!!(&js4dPR^\n-4T@3ai~>
-df0<^r;ZhiJcG3=!.XhF!'ooN!5J@1!!n;Y!Ugm%!!'3Rs5X+\?iZgMs5<nW5l(H\B\i[g+Sl'<
-J,0-@!!$Enrr<W,!!(XDrrBh1!!&Yerr=2=!!%N7rr<o5!!%!8rr=bL!!&qVrr@QF!!(p%rrCsP
-!:^$b!!$EprrA\f!!&A]rr=bL!!(@4rr>=]!!"/:rr=2=!!%N7rr<o5!!%!2rr@$6!!'e5rr?a/
-!!%M"s4[JQ^\n-4T@3ai~>
-df0<^r;ZhiJcG3=!.XhF!'ooN!5J@1!!n;Y!Ugm%!!'3Rs5X+\?iZgMs5<nW5l(H\B\i[g+Sl'<
-J,0-@!!$Enrr<W,!!(XDrrBh1!!&Yerr=2=!!%N7rr<o5!!%!8rr=bL!!&qVrr@QF!!(p%rrCsP
-!:^$b!!$EprrA\f!!&A]rr=bL!!(@4rr>=]!!"/:rr=2=!!%N7rr<o5!!%!2rr@$6!!'e5rr?a/
-!!%M"s4[JQ^\n-4T@3ai~>
-df0<^r;ZhiJcG3=!.XhF!'ooN!5J@1!!n;Y!Ugm%!!'3Rs5X+\?iZgMs5<nW5l(H\B\i[g+Sl'<
-J,0-@!!$Enrr<W,!!(XDrrBh1!!&Yerr=2=!!%N7rr<o5!!%!8rr=bL!!&qVrr@QF!!(p%rrCsP
-!:^$b!!$EprrA\f!!&A]rr=bL!!(@4rr>=]!!"/:rr=2=!!%N7rr<o5!!%!2rr@$6!!'e5rr?a/
-!!%M"s4[JQ^\n-4T@3ai~>
-df0<^r;ZhiJcG3=!.XhF!'ooN!5J=0L&V-lq>^LLJcFa0!al##JcF[.!''fT!.Wi)!$M+<!.XhE
-q>^M'm/I&^q>^N!p&>$,q>^MfqYpQYq>^N1li-r]qZ$U]r;Qccq>^O5pYu2QJ,0-Fhp26%ht[9A
-s7u]q@.+$pYPJ5!J,90Fn+m"a..$s65l1N]+Sl$;kP>/Y^[(n";#:4m5kY-XpF,k<"!I@<^\Rp2
-3;8"(gA_/fr;Zhidf4g~>
-df0<^r;ZhiJcG3=!.XhF!'ooN!5J=0L&V-lq>^LLJcFa0!al##JcF[.!''fT!.Wi)!$M+<!.XhE
-q>^M'm/I&^q>^N!p&>$,q>^MfqYpQYq>^N1li-r]qZ$U]r;Qccq>^O5pYu2QJ,0-Fhp26%ht[9A
-s7u]q@.+$pYPJ5!J,90Fn+m"a..$s65l1N]+Sl$;kP>/Y^[(n";#:4m5kY-XpF,k<"!I@<^\Rp2
-3;8"(gA_/fr;Zhidf4g~>
-df0<^r;ZhiJcG3=!.XhF!'ooN!5J=0L&V-lq>^LLJcFa0!al##JcF[.!''fT!.Wi)!$M+<!.XhE
-q>^M'm/I&^q>^N!p&>$,q>^MfqYpQYq>^N1li-r]qZ$U]r;Qccq>^O5pYu2QJ,0-Fhp26%ht[9A
-s7u]q@.+$pYPJ5!J,90Fn+m"a..$s65l1N]+Sl$;kP>/Y^[(n";#:4m5kY-XpF,k<"!I@<^\Rp2
-3;8"(gA_/fr;Zhidf4g~>
-df0<^r;ZhiJcG3=!.XhF!'ooN!5J=0jSo5Ce3F#+df0@2#l4N$YCZ`5rrQR.T7R%#rr>=\!!%N)
-rr=2<!!%NEs7u]q@-mmnO88hVGkM(:^\Rp1TDJQfYPJ5!pZqhZ@/Bp(5lCW^YPJ5!@,_+cJ,0-F
-hp26%ht[9As7u]q@.+$p^\Rp1J,90FYPJ5!GjPG15l1N]+Sl$;YPJ5!pZqhZ@/Bp(5kP'W`sDMA
-!dOG^qZ$X&f7EtTrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG3=!.XhF!'ooN!5J=0jSo5Ce3F#+df0@2#l4N$YCZ`5rrQR.T7R%#rr>=\!!%N)
-rr=2<!!%NEs7u]q@-mmnO88hVGkM(:^\Rp1TDJQfYPJ5!pZqhZ@/Bp(5lCW^YPJ5!@,_+cJ,0-F
-hp26%ht[9As7u]q@.+$p^\Rp1J,90FYPJ5!GjPG15l1N]+Sl$;YPJ5!pZqhZ@/Bp(5kP'W`sDMA
-!dOG^qZ$X&f7EtTrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG3=!.XhF!'ooN!5J=0jSo5Ce3F#+df0@2#l4N$YCZ`5rrQR.T7R%#rr>=\!!%N)
-rr=2<!!%NEs7u]q@-mmnO88hVGkM(:^\Rp1TDJQfYPJ5!pZqhZ@/Bp(5lCW^YPJ5!@,_+cJ,0-F
-hp26%ht[9As7u]q@.+$p^\Rp1J,90FYPJ5!GjPG15l1N]+Sl$;YPJ5!pZqhZ@/Bp(5kP'W`sDMA
-!dOG^qZ$X&f7EtTrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG3=!.XhF!'ooN!5J@1!#Xes!8l9+!.WGs!-%c7!&0!(iVrse!2"iBi;WdBq>^M'
-h>[Htq>^MNq>^9k!+>0n!4Ve)!)W@g!5J@1!2',f!-%f8!&3^<!.XkG!$M4>!-%c7!0?+=!.XhF
-!8l*%!8mSPnGi=b!+>6p!5J@1!.XkF!-%c7!3bbh!'pD]!$M+;!-%f8!&3^<!.XkG!$Ln5!.XeE
-!(cqd!1/9:f`(rdr;Zhidf4g~>
-df0<^r;ZhiJcG3=!.XhF!'ooN!5J@1!#Xes!8l9+!.WGs!-%c7!&0!(iVrse!2"iBi;WdBq>^M'
-h>[Htq>^MNq>^9k!+>0n!4Ve)!)W@g!5J@1!2',f!-%f8!&3^<!.XkG!$M4>!-%c7!0?+=!.XhF
-!8l*%!8mSPnGi=b!+>6p!5J@1!.XkF!-%c7!3bbh!'pD]!$M+;!-%f8!&3^<!.XkG!$Ln5!.XeE
-!(cqd!1/9:f`(rdr;Zhidf4g~>
-df0<^r;ZhiJcG3=!.XhF!'ooN!5J@1!#Xes!8l9+!.WGs!-%c7!&0!(iVrse!2"iBi;WdBq>^M'
-h>[Htq>^MNq>^9k!+>0n!4Ve)!)W@g!5J@1!2',f!-%f8!&3^<!.XkG!$M4>!-%c7!0?+=!.XhF
-!8l*%!8mSPnGi=b!+>6p!5J@1!.XkF!-%c7!3bbh!'pD]!$M+;!-%f8!&3^<!.XkG!$Ln5!.XeE
-!(cqd!1/9:f`(rdr;Zhidf4g~>
-df0<^r;ZhiJcG3=!.XhF!'ooN!5J@1!$LA&!8l9+!.WJt!Tsab!!'3Rs5EtZ?iZgMs5<nW@/9j'
-@,:kY!!&Yes7u]q@-mmnfD5II5kY-W^\Rp1TDJQf5l1N])!X?d+Su-=+T26>5l(H\a5R$uJ,0-F
-hp26%ht[9As7u]q@.+$phtd<QJ,90F5l(H\fBiM;5l1N]+Sl$;5l1N])!X?d+Su-=+S5U6pFu1=
-!(_\@fDbicr;Zhidf4g~>
-df0<^r;ZhiJcG3=!.XhF!'ooN!5J@1!$LA&!8l9+!.WJt!Tsab!!'3Rs5EtZ?iZgMs5<nW@/9j'
-@,:kY!!&Yes7u]q@-mmnfD5II5kY-W^\Rp1TDJQf5l1N])!X?d+Su-=+T26>5l(H\a5R$uJ,0-F
-hp26%ht[9As7u]q@.+$phtd<QJ,90F5l(H\fBiM;5l1N]+Sl$;5l1N])!X?d+Su-=+S5U6pFu1=
-!(_\@fDbicr;Zhidf4g~>
-df0<^r;ZhiJcG3=!.XhF!'ooN!5J@1!$LA&!8l9+!.WJt!Tsab!!'3Rs5EtZ?iZgMs5<nW@/9j'
-@,:kY!!&Yes7u]q@-mmnfD5II5kY-W^\Rp1TDJQf5l1N])!X?d+Su-=+T26>5l(H\a5R$uJ,0-F
-hp26%ht[9As7u]q@.+$phtd<QJ,90F5l(H\fBiM;5l1N]+Sl$;5l1N])!X?d+Su-=+S5U6pFu1=
-!(_\@fDbicr;Zhidf4g~>
-df0<^r;ZhiJcG3=!2')f!'ooN!5J@1!$LA&!8l9+!.WJt!-%c7!&0!(i;Wjd!2"iBi;Wdbq>^Ld
-h>d9N!2oYmq>^M'li6e]!'p5W!5J@1!2',f!%?S%r;QaNq>^NiiVrn-q>^NQcMmn%q#Kpaq>^M'
-mf*:Eq>^MFqYpO<qZ$U-li-rMqZ$U=q>UFCgApgE!S7VM!!*r"JcF@%!5JI4!2%^>J,~>
-df0<^r;ZhiJcG3=!2')f!'ooN!5J@1!$LA&!8l9+!.WJt!-%c7!&0!(i;Wjd!2"iBi;Wdbq>^Ld
-h>d9N!2oYmq>^M'li6e]!'p5W!5J@1!2',f!%?S%r;QaNq>^NiiVrn-q>^NQcMmn%q#Kpaq>^M'
-mf*:Eq>^MFqYpO<qZ$U-li-rMqZ$U=q>UFCgApgE!S7VM!!*r"JcF@%!5JI4!2%^>J,~>
-df0<^r;ZhiJcG3=!2')f!'ooN!5J@1!$LA&!8l9+!.WJt!-%c7!&0!(i;Wjd!2"iBi;Wdbq>^Ld
-h>d9N!2oYmq>^M'li6e]!'p5W!5J@1!2',f!%?S%r;QaNq>^NiiVrn-q>^NQcMmn%q#Kpaq>^M'
-mf*:Eq>^MFqYpO<qZ$U-li-rMqZ$U=q>UFCgApgE!S7VM!!*r"JcF@%!5JI4!2%^>J,~>
-df0<^r;ZhiJcG3=!2')f!'ooN!5J@1!&3L6!8l9+!.WMu!Tsab!!'3Rs5<nY?iZgMs5<nWJ,0-F
-5i2M@kP5)X^\Rp+!!$Ems7u]q+SGa7^\Rp1TDJQf+PQnorr=2=!!!Sgrr@QF!!(p%rrCsP!:^$b
-!!$EprrCsQ!!%NFrr=2=!!"/-rr>=]!!"/;rr=1r!:g'hL\1WIYCZ`)rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG3=!2')f!'ooN!5J@1!&3L6!8l9+!.WMu!Tsab!!'3Rs5<nY?iZgMs5<nWJ,0-F
-5i2M@kP5)X^\Rp+!!$Ems7u]q+SGa7^\Rp1TDJQf+PQnorr=2=!!!Sgrr@QF!!(p%rrCsP!:^$b
-!!$EprrCsQ!!%NFrr=2=!!"/-rr>=]!!"/;rr=1r!:g'hL\1WIYCZ`)rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG3=!2')f!'ooN!5J@1!&3L6!8l9+!.WMu!Tsab!!'3Rs5<nY?iZgMs5<nWJ,0-F
-5i2M@kP5)X^\Rp+!!$Ems7u]q+SGa7^\Rp1TDJQf+PQnorr=2=!!!Sgrr@QF!!(p%rrCsP!:^$b
-!!$EprrCsQ!!%NFrr=2=!!"/-rr>=]!!"/;rr=1r!:g'hL\1WIYCZ`)rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG3=!2')f!''?F!4Ve)!'oWF!8l9+!.WMu!)WLl!&0!(hu<ac!2"iBi;We,q>^LL
-hZ!T-q#CE8q>^9k!+>-m!#YS5!$Lt7!5J@1!2',fg&V'Nq>^L<i;We,q>^NQcMmn%q#Kpaq>^M'
-mf*:Eq>^MFqZ$Bl!$LV-!'pD]!$M+;g&UXB!'']Q!,-r`ec,War;Zhidf4g~>
-df0<^r;ZhiJcG3=!2')f!''?F!4Ve)!'oWF!8l9+!.WMu!)WLl!&0!(hu<ac!2"iBi;We,q>^LL
-hZ!T-q#CE8q>^9k!+>-m!#YS5!$Lt7!5J@1!2',fg&V'Nq>^L<i;We,q>^NQcMmn%q#Kpaq>^M'
-mf*:Eq>^MFqZ$Bl!$LV-!'pD]!$M+;g&UXB!'']Q!,-r`ec,War;Zhidf4g~>
-df0<^r;ZhiJcG3=!2')f!''?F!4Ve)!'oWF!8l9+!.WMu!)WLl!&0!(hu<ac!2"iBi;We,q>^LL
-hZ!T-q#CE8q>^9k!+>-m!#YS5!$Lt7!5J@1!2',fg&V'Nq>^L<i;We,q>^NQcMmn%q#Kpaq>^M'
-mf*:Eq>^MFqZ$Bl!$LV-!'pD]!$M+;g&UXB!'']Q!,-r`ec,War;Zhidf4g~>
-df0<^r;ZhiJcG3=!5J@1!$LY.!2')f!'oWF!9_is!2%gA!71H@!69Zjhu<ac!2"iBi;WeLq#CEh
-hu<\[q#CEPq>^9k!+>-m!$M.=!$Lt7!5J@1!2'/g!;G1IrVlllq>^LLi;We,q>^NQcMmn%q#Kpa
-q>^M'mf*:Eq>^MFqu6Zjq>^LTli-rMqZ$U=qYpQig&UXB!T+1Y!!+MBJcF:#!5JI4!2%^>J,~>
-df0<^r;ZhiJcG3=!5J@1!$LY.!2')f!'oWF!9_is!2%gA!71H@!69Zjhu<ac!2"iBi;WeLq#CEh
-hu<\[q#CEPq>^9k!+>-m!$M.=!$Lt7!5J@1!2'/g!;G1IrVlllq>^LLi;We,q>^NQcMmn%q#Kpa
-q>^M'mf*:Eq>^MFqu6Zjq>^LTli-rMqZ$U=qYpQig&UXB!T+1Y!!+MBJcF:#!5JI4!2%^>J,~>
-df0<^r;ZhiJcG3=!5J@1!$LY.!2')f!'oWF!9_is!2%gA!71H@!69Zjhu<ac!2"iBi;WeLq#CEh
-hu<\[q#CEPq>^9k!+>-m!$M.=!$Lt7!5J@1!2'/g!;G1IrVlllq>^LLi;We,q>^NQcMmn%q#Kpa
-q>^M'mf*:Eq>^MFqu6Zjq>^LTli-rMqZ$U=qYpQig&UXB!T+1Y!!+MBJcF:#!5JI4!2%^>J,~>
-df0<^r;ZhiJcG3=!6=p9!$LY.!/LCN!)SOP!)WLl!)S7HhZ!Xb!2"iBi;Welq#CE@hu<\$q>^O%
-p\Fjc!!$Emrr=2=!!"/7rrBh1!!&YgrrCs1!<)othtd<Q5iDYBJ,0-Fhp26%ht[9As7u]q@.+$p
-htd<QJ,B6Ghtd<Q5jSFM5l1N]+Su*<hqA)!rr@<>!!#!0s4%&K^\n-4T@3ai~>
-df0<^r;ZhiJcG3=!6=p9!$LY.!/LCN!)SOP!)WLl!)S7HhZ!Xb!2"iBi;Welq#CE@hu<\$q>^O%
-p\Fjc!!$Emrr=2=!!"/7rrBh1!!&YgrrCs1!<)othtd<Q5iDYBJ,0-Fhp26%ht[9As7u]q@.+$p
-htd<QJ,B6Ghtd<Q5jSFM5l1N]+Su*<hqA)!rr@<>!!#!0s4%&K^\n-4T@3ai~>
-df0<^r;ZhiJcG3=!6=p9!$LY.!/LCN!)SOP!)WLl!)S7HhZ!Xb!2"iBi;Welq#CE@hu<\$q>^O%
-p\Fjc!!$Emrr=2=!!"/7rrBh1!!&YgrrCs1!<)othtd<Q5iDYBJ,0-Fhp26%ht[9As7u]q@.+$p
-htd<QJ,B6Ghtd<Q5jSFM5l1N]+Su*<hqA)!rr@<>!!#!0s4%&K^\n-4T@3ai~>
-df0<^r;ZhiJcG3=!9a.Xm/I'8q>^M?MZ3\&q#CE@JcFU,!al##JcF[.!;H9h!12UC!)WLl!'p>Z
-q>^M'li-r%qZ$UEp&>$,q>^Mfqu6Zbq>^LdikPHl!:Taa!&3@2!.XhF!8l*%!8mSPnGi=b!+>6p
-!8mVQ!.XnG!9a1Y!'olM!'pD]!$M.<!:Taa!(c+anG`OP&GQ5*It@XMrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG3=!9a.Xm/I'8q>^M?MZ3\&q#CE@JcFU,!al##JcF[.!;H9h!12UC!)WLl!'p>Z
-q>^M'li-r%qZ$UEp&>$,q>^Mfqu6Zbq>^LdikPHl!:Taa!&3@2!.XhF!8l*%!8mSPnGi=b!+>6p
-!8mVQ!.XnG!9a1Y!'olM!'pD]!$M.<!:Taa!(c+anG`OP&GQ5*It@XMrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG3=!9a.Xm/I'8q>^M?MZ3\&q#CE@JcFU,!al##JcF[.!;H9h!12UC!)WLl!'p>Z
-q>^M'li-r%qZ$UEp&>$,q>^Mfqu6Zbq>^LdikPHl!:Taa!&3@2!.XhF!8l*%!8mSPnGi=b!+>6p
-!8mVQ!.XnG!9a1Y!'olM!'pD]!$M.<!:Taa!(c+anG`OP&GQ5*It@XMrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG0<!!rE$m/I&nq>^M^MZ3ZQq>^LlJcFR+!al##JcFX-!&46L!-$iq!#YP4!.XeD
-q>^M'li6e]!'p5W!5J@1!2',fq>^L\h>d<O!$L5"!.XhF!8l*%!8mSPnGi=b!+>6p!8mVQ!.XkF
-q>^LLli-rMqZ$U=q>^9k!'ns3!'p8Y!=7#&s472M^\n-4T@3ai~>
-df0<^r;ZhiJcG0<!!rE$m/I&nq>^M^MZ3ZQq>^LlJcFR+!al##JcFX-!&46L!-$iq!#YP4!.XeD
-q>^M'li6e]!'p5W!5J@1!2',fq>^L\h>d<O!$L5"!.XhF!8l*%!8mSPnGi=b!+>6p!8mVQ!.XkF
-q>^LLli-rMqZ$U=q>^9k!'ns3!'p8Y!=7#&s472M^\n-4T@3ai~>
-df0<^r;ZhiJcG0<!!rE$m/I&nq>^M^MZ3ZQq>^LlJcFR+!al##JcFX-!&46L!-$iq!#YP4!.XeD
-q>^M'li6e]!'p5W!5J@1!2',fq>^L\h>d<O!$L5"!.XhF!8l*%!8mSPnGi=b!+>6p!8mVQ!.XkF
-q>^LLli-rMqZ$U=q>^9k!'ns3!'p8Y!=7#&s472M^\n-4T@3ai~>
-df0<^r;ZhiJcG0<!&46L!:T=T!)WLl!4Rmd!71H@!7-5rh>[Oa!2"iBhu<[iq>^LLi;Wf7q#CDu
-q#C0j!+>-mq>^Ldp&>$,q>^MfqYpO4qZ$U]h>[HlqZ$U%i;We,q>^NQcMmn%q#Kpaq>^M'mf*:E
-q>^MFqZ$Bl!$LV-!'pD]!$M+;!#YS5!'o!4!0?dQ!AO8!s4@8N^\n-4T@3ai~>
-df0<^r;ZhiJcG0<!&46L!:T=T!)WLl!4Rmd!71H@!7-5rh>[Oa!2"iBhu<[iq>^LLi;Wf7q#CDu
-q#C0j!+>-mq>^Ldp&>$,q>^MfqYpO4qZ$U]h>[HlqZ$U%i;We,q>^NQcMmn%q#Kpaq>^M'mf*:E
-q>^MFqZ$Bl!$LV-!'pD]!$M+;!#YS5!'o!4!0?dQ!AO8!s4@8N^\n-4T@3ai~>
-df0<^r;ZhiJcG0<!&46L!:T=T!)WLl!4Rmd!71H@!7-5rh>[Oa!2"iBhu<[iq>^LLi;Wf7q#CDu
-q#C0j!+>-mq>^Ldp&>$,q>^MfqYpO4qZ$U]h>[HlqZ$U%i;We,q>^NQcMmn%q#Kpaq>^M'mf*:E
-q>^MFqZ$Bl!$LV-!'pD]!$M+;!#YS5!'o!4!0?dQ!AO8!s4@8N^\n-4T@3ai~>
-df0<^r;ZhiJcG0<!)WLl!6=L,!&46L!8!//!''fT!)S7Hh#@F`!2"iBhu<\Kq#CEHiVrn5q#CE`
-q#C0j!+>0n!:Taa!+>L"!5J@1!2',f!$M.=!$L+t!$M+<!:SnH!.XhF!8l*%!8mSPnGi=b!+>6p
-!8mVQ!.XkF!$M.=!#Y&%!'pD]!$M+;!$M.=!$Kbj!S7VL!!%7ps4@8N^\n-4T@3ai~>
-df0<^r;ZhiJcG0<!)WLl!6=L,!&46L!8!//!''fT!)S7Hh#@F`!2"iBhu<\Kq#CEHiVrn5q#CE`
-q#C0j!+>0n!:Taa!+>L"!5J@1!2',f!$M.=!$L+t!$M+<!:SnH!.XhF!8l*%!8mSPnGi=b!+>6p
-!8mVQ!.XkF!$M.=!#Y&%!'pD]!$M+;!$M.=!$Kbj!S7VL!!%7ps4@8N^\n-4T@3ai~>
-df0<^r;ZhiJcG0<!)WLl!6=L,!&46L!8!//!''fT!)S7Hh#@F`!2"iBhu<\Kq#CEHiVrn5q#CE`
-q#C0j!+>0n!:Taa!+>L"!5J@1!2',f!$M.=!$L+t!$M+<!:SnH!.XhF!8l*%!8mSPnGi=b!+>6p
-!8mVQ!.XkF!$M.=!#Y&%!'pD]!$M+;!$M.=!$Kbj!S7VL!!%7ps4@8N^\n-4T@3ai~>
-df0<^r;ZhiJcG0<!-%c7!2&ZY!!rE$MuNd\q#CE@JcFO*!al##JcFX-!8%#H!-mK&!%@[D!&40I
-q>^M'm/I(#q>^MFp&>$,q>^MfqYpO\qZ$X&pYPoM3;NUTa5R$uJ,0-Fhp26%ht[9As7u]q@.+$p
-htd<QJ,90F+Sl'<n*L&S5l1N]+Sl$;5l1N^#kumL!V\;=!!(&js4I>O^\n-4T@3ai~>
-df0<^r;ZhiJcG0<!-%c7!2&ZY!!rE$MuNd\q#CE@JcFO*!al##JcFX-!8%#H!-mK&!%@[D!&40I
-q>^M'm/I(#q>^MFp&>$,q>^MfqYpO\qZ$X&pYPoM3;NUTa5R$uJ,0-Fhp26%ht[9As7u]q@.+$p
-htd<QJ,90F+Sl'<n*L&S5l1N]+Sl$;5l1N^#kumL!V\;=!!(&js4I>O^\n-4T@3ai~>
-df0<^r;ZhiJcG0<!-%c7!2&ZY!!rE$MuNd\q#CE@JcFO*!al##JcFX-!8%#H!-mK&!%@[D!&40I
-q>^M'm/I(#q>^MFp&>$,q>^MfqYpO\qZ$X&pYPoM3;NUTa5R$uJ,0-Fhp26%ht[9As7u]q@.+$p
-htd<QJ,90F+Sl'<n*L&S5l1N]+Sl$;5l1N^#kumL!V\;=!!(&js4I>O^\n-4T@3ai~>
-df0<^r;ZhiJcG0<!13N^!-mr3!9a1Y!$I4"!&46L!)S7Hg]%=_!2"iBhZ!R(q>^L4ir9#!q#CD>
-p]('i!+>0n!0?sV!3c(q!5J@1!2',f!+>X'!5ICj!+>X'!0?+=!.XhF!8l*%!8mSPnGi=b!+>6p
-!8mVQ!.XkF!'pA\!71$3!'pD]!$M+;!+>X'!5I(a!-n>?!Ilg"!!+5:JcFF'!5JI4!2%^>J,~>
-df0<^r;ZhiJcG0<!13N^!-mr3!9a1Y!$I4"!&46L!)S7Hg]%=_!2"iBhZ!R(q>^L4ir9#!q#CD>
-p]('i!+>0n!0?sV!3c(q!5J@1!2',f!+>X'!5ICj!+>X'!0?+=!.XhF!8l*%!8mSPnGi=b!+>6p
-!8mVQ!.XkF!'pA\!71$3!'pD]!$M+;!+>X'!5I(a!-n>?!Ilg"!!+5:JcFF'!5JI4!2%^>J,~>
-df0<^r;ZhiJcG0<!13N^!-mr3!9a1Y!$I4"!&46L!)S7Hg]%=_!2"iBhZ!R(q>^L4ir9#!q#CD>
-p]('i!+>0n!0?sV!3c(q!5J@1!2',f!+>X'!5ICj!+>X'!0?+=!.XhF!8l*%!8mSPnGi=b!+>6p
-!8mVQ!.XkF!'pA\!71$3!'pD]!$M+;!+>X'!5I(a!-n>?!Ilg"!!+5:JcFF'!5JI4!2%^>J,~>
-df0<^r;ZhiJcG0<!71KA!)W+`!4Ve)!)SXS!3c1u!7-5rg]%=_!2"iBhZ!S:q#CDuj8T*eq#CEX
-p]('i!+>0n!,23/!:TU\!5J@1!2',f!2')f!/KG2!2')f!+=dc!.XhF!8l*%!8mSPnGi=b!+>6p
-!8mVQ!.XkF!-%c7!2&WX!'pD]!$M+;!2')f!/K/*!5J@1!]^5+q#CD.JcFF'!5JI4!2%^>J,~>
-df0<^r;ZhiJcG0<!71KA!)W+`!4Ve)!)SXS!3c1u!7-5rg]%=_!2"iBhZ!S:q#CDuj8T*eq#CEX
-p]('i!+>0n!,23/!:TU\!5J@1!2',f!2')f!/KG2!2')f!+=dc!.XhF!8l*%!8mSPnGi=b!+>6p
-!8mVQ!.XkF!-%c7!2&WX!'pD]!$M+;!2')f!/K/*!5J@1!]^5+q#CD.JcFF'!5JI4!2%^>J,~>
-df0<^r;ZhiJcG0<!71KA!)W+`!4Ve)!)SXS!3c1u!7-5rg]%=_!2"iBhZ!S:q#CDuj8T*eq#CEX
-p]('i!+>0n!,23/!:TU\!5J@1!2',f!2')f!/KG2!2')f!+=dc!.XhF!8l*%!8mSPnGi=b!+>6p
-!8mVQ!.XkF!-%c7!2&WX!'pD]!$M+;!2')f!/K/*!5J@1!]^5+q#CD.JcFF'!5JI4!2%^>J,~>
-df0<^r;ZhiJcG-;!"f#-!=8Ggrr@<?!!&XMrr=bL!!#iHs4[JS?iZgMs5*bVpB^Tq!?h-urrC+8
-!!#jhs7u]q@-mmn+Su-=+S>[6^\Rp1TDJQfhtd<Q38XZ8htd<R&GP2a!.XhF!8l*%!8mSPnGi=b
-!+>6p!8mVQ!.XkF!2')f!+>0n!'pD]!$M+;!8mVQ!'&U1!Uh0.!!ESZs8R?>!!'cbs4[JQ^\n-4
-T@3ai~>
-df0<^r;ZhiJcG-;!"f#-!=8Ggrr@<?!!&XMrr=bL!!#iHs4[JS?iZgMs5*bVpB^Tq!?h-urrC+8
-!!#jhs7u]q@-mmn+Su-=+S>[6^\Rp1TDJQfhtd<Q38XZ8htd<R&GP2a!.XhF!8l*%!8mSPnGi=b
-!+>6p!8mVQ!.XkF!2')f!+>0n!'pD]!$M+;!8mVQ!'&U1!Uh0.!!ESZs8R?>!!'cbs4[JQ^\n-4
-T@3ai~>
-df0<^r;ZhiJcG-;!"f#-!=8Ggrr@<?!!&XMrr=bL!!#iHs4[JS?iZgMs5*bVpB^Tq!?h-urrC+8
-!!#jhs7u]q@-mmn+Su-=+S>[6^\Rp1TDJQfhtd<Q38XZ8htd<R&GP2a!.XhF!8l*%!8mSPnGi=b
-!+>6p!8mVQ!.XkF!2')f!+>0n!'pD]!$M+;!8mVQ!'&U1!Uh0.!!ESZs8R?>!!'cbs4[JQ^\n-4
-T@3ai~>
-df0<^r;ZhiJcG-;!+>X'!5J"&!%@[D!8ie9!3c1u!7-5rgA_4^!2"iBh>[Ioq#CD>k5PJV0_k\K
-^\7^(!!$EorrC+9!!$-nrrBh1!!&Yerr=2<!!(@%rr=2<!!&YNrr@QF!!(WrrrCsP!:^$b!!$Ep
-rrCsQ!!%NFrrCCA!!!l&rr>=]!!"/:rr=2<!!(?trr?I'!!%fRrrMjBq>^O5mt(MnrrBh4!!&Y>
-s*t~>
-df0<^r;ZhiJcG-;!+>X'!5J"&!%@[D!8ie9!3c1u!7-5rgA_4^!2"iBh>[Ioq#CD>k5PJV0_k\K
-^\7^(!!$EorrC+9!!$-nrrBh1!!&Yerr=2<!!(@%rr=2<!!&YNrr@QF!!(WrrrCsP!:^$b!!$Ep
-rrCsQ!!%NFrrCCA!!!l&rr>=]!!"/:rr=2<!!(?trr?I'!!%fRrrMjBq>^O5mt(MnrrBh4!!&Y>
-s*t~>
-df0<^r;ZhiJcG-;!+>X'!5J"&!%@[D!8ie9!3c1u!7-5rgA_4^!2"iBh>[Ioq#CD>k5PJV0_k\K
-^\7^(!!$EorrC+9!!$-nrrBh1!!&Yerr=2<!!(@%rr=2<!!&YNrr@QF!!(WrrrCsP!:^$b!!$Ep
-rrCsQ!!%NFrrCCA!!!l&rr>=]!!"/:rr=2<!!(?trr?I'!!%fRrrMjBq>^O5mt(MnrrBh4!!&Y>
-s*t~>
-df0<^r;ZhiJcG-;!2')f!-%H-!8mVQ!$I:$!V\#=!!#iHs4RDR?iZgMs5!\TfD,CI#g_]6!/L@M
-!&4*Gq>^M'mJd0"q>^N!o`"p+q>^Mfq>UG&q>^M'hZ!RXq>^LLir9">q>^N1cMmn%q#Kpaq>^M'
-mf*:Eq>^MFqYpTj#l4N$a6im,5l1N]+Sbs:@/9j'@+kP[TDANf3;idV^\Ij0@"J@4rrBh4!!&Y>
-s*t~>
-df0<^r;ZhiJcG-;!2')f!-%H-!8mVQ!$I:$!V\#=!!#iHs4RDR?iZgMs5!\TfD,CI#g_]6!/L@M
-!&4*Gq>^M'mJd0"q>^N!o`"p+q>^Mfq>UG&q>^M'hZ!RXq>^LLir9">q>^N1cMmn%q#Kpaq>^M'
-mf*:Eq>^MFqYpTj#l4N$a6im,5l1N]+Sbs:@/9j'@+kP[TDANf3;idV^\Ij0@"J@4rrBh4!!&Y>
-s*t~>
-df0<^r;ZhiJcG-;!2')f!-%H-!8mVQ!$I:$!V\#=!!#iHs4RDR?iZgMs5!\TfD,CI#g_]6!/L@M
-!&4*Gq>^M'mJd0"q>^N!o`"p+q>^Mfq>UG&q>^M'hZ!RXq>^LLir9">q>^N1cMmn%q#Kpaq>^M'
-mf*:Eq>^MFqYpTj#l4N$a6im,5l1N]+Sbs:@/9j'@+kP[TDANf3;idV^\Ij0@"J@4rrBh4!!&Y>
-s*t~>
-df0<^r;ZhiJcG-;!8mVQ!>tS$rr@$7!!$DdrrA,U!!(>rs4RDR?iZgMs4mVS;#((l0^n9+!Oi@1
-!!&Yas7u]q@.+$qh[')Z!#Y>-!5J@1!2')e!71H@!5IFk!3c1u!2&<O!2')f!2%R:!8mSPnGi=b
-!+>6p!8mVQ!.XhE!)WLl!)W(_!'pD]!$M(:!71H@!5I:g!T+Ic!!*AWqu6Y0q#CDmJcFO*!5JI4
-!2%^>J,~>
-df0<^r;ZhiJcG-;!8mVQ!>tS$rr@$7!!$DdrrA,U!!(>rs4RDR?iZgMs4mVS;#((l0^n9+!Oi@1
-!!&Yas7u]q@.+$qh[')Z!#Y>-!5J@1!2')e!71H@!5IFk!3c1u!2&<O!2')f!2%R:!8mSPnGi=b
-!+>6p!8mVQ!.XhE!)WLl!)W(_!'pD]!$M(:!71H@!5I:g!T+Ic!!*AWqu6Y0q#CDmJcFO*!5JI4
-!2%^>J,~>
-df0<^r;ZhiJcG-;!8mVQ!>tS$rr@$7!!$DdrrA,U!!(>rs4RDR?iZgMs4mVS;#((l0^n9+!Oi@1
-!!&Yas7u]q@.+$qh[')Z!#Y>-!5J@1!2')e!71H@!5IFk!3c1u!2&<O!2')f!2%R:!8mSPnGi=b
-!+>6p!8mVQ!.XhE!)WLl!)W(_!'pD]!$M(:!71H@!5I:g!T+Ic!!*AWqu6Y0q#CDmJcFO*!5JI4
-!2%^>J,~>
-df0<^r;ZhiJcG*:!&46L!0?^N!Tsab!!'3_rrMj2q>^LlJcFC&!al##JcFO*!Tt$i!!+eBli.!p
-#l+H#8G)rY!!$Eprr>ml!!%N?rrBh1!!&Ydrr>=\!!*r"l2Lh*+Q*%q!&46L!>t:mrrVX[TDSWg
-VtpAn@*\cPht[9As7u]q@.+$phtd<QJ,0*EYPA.ucgUl7NsPU_!$M%9!'pA\!>t"arrU4`htR-N
-5l(H\L\h#Omhkm$!>t!Ns5!\T^\n-4T@3ai~>
-df0<^r;ZhiJcG*:!&46L!0?^N!Tsab!!'3_rrMj2q>^LlJcFC&!al##JcFO*!Tt$i!!+eBli.!p
-#l+H#8G)rY!!$Eprr>ml!!%N?rrBh1!!&Ydrr>=\!!*r"l2Lh*+Q*%q!&46L!>t:mrrVX[TDSWg
-VtpAn@*\cPht[9As7u]q@.+$phtd<QJ,0*EYPA.ucgUl7NsPU_!$M%9!'pA\!>t"arrU4`htR-N
-5l(H\L\h#Omhkm$!>t!Ns5!\T^\n-4T@3ai~>
-df0<^r;ZhiJcG*:!&46L!0?^N!Tsab!!'3_rrMj2q>^LlJcFC&!al##JcFO*!Tt$i!!+eBli.!p
-#l+H#8G)rY!!$Eprr>ml!!%N?rrBh1!!&Ydrr>=\!!*r"l2Lh*+Q*%q!&46L!>t:mrrVX[TDSWg
-VtpAn@*\cPht[9As7u]q@.+$phtd<QJ,0*EYPA.ucgUl7NsPU_!$M%9!'pA\!>t"arrU4`htR-N
-5l(H\L\h#Omhkm$!>t!Ns5!\T^\n-4T@3ai~>
-df0<^r;ZhiJcG*:!3c5!!>tS&rr@$7!!"^4rrA,U!!(>rs4I>Q?iZgMs4dPRTD/Be0^nE/!Oi@1
-!!*Yoo`+af!+>9q!13N^!=7l[rrBh1!!&YdrrB7u!!+e:m/I4_GQ7a$qYpP^q#CFdp[A+acQE4[
-qu6ZRq>^L<cMmn%q#Kpaq>^M'mf*:Eq>^MFq>UKi)#=450_b/<!Uik\!!"/9rrB7u!!+e:m/I4_
-GQ7a$q#:>Lq>^LTq#:>tq#CCkJcFR+!5JI4!2%^>J,~>
-df0<^r;ZhiJcG*:!3c5!!>tS&rr@$7!!"^4rrA,U!!(>rs4I>Q?iZgMs4dPRTD/Be0^nE/!Oi@1
-!!*Yoo`+af!+>9q!13N^!=7l[rrBh1!!&YdrrB7u!!+e:m/I4_GQ7a$qYpP^q#CFdp[A+acQE4[
-qu6ZRq>^L<cMmn%q#Kpaq>^M'mf*:Eq>^MFq>UKi)#=450_b/<!Uik\!!"/9rrB7u!!+e:m/I4_
-GQ7a$q#:>Lq>^LTq#:>tq#CCkJcFR+!5JI4!2%^>J,~>
-df0<^r;ZhiJcG*:!3c5!!>tS&rr@$7!!"^4rrA,U!!(>rs4I>Q?iZgMs4dPRTD/Be0^nE/!Oi@1
-!!*Yoo`+af!+>9q!13N^!=7l[rrBh1!!&YdrrB7u!!+e:m/I4_GQ7a$qYpP^q#CFdp[A+acQE4[
-qu6ZRq>^L<cMmn%q#Kpaq>^M'mf*:Eq>^MFq>UKi)#=450_b/<!Uik\!!"/9rrB7u!!+e:m/I4_
-GQ7a$q#:>Lq>^LTq#:>tq#CCkJcFR+!5JI4!2%^>J,~>
-df0<^r;ZhiJcG'9!&46L!D)tXrrKS7q>^N!NrK.S)#=44:kAYurrQR.T7R$rrr>mj!!*q/nG`O`
-GkV1<Vt9rb!!$-jrrA\e!!%97rrBh1!!&Ycrr>%S!!+4gn,EI`Nu7ir!8mYQ!V[H,!!,Xbo)Am^
-GR+9LTDJQf&GcA,a3Xbcht[9As7u]q@.+$phtd<QJ,'$DB__W/=SMIf!LFYu!!"/8rr>%S!!+4g
-n,EI`Nu7ir!8mVP!RD&K!!*AWp\t4qq#CDeJcFU,!5JI4!2%^>J,~>
-df0<^r;ZhiJcG'9!&46L!D)tXrrKS7q>^N!NrK.S)#=44:kAYurrQR.T7R$rrr>mj!!*q/nG`O`
-GkV1<Vt9rb!!$-jrrA\e!!%97rrBh1!!&Ycrr>%S!!+4gn,EI`Nu7ir!8mYQ!V[H,!!,Xbo)Am^
-GR+9LTDJQf&GcA,a3Xbcht[9As7u]q@.+$phtd<QJ,'$DB__W/=SMIf!LFYu!!"/8rr>%S!!+4g
-n,EI`Nu7ir!8mVP!RD&K!!*AWp\t4qq#CDeJcFU,!5JI4!2%^>J,~>
-df0<^r;ZhiJcG'9!&46L!D)tXrrKS7q>^N!NrK.S)#=44:kAYurrQR.T7R$rrr>mj!!*q/nG`O`
-GkV1<Vt9rb!!$-jrrA\e!!%97rrBh1!!&Ycrr>%S!!+4gn,EI`Nu7ir!8mYQ!V[H,!!,Xbo)Am^
-GR+9LTDJQf&GcA,a3Xbcht[9As7u]q@.+$phtd<QJ,'$DB__W/=SMIf!LFYu!!"/8rr>%S!!+4g
-n,EI`Nu7ir!8mVP!RD&K!!*AWp\t4qq#CDeJcFU,!5JI4!2%^>J,~>
-df0<^r;ZhiJcG'9!2'&e!+>O#!Oi@2!!!jqrrA,V!!*AgJcF@%!al##JcFI(!Tt<o!!,XJoD\j#
-+SPj9@.O?n!!4jHp\"Oemr8(&!@[^5rrBh1!!&YcrrM!gq#CI%E9Him!nVo=qu?`Sq>UGup](=K
-a7]H6pQ#ma!!&Yfrr>ml!!+5*p\t9GpY>cKht[9As7u]q@.+$phtd<QJ,'$Ek6Uk`!@ZRprrVqm
-./!W@+SPg9h[oS`!XNc.oD\mDIi/(`!8mYQ!V\#=!!%fJrrM9oq>^O-hgtgbrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG'9!2'&e!+>O#!Oi@2!!!jqrrA,V!!*AgJcF@%!al##JcFI(!Tt<o!!,XJoD\j#
-+SPj9@.O?n!!4jHp\"Oemr8(&!@[^5rrBh1!!&YcrrM!gq#CI%E9Him!nVo=qu?`Sq>UGup](=K
-a7]H6pQ#ma!!&Yfrr>ml!!+5*p\t9GpY>cKht[9As7u]q@.+$phtd<QJ,'$Ek6Uk`!@ZRprrVqm
-./!W@+SPg9h[oS`!XNc.oD\mDIi/(`!8mYQ!V\#=!!%fJrrM9oq>^O-hgtgbrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG'9!2'&e!+>O#!Oi@2!!!jqrrA,V!!*AgJcF@%!al##JcFI(!Tt<o!!,XJoD\j#
-+SPj9@.O?n!!4jHp\"Oemr8(&!@[^5rrBh1!!&YcrrM!gq#CI%E9Him!nVo=qu?`Sq>UGup](=K
-a7]H6pQ#ma!!&Yfrr>ml!!+5*p\t9GpY>cKht[9As7u]q@.+$phtd<QJ,'$Ek6Uk`!@ZRprrVqm
-./!W@+SPg9h[oS`!XNc.oD\mDIi/(`!8mYQ!V\#=!!%fJrrM9oq>^O-hgtgbrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG'9!V[`4!!+47qYpTR@/'^%Q]D(Hmhkm$!-!Mhf)GeZ!2"iBg&D*!&G?)*0TY,e
-rrUMc+SGd98GD]TpAb:,@'B%qrrUf-)#+(2a7900^\Rp1TD&9bYP/#!#]R!Aq>UNRO!sf(!8mSO
-!-%Z4!EcQ$rrTB3&GlG-TDJQfYPA/"&;Sm8rrg*'5QK^%rrCCB^At2-!;aG1fD,CB!!$EprrCsQ
-!!%NCrr@iK!!to_^\@cs^Sb0>oDek6p&>#qpAb:$E3K$3rrV)=./<iChtm?QE;BP73;!4NTD8He
-5_8smrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG'9!V[`4!!+47qYpTR@/'^%Q]D(Hmhkm$!-!Mhf)GeZ!2"iBg&D*!&G?)*0TY,e
-rrUMc+SGd98GD]TpAb:,@'B%qrrUf-)#+(2a7900^\Rp1TD&9bYP/#!#]R!Aq>UNRO!sf(!8mSO
-!-%Z4!EcQ$rrTB3&GlG-TDJQfYPA/"&;Sm8rrg*'5QK^%rrCCB^At2-!;aG1fD,CB!!$EprrCsQ
-!!%NCrr@iK!!to_^\@cs^Sb0>oDek6p&>#qpAb:$E3K$3rrV)=./<iChtm?QE;BP73;!4NTD8He
-5_8smrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG'9!V[`4!!+47qYpTR@/'^%Q]D(Hmhkm$!-!Mhf)GeZ!2"iBg&D*!&G?)*0TY,e
-rrUMc+SGd98GD]TpAb:,@'B%qrrUf-)#+(2a7900^\Rp1TD&9bYP/#!#]R!Aq>UNRO!sf(!8mSO
-!-%Z4!EcQ$rrTB3&GlG-TDJQfYPA/"&;Sm8rrg*'5QK^%rrCCB^At2-!;aG1fD,CB!!$EprrCsQ
-!!%NCrr@iK!!to_^\@cs^Sb0>oDek6p&>#qpAb:$E3K$3rrV)=./<iChtm?QE;BP73;!4NTD8He
-5_8smrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG$8!RD&H!!XQ2BRbM.5kb6Y=H3=\E;BP8#j6d=f)GeZ!2"iBf`(uu+S,R50`=6:
-+S,R6=SM@cnc/hQ5^6*j./!W@Gjt_5^\Rp1TCr3aJ+Na@5Qjo583daZ!!(pOrrMjRp&G:.5X9R%
-5WJK<!2',f!V[H)!<5:a)#O@6hrF_:5jJCM@/0cu!!$EprrCsQ!!%NCrrMjBi;`j#o`"o@oDnnV
-"AjS=5S3Sg!8m\R!5J@1!=7$Crr>=[!!&@:s5<nW^\n-4T@3ai~>
-df0<^r;ZhiJcG$8!RD&H!!XQ2BRbM.5kb6Y=H3=\E;BP8#j6d=f)GeZ!2"iBf`(uu+S,R50`=6:
-+S,R6=SM@cnc/hQ5^6*j./!W@Gjt_5^\Rp1TCr3aJ+Na@5Qjo583daZ!!(pOrrMjRp&G:.5X9R%
-5WJK<!2',f!V[H)!<5:a)#O@6hrF_:5jJCM@/0cu!!$EprrCsQ!!%NCrrMjBi;`j#o`"o@oDnnV
-"AjS=5S3Sg!8m\R!5J@1!=7$Crr>=[!!&@:s5<nW^\n-4T@3ai~>
-df0<^r;ZhiJcG$8!RD&H!!XQ2BRbM.5kb6Y=H3=\E;BP8#j6d=f)GeZ!2"iBf`(uu+S,R50`=6:
-+S,R6=SM@cnc/hQ5^6*j./!W@Gjt_5^\Rp1TCr3aJ+Na@5Qjo583daZ!!(pOrrMjRp&G:.5X9R%
-5WJK<!2',f!V[H)!<5:a)#O@6hrF_:5jJCM@/0cu!!$EprrCsQ!!%NCrrMjBi;`j#o`"o@oDnnV
-"AjS=5S3Sg!8m\R!5J@1!=7$Crr>=[!!&@:s5<nW^\n-4T@3ai~>
-df0<^r;ZhiJcG!7!2&HT!AO8.rrM9gq>^M7JcF:#!al##JcF@%!T,$Y!!$Eqs5F"Y@.4*q^\Rp1
-TCi-`GiA]'htR-Oh_=0m!2')e!13*R!8li:!'oiM!+>U%q>^M'mf*:Eq>^MFpAY0.#jMEi+Su-=
-+S5U5GiA]'hu*KTmhkm$!.XS>!T+1Z!!*AWJcF^/!5JI4!2%^>J,~>
-df0<^r;ZhiJcG!7!2&HT!AO8.rrM9gq>^M7JcF:#!al##JcF@%!T,$Y!!$Eqs5F"Y@.4*q^\Rp1
-TCi-`GiA]'htR-Oh_=0m!2')e!13*R!8li:!'oiM!+>U%q>^M'mf*:Eq>^MFpAY0.#jMEi+Su-=
-+S5U5GiA]'hu*KTmhkm$!.XS>!T+1Z!!*AWJcF^/!5JI4!2%^>J,~>
-df0<^r;ZhiJcG!7!2&HT!AO8.rrM9gq>^M7JcF:#!al##JcF@%!T,$Y!!$Eqs5F"Y@.4*q^\Rp1
-TCi-`GiA]'htR-Oh_=0m!2')e!13*R!8li:!'oiM!+>U%q>^M'mf*:Eq>^MFpAY0.#jMEi+Su-=
-+S5U5GiA]'hu*KTmhkm$!.XS>!T+1Z!!*AWJcF^/!5JI4!2%^>J,~>
-df0<^r;ZhiJcFs6!,1Wt!>s^Rrr@$7!!*AgJcF:#!al##JcF=$!Ui;6!!%fBs5O(Z@.+$p^\Rp1
-TC`'`V[2>`!8mMM!UikJ!!&Ydrr>ma!!(p:rr>=M!!$F%s7u]q@.+$phtd<QJ+`gB[g;=#!^Q3>
-qZ$U=o)A`g#ikschu*KS=S`!u0_b,;!0?pU!'#Q0iVrnmr;Zhidf4g~>
-df0<^r;ZhiJcFs6!,1Wt!>s^Rrr@$7!!*AgJcF:#!al##JcF=$!Ui;6!!%fBs5O(Z@.+$p^\Rp1
-TC`'`V[2>`!8mMM!UikJ!!&Ydrr>ma!!(p:rr>=M!!$F%s7u]q@.+$phtd<QJ+`gB[g;=#!^Q3>
-qZ$U=o)A`g#ikschu*KS=S`!u0_b,;!0?pU!'#Q0iVrnmr;Zhidf4g~>
-df0<^r;ZhiJcFs6!,1Wt!>s^Rrr@$7!!*AgJcF:#!al##JcF=$!Ui;6!!%fBs5O(Z@.+$p^\Rp1
-TC`'`V[2>`!8mMM!UikJ!!&Ydrr>ma!!(p:rr>=M!!$F%s7u]q@.+$phtd<QJ+`gB[g;=#!^Q3>
-qZ$U=o)A`g#ikschu*KS=S`!u0_b,;!0?pU!'#Q0iVrnmr;Zhidf4g~>
-df0<^r;ZhiJcFp5!/Kn@!BA\jrrM9gq>^M7JcF7"!al##JcF7"!O!X/!!,X:mJl5I!-mo2!5J@1
-!2&i^!RDnO!!49up[nIcE9R?'.*q\g!Tu0+!!(p:rr>=M!!$F%s7u]q@.+$phtd<QJ+Wa@TBuU\
-E<#r'qZ$U=nc&X9+Qi_++G]^irrA\f!!*AOn,EAIq#CDEJcFa0!5JI4!2%^>J,~>
-df0<^r;ZhiJcFp5!/Kn@!BA\jrrM9gq>^M7JcF7"!al##JcF7"!O!X/!!,X:mJl5I!-mo2!5J@1
-!2&i^!RDnO!!49up[nIcE9R?'.*q\g!Tu0+!!(p:rr>=M!!$F%s7u]q@.+$phtd<QJ+Wa@TBuU\
-E<#r'qZ$U=nc&X9+Qi_++G]^irrA\f!!*AOn,EAIq#CDEJcFa0!5JI4!2%^>J,~>
-df0<^r;ZhiJcFp5!/Kn@!BA\jrrM9gq>^M7JcF7"!al##JcF7"!O!X/!!,X:mJl5I!-mo2!5J@1
-!2&i^!RDnO!!49up[nIcE9R?'.*q\g!Tu0+!!(p:rr>=M!!$F%s7u]q@.+$phtd<QJ+Wa@TBuU\
-E<#r'qZ$U=nc&X9+Qi_++G]^irrA\f!!*AOn,EAIq#CDEJcFa0!5JI4!2%^>J,~>
-df0<^r;ZhiJcFm4!QQVW!!%8%rr@$7!!*AgJcF7"!al##JcF4!!r%H]lMpr>^[(pr!!7YB0^o&C
-.*(]S!5J@1!2&c\!N.X<!!3F.\+'CucVX!/!D'EerrMjrnGiRHj8T*ElMpomq#C0j!+>6p!8mVQ
-!.XV?!QQVY!!+dgrr2s`qZ$U=n,EEd0^Jc@#["S5rrM!gq>^MFmf*=6#l4N%#g\)%j8T+or;Zhi
-df4g~>
-df0<^r;ZhiJcFm4!QQVW!!%8%rr@$7!!*AgJcF7"!al##JcF4!!r%H]lMpr>^[(pr!!7YB0^o&C
-.*(]S!5J@1!2&c\!N.X<!!3F.\+'CucVX!/!D'EerrMjrnGiRHj8T*ElMpomq#C0j!+>6p!8mVQ
-!.XV?!QQVY!!+dgrr2s`qZ$U=n,EEd0^Jc@#["S5rrM!gq>^MFmf*=6#l4N%#g\)%j8T+or;Zhi
-df4g~>
-df0<^r;ZhiJcFm4!QQVW!!%8%rr@$7!!*AgJcF7"!al##JcF4!!r%H]lMpr>^[(pr!!7YB0^o&C
-.*(]S!5J@1!2&c\!N.X<!!3F.\+'CucVX!/!D'EerrMjrnGiRHj8T*ElMpomq#C0j!+>6p!8mVQ
-!.XV?!QQVY!!+dgrr2s`qZ$U=n,EEd0^Jc@#["S5rrM!gq>^MFmf*=6#l4N%#g\)%j8T+or;Zhi
-df4g~>
-df0<^r;ZhiJcFj3!q1mmoDepu=N?@"!Tsab!!$ths3puL?iZgMs3^iKn!?iVnGiV5BXd7+q>^Z5
-s8T8^oDeq0Gk^P(!5J@1!2&]Z!j>E3nGiVeTC;.H!masco)Jh?LYqY%!P^nl!!,@Jj8T*ElMpom
-q#C0j!+>6p!8mVQ!.XS>!r$pNo`,"8Qi-j`5l1N]+RT11Y>>f#!!5uhn+lt`5l(H]0_au7!.XeE
-!AO8!s5a1[^\n-4T@3ai~>
-df0<^r;ZhiJcFj3!q1mmoDepu=N?@"!Tsab!!$ths3puL?iZgMs3^iKn!?iVnGiV5BXd7+q>^Z5
-s8T8^oDeq0Gk^P(!5J@1!2&]Z!j>E3nGiVeTC;.H!masco)Jh?LYqY%!P^nl!!,@Jj8T*ElMpom
-q#C0j!+>6p!8mVQ!.XS>!r$pNo`,"8Qi-j`5l1N]+RT11Y>>f#!!5uhn+lt`5l(H]0_au7!.XeE
-!AO8!s5a1[^\n-4T@3ai~>
-df0<^r;ZhiJcFj3!q1mmoDepu=N?@"!Tsab!!$ths3puL?iZgMs3^iKn!?iVnGiV5BXd7+q>^Z5
-s8T8^oDeq0Gk^P(!5J@1!2&]Z!j>E3nGiVeTC;.H!masco)Jh?LYqY%!P^nl!!,@Jj8T*ElMpom
-q#C0j!+>6p!8mVQ!.XS>!r$pNo`,"8Qi-j`5l1N]+RT11Y>>f#!!5uhn+lt`5l(H]0_au7!.XeE
-!AO8!s5a1[^\n-4T@3ai~>
-df0<^r;ZhiJcFa0"4qKW&GlG00MnD9JcC<$dJj8U!2"iBcMn%AY@p0Dq#CLV8<;BVrrTrS3;NUV
--t'gRrrBh1!!&YWrrgZ/:d@;C!!>2WO2pA^"P8]25VW*9"$gOtkNr3Vhk+:A5QE2t5^8XAM>mXT
-=:"d(!YB%cg]%E&O&/),qZ$^X:liYJs0)G&^\n-4T@3ai~>
-df0<^r;ZhiJcFa0"4qKW&GlG00MnD9JcC<$dJj8U!2"iBcMn%AY@p0Dq#CLV8<;BVrrTrS3;NUV
--t'gRrrBh1!!&YWrrgZ/:d@;C!!>2WO2pA^"P8]25VW*9"$gOtkNr3Vhk+:A5QE2t5^8XAM>mXT
-=:"d(!YB%cg]%E&O&/),qZ$^X:liYJs0)G&^\n-4T@3ai~>
-df0<^r;ZhiJcFa0"4qKW&GlG00MnD9JcC<$dJj8U!2"iBcMn%AY@p0Dq#CLV8<;BVrrTrS3;NUV
--t'gRrrBh1!!&YWrrgZ/:d@;C!!>2WO2pA^"P8]25VW*9"$gOtkNr3Vhk+:A5QE2t5^8XAM>mXT
-=:"d(!YB%cg]%E&O&/),qZ$^X:liYJs0)G&^\n-4T@3ai~>
-df0<^r;ZhiJcFR+!p@>=JcC<$bPqWO!2"iBa8Z7n^VB6arrDNe^B"#hrrA\f!!&XBs-<TchnQpW
-s+14CrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcFR+!p@>=JcC<$bPqWO!2"iBa8Z7n^VB6arrDNe^B"#hrrA\f!!&XBs-<TchnQpW
-s+14CrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcFR+!p@>=JcC<$bPqWO!2"iBa8Z7n^VB6arrDNe^B"#hrrA\f!!&XBs-<TchnQpW
-s+14CrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$nG`KDq>^N)JcC<$JcCK)!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$nG`KDq>^N)JcC<$JcCK)!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$nG`KDq>^N)JcC<$JcCK)!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$nG`K-q>^N1JcC<$JcCK)!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$nG`K-q>^N1JcC<$JcCK)!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$nG`K-q>^N1JcC<$JcCK)!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$nG`JRq>^NQJcC<$JcCK)!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$nG`JRq>^NQJcC<$JcCK)!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$nG`JRq>^NQJcC<$JcCK)!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$nc&Xa&GlG.#kroMJcC<$LAq7gr;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$nc&Xa&GlG.#kroMJcC<$LAq7gr;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$nc&Xa&GlG.#kroMJcC<$LAq7gr;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$nc&T]q>^L\JcC<$JcCH(!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$nc&T]q>^L\JcC<$JcCH(!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$nc&T]q>^L\JcC<$JcCH(!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$o)AaZ./EoDIt@WNs+13(rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$o)AaZ./EoDIt@WNs+13(rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$o)AaZ./EoDIt@WNs+13(rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$oD\jS0_k\Kc[l+Is+13(rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$oD\jS0_k\Kc[l+Is+13(rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$oD\jS0_k\Kc[l+Is+13(rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$rr<#eqYpWSNtD*e!)S7HJcC<$K`;%er;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$rr<#eqYpWSNtD*e!)S7HJcC<$K`;%er;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$rr<#eqYpWSNtD*e!)S7HJcC<$K`;%er;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$rr38=!#Rt'Io&BQp&G*=JcC<$JcCE'!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$rr38=!#Rt'Io&BQp&G*=JcC<$JcCE'!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$rr38=!#Rt'Io&BQp&G*=JcC<$JcCE'!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$rr2u5mf3?;JcC<$JcCB&!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$rr2u5mf3?;JcC<$JcCB&!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$rr2u5mf3?;JcC<$JcCB&!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$rr2u5n,NGbJcC<$JcC?%!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$rr2u5n,NGbJcC<$JcC?%!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$rr2u5n,NGbJcC<$JcC?%!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$rr2u5nGiSlpOW?qs+13%rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$rr2u5nGiSlpOW?qs+13%rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$rr2u5nGiSlpOW?qs+13%rrBh4!!&Y>s*t~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$rr2u5o)JdsO+I=^s+13$rrN/7r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$rr2u5o)JdsO+I=^s+13$rrN/7r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$rr2u5o)JdsO+I=^s+13$rrN/7r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$rr2u5o`,%!E9DfPJcC<$JcGcM!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$rr2u5o`,%!E9DfPJcC<$JcGcM!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$rr2u5o`,%!E9DfPJcC<$JcGcM!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$rr3&G5T'=t"!D!DkCNYas+13$s8Drt^\n-4T@3ai~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$rr3&G5T'=t"!D!DkCNYas+13$s8Drt^\n-4T@3ai~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$rr3&G5T'=t"!D!DkCNYas+13$s8Drt^\n-4T@3ai~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$q>UNJ^Xn&:JcC<$JcGKE!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$q>UNJ^Xn&:JcC<$JcGKE!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$q>UNJ^Xn&:JcC<$JcGKE!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcGNF"2BU^0`(hP(f6:6JcF0u$b(U^5UZU<5X9:LkCN[,rrQR.T7R#ns+13$s+13$
-s6Tac^\n-4T@3ai~>
-df0<^r;ZhiJcGNF"2BU^0`(hP(f6:6JcF0u$b(U^5UZU<5X9:LkCN[,rrQR.T7R#ns+13$s+13$
-s6Tac^\n-4T@3ai~>
-df0<^r;ZhiJcGNF"2BU^0`(hP(f6:6JcF0u$b(U^5UZU<5X9:LkCN[,rrQR.T7R#ns+13$s+13$
-s6Tac^\n-4T@3ai~>
-df0<^r;ZhiJcGWI!p=e>o)Jh7O7.Z"rr2tbqu?^>ir9)3E#A6J!Do\Fs7lTq?iZgMs+13Err@<=
-5QI_GrrBOt5Qu+VJ"OLEmJd0*lTbH*JcC<$Zi:$?r;Zhidf4g~>
-df0<^r;ZhiJcGWI!p=e>o)Jh7O7.Z"rr2tbqu?^>ir9)3E#A6J!Do\Fs7lTq?iZgMs+13Err@<=
-5QI_GrrBOt5Qu+VJ"OLEmJd0*lTbH*JcC<$Zi:$?r;Zhidf4g~>
-df0<^r;ZhiJcGWI!p=e>o)Jh7O7.Z"rr2tbqu?^>ir9)3E#A6J!Do\Fs7lTq?iZgMs+13Err@<=
-5QI_GrrBOt5Qu+VJ"OLEmJd0*lTbH*JcC<$Zi:$?r;Zhidf4g~>
-df0<^r;ZhiJcG]K!r$X>mf3@oG_,nprr@$9!!"/&rrMk%n,NJ;a+=9errQR.T7R#ns.fSppB^No
-!'ocJ!2&NV!si#,p[S7`5jJCM@"J?/s0M_*^\n-4T@3ai~>
-df0<^r;ZhiJcG]K!r$X>mf3@oG_,nprr@$9!!"/&rrMk%n,NJ;a+=9errQR.T7R#ns.fSppB^No
-!'ocJ!2&NV!si#,p[S7`5jJCM@"J?/s0M_*^\n-4T@3ai~>
-df0<^r;ZhiJcG]K!r$X>mf3@oG_,nprr@$9!!"/&rrMk%n,NJ;a+=9errQR.T7R#ns.fSppB^No
-!'ocJ!2&NV!si#,p[S7`5jJCM@"J?/s0M_*^\n-4T@3ai~>
-df0<^r;ZhiJcG`L!QQVS!!,(2Jc>^8qu?^>jo5A%...'9#`jQ:qu6_*!2"iBJcDMF!2oMj!9`VH
-!2&ES!XN2koD\eUlMpomJcC<$Zi:$?r;Zhidf4g~>
-df0<^r;ZhiJcG`L!QQVS!!,(2Jc>^8qu?^>jo5A%...'9#`jQ:qu6_*!2"iBJcDMF!2oMj!9`VH
-!2&ES!XN2koD\eUlMpomJcC<$Zi:$?r;Zhidf4g~>
-df0<^r;ZhiJcG`L!QQVS!!,(2Jc>^8qu?^>jo5A%...'9#`jQ:qu6_*!2"iBJcDMF!2oMj!9`VH
-!2&ES!XN2koD\eUlMpomJcC<$Zi:$?r;Zhidf4g~>
-df0<^r;ZhiJcGcM!12mL!=6/errD6Z!!"/(rrA\V!!#iHs8;lu?iZgMs+13Frr?0p!!&AMrrA\Q
-!!3FFn+H\\5jJCM@"J?/s0M_*^\n-4T@3ai~>
-df0<^r;ZhiJcGcM!12mL!=6/errD6Z!!"/(rrA\V!!#iHs8;lu?iZgMs+13Frr?0p!!&AMrrA\Q
-!!3FFn+H\\5jJCM@"J?/s0M_*^\n-4T@3ai~>
-df0<^r;ZhiJcGcM!12mL!=6/errD6Z!!"/(rrA\V!!#iHs8;lu?iZgMs+13Frr?0p!!&AMrrA\Q
-!!3FFn+H\\5jJCM@"J?/s0M_*^\n-4T@3ai~>
-df0<^r;ZhiJc>cNTC`*a0F7=O!=7#)rr@<@!!"/)rrL.Gkl:^5JcG]K!al##JcC<$V#LJi#ke5u
-5jA:KTAonP+OBc]!'oiM!+:BXJcE(V!5JI4!2%^>J,~>
-df0<^r;ZhiJc>cNTC`*a0F7=O!=7#)rr@<@!!"/)rrL.Gkl:^5JcG]K!al##JcC<$V#LJi#ke5u
-5jA:KTAonP+OBc]!'oiM!+:BXJcE(V!5JI4!2%^>J,~>
-df0<^r;ZhiJc>cNTC`*a0F7=O!=7#)rr@<@!!"/)rrL.Gkl:^5JcG]K!al##JcC<$V#LJi#ke5u
-5jA:KTAonP+OBc]!'oiM!+:BXJcE(V!5JI4!2%^>J,~>
-df0<^r;ZhiJc>b[#l+H&#\^^!rr3)`^Q1AL!!*Y_LAq7_q>^L<kl1\@)"mq2-pU&j!!'3Rs8N$"
-?iZgMs+13GrrAth!!)3IrrA\N!!*Y?p\t4YlMpomJcC<$Zi:$?r;Zhidf4g~>
-df0<^r;ZhiJc>b[#l+H&#\^^!rr3)`^Q1AL!!*Y_LAq7_q>^L<kl1\@)"mq2-pU&j!!'3Rs8N$"
-?iZgMs+13GrrAth!!)3IrrA\N!!*Y?p\t4YlMpomJcC<$Zi:$?r;Zhidf4g~>
-df0<^r;ZhiJc>b[#l+H&#\^^!rr3)`^Q1AL!!*Y_LAq7_q>^L<kl1\@)"mq2-pU&j!!'3Rs8N$"
-?iZgMs+13GrrAth!!)3IrrA\N!!*Y?p\t4YlMpomJcC<$Zi:$?r;Zhidf4g~>
-df0<^r;ZhiK)Yl?)#4.4=PrlQ!J^sV!!#iNrrJ/dq>^L<kl1WBp](=kci!eEmuJ=]!!*YgJcGcM
-!al##JcC<$V#LEsoDelXlMgjVi;`laVtg8lchkHWVtg>h^Aul:s+13VrrBh4!!&Y>s*t~>
-df0<^r;ZhiK)Yl?)#4.4=PrlQ!J^sV!!#iNrrJ/dq>^L<kl1WBp](=kci!eEmuJ=]!!*YgJcGcM
-!al##JcC<$V#LEsoDelXlMgjVi;`laVtg8lchkHWVtg>h^Aul:s+13VrrBh4!!&Y>s*t~>
-df0<^r;ZhiK)Yl?)#4.4=PrlQ!J^sV!!#iNrrJ/dq>^L<kl1WBp](=kci!eEmuJ=]!!*YgJcGcM
-!al##JcC<$V#LEsoDelXlMgjVi;`laVtg8lchkHWVtg>h^Aul:s+13VrrBh4!!&Y>s*t~>
-df0<^r;ZhiK)Ygiq#CE(o`"sL0_k\K[u:7fc]94D!!"/+rrB7u!!+4gq#:Bh@/0d&:kAZHrrQR.
-T7R#ns/#_rpB^Bk!'oiL!2')f!+>^(!71YZ".t'6&G?))#hSYI!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiK)Ygiq#CE(o`"sL0_k\K[u:7fc]94D!!"/+rrB7u!!+4gq#:Bh@/0d&:kAZHrrQR.
-T7R#ns/#_rpB^Bk!'oiL!2')f!+>^(!71YZ".t'6&G?))#hSYI!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiK)Ygiq#CE(o`"sL0_k\K[u:7fc]94D!!"/+rrB7u!!+4gq#:Bh@/0d&:kAZHrrQR.
-T7R#ns/#_rpB^Bk!'oiL!2')f!+>^(!71YZ".t'6&G?))#hSYI!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiKDtqtq#CDEo)AaB#l4N$5`u'MT7;>]5R@#_!$LP+!&46L!?g:mrr?I&!!)25rr`:/
-!2"iBJcDSH!2oYn!$M+<!9`\J!2')f!+>Eu!P_J*!!+eJoD\gJq#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiKDtqtq#CDEo)AaB#l4N$5`u'MT7;>]5R@#_!$LP+!&46L!?g:mrr?I&!!)25rr`:/
-!2"iBJcDSH!2oYn!$M+<!9`\J!2')f!+>Eu!P_J*!!+eJoD\gJq#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiKDtqtq#CDEo)AaB#l4N$5`u'MT7;>]5R@#_!$LP+!&46L!?g:mrr?I&!!)25rr`:/
-!2"iBJcDSH!2oYn!$M+<!9`\J!2')f!+>Eu!P_J*!!+eJoD\gJq#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiKDtprq>^L\nG`K<q#CEXP5bMIn,NG2lMgjfq#CE@oD\e]q>^M7Jc>iP?iZgMs+13H
-rr>mm!!+L'q>^M^li-sWq>^M'nc&X90_bVJGk:q8ht[8's+13NrrBh4!!&Y>s*t~>
-df0<^r;ZhiKDtprq>^L\nG`K<q#CEXP5bMIn,NG2lMgjfq#CE@oD\e]q>^M7Jc>iP?iZgMs+13H
-rr>mm!!+L'q>^M^li-sWq>^M'nc&X90_bVJGk:q8ht[8's+13NrrBh4!!&Y>s*t~>
-df0<^r;ZhiKDtprq>^L\nG`K<q#CEXP5bMIn,NG2lMgjfq#CE@oD\e]q>^M7Jc>iP?iZgMs+13H
-rr>mm!!+L'q>^M^li-sWq>^M'nc&X90_bVJGk:q8ht[8's+13NrrBh4!!&Y>s*t~>
-df0<^r;ZhiKDtooq>^N9nG`O`./EoDQ]h@K5k"aR+R8t,0_tbLE:X#/ch[VB#j6d=!al##JcC<$
-VZ-\c#l=T&J)C)&!'olM!2')f!+><r!UiST!!*Aoo`"pKq#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiKDtooq>^N9nG`O`./EoDQ]h@K5k"aR+R8t,0_tbLE:X#/ch[VB#j6d=!al##JcC<$
-VZ-\c#l=T&J)C)&!'olM!2')f!+><r!UiST!!*Aoo`"pKq#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiKDtooq>^N9nG`O`./EoDQ]h@K5k"aR+R8t,0_tbLE:X#/ch[VB#j6d=!al##JcC<$
-VZ-\c#l=T&J)C)&!'olM!2')f!+><r!UiST!!*Aoo`"pKq#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiK`;%uq#CE`n,EB$q>^M'P5bMIn,NG2li-tBq>^O%kOJQP;#1.lO+I<4?iZgMs+13I
-rrA\f!!:dP3;NUTkNr3KTDANf@.4*rpFuCC!13?X!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiK`;%uq#CE`n,EB$q>^M'P5bMIn,NG2li-tBq>^O%kOJQP;#1.lO+I<4?iZgMs+13I
-rrA\f!!:dP3;NUTkNr3KTDANf@.4*rpFuCC!13?X!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiK`;%uq#CE`n,EB$q>^M'P5bMIn,NG2li-tBq>^O%kOJQP;#1.lO+I<4?iZgMs+13I
-rrA\f!!:dP3;NUTkNr3KTDANf@.4*rpFuCC!13?X!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiK`;%]q>^L<mf*9Rq>^LdP5bMIn,NG2li-sWq>^M'nG`L/q>^LlJc>dZ!2"iBJcDVI
-!(cte"!IXDJ,0-FO6llHTDANf@.+$pchRP@3;!4Nht[8's+13NrrBh4!!&Y>s*t~>
-df0<^r;ZhiK`;%]q>^L<mf*9Rq>^LdP5bMIn,NG2li-sWq>^M'nG`L/q>^LlJc>dZ!2"iBJcDVI
-!(cte"!IXDJ,0-FO6llHTDANf@.+$pchRP@3;!4Nht[8's+13NrrBh4!!&Y>s*t~>
-df0<^r;ZhiK`;%]q>^L<mf*9Rq>^LdP5bMIn,NG2li-sWq>^M'nG`L/q>^LlJc>dZ!2"iBJcDVI
-!(cte"!IXDJ,0-FO6llHTDANf@.+$pchRP@3;!4Nht[8's+13NrrBh4!!&Y>s*t~>
-df0<^r;ZhiK`;%Eq>^Llmf*:-q>^LLP5bMIn,NG2li-rmq>^Mnn,EA)qZ$X.pO`DH?iZgMs+13J
-rrMQoqZ$_Cs8U^I!!#"FrrA\f!!$Eorr?I&!!(pLrrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiK`;%Eq>^Llmf*:-q>^LLP5bMIn,NG2li-rmq>^Mnn,EA)qZ$X.pO`DH?iZgMs+13J
-rrMQoqZ$_Cs8U^I!!#"FrrA\f!!$Eorr?I&!!(pLrrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiK`;%Eq>^Llmf*:-q>^LLP5bMIn,NG2li-rmq>^Mnn,EA)qZ$X.pO`DH?iZgMs+13J
-rrMQoqZ$_Cs8U^I!!#"FrrA\f!!$Eorr?I&!!(pLrrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiK`;%%q>^Ldmf*:Eq>^LDL]7>sqZ$U=li-r-q>^Nan,EAqq>^N1K)Ym[!2"iBJcDYJ
-!2')f!6>*=!%@[D!8m2D!2')f!+>3o!4Vb(!3c(q!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiK`;%%q>^Ldmf*:Eq>^LDL]7>sqZ$U=li-r-q>^Nan,EAqq>^N1K)Ym[!2"iBJcDYJ
-!2')f!6>*=!%@[D!8m2D!2')f!+>3o!4Vb(!3c(q!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiK`;%%q>^Ldmf*:Eq>^LDL]7>sqZ$U=li-r-q>^Nan,EAqq>^N1K)Ym[!2"iBJcDYJ
-!2')f!6>*=!%@[D!8m2D!2')f!+>3o!4Vb(!3c(q!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiK`;%=q>^LDmf*:=q>^LlL]7>sqZ$U=m/I(;q>^LTmf*9jq>^MFK)Ym[!2"iBJcDYJ
-!(cte!$M7?!.XhF!/KtA!2')f!+>3o!V[0%!!&AYrrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiK`;%=q>^LDmf*:=q>^LlL]7>sqZ$U=m/I(;q>^LTmf*9jq>^MFK)Ym[!2"iBJcDYJ
-!(cte!$M7?!.XhF!/KtA!2')f!+>3o!V[0%!!&AYrrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiK`;%=q>^LDmf*:=q>^LlL]7>sqZ$U=m/I(;q>^LTmf*9jq>^MFK)Ym[!2"iBJcDYJ
-!(cte!$M7?!.XhF!/KtA!2')f!+>3o!V[0%!!&AYrrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiK`;%]q#CEhn,EC&q>^M?L]7>sqZ$U=m/I'Pq>^M/mf*:=q>^L\K)Ym[!2"iBJcD\K
-!Ug<k!!%9BrrC[I!!#"GrrA\f!!$Enrr=bL!!%NArrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiK`;%]q#CEhn,EC&q>^M?L]7>sqZ$U=m/I'Pq>^M/mf*:=q>^L\K)Ym[!2"iBJcD\K
-!Ug<k!!%9BrrC[I!!#"GrrA\f!!$Enrr=bL!!%NArrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiK`;%]q#CEhn,EC&q>^M?L]7>sqZ$U=m/I'Pq>^M/mf*:=q>^L\K)Ym[!2"iBJcD\K
-!Ug<k!!%9BrrC[I!!#"GrrA\f!!$Enrr=bL!!%NArrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiK`;&0q#CDUn,EB[q>^MnL]7>sqZ$U=m/I'1q>^MNmJm"_!"ab^!al##JcC<$W;cji
-q>^N9r;QaFq>^NQmf*9Zq>^M'm/I&Nq>^M'p&>$Lq#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiK`;&0q#CDUn,EB[q>^MnL]7>sqZ$U=m/I'1q>^MNmJm"_!"ab^!al##JcC<$W;cji
-q>^N9r;QaFq>^NQmf*9Zq>^M'm/I&Nq>^M'p&>$Lq#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiK`;&0q#CDUn,EB[q>^MnL]7>sqZ$U=m/I'1q>^MNmJm"_!"ab^!al##JcC<$W;cji
-q>^N9r;QaFq>^NQmf*9Zq>^M'm/I&Nq>^M'p&>$Lq#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiKE(`I!#Y2)!,23/!8!#+!$M.=!$LY.!*K't!3bei!%@[D!:PR?!al##JcC<$W;cig
-qZ$U=qu6YGq>^MNmf*9Zq>^M'm/I&nq>^M'p&>$Lq#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiKE(`I!#Y2)!,23/!8!#+!$M.=!$LY.!*K't!3bei!%@[D!:PR?!al##JcC<$W;cig
-qZ$U=qu6YGq>^MNmf*9Zq>^M'm/I&nq>^M'p&>$Lq#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiKE(`I!#Y2)!,23/!8!#+!$M.=!$LY.!*K't!3bei!%@[D!:PR?!al##JcC<$W;cig
-qZ$U=qu6YGq>^MNmf*9Zq>^M'm/I&nq>^M'p&>$Lq#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiKDtpJq#CD&nG`J2qZ$UmLAq5rqZ$U=m/I&>q>^NAmJd/Wq>^NAKDu!\!2"iBJcD_L
-!9a1Y!,290!6=p9!''EH!2')f!+>0n!)WLl!+>L"!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiKDtpJq#CD&nG`J2qZ$UmLAq5rqZ$U=m/I&>q>^NAmJd/Wq>^NAKDu!\!2"iBJcD_L
-!9a1Y!,290!6=p9!''EH!2')f!+>0n!)WLl!+>L"!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiKDtpJq#CD&nG`J2qZ$UmLAq5rqZ$U=m/I&>q>^NAmJd/Wq>^NAKDu!\!2"iBJcD_L
-!9a1Y!,290!6=p9!''EH!2')f!+>0n!)WLl!+>L"!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiKDtqtp](;=o)A^1q>^N)LAq5rqZ$U=m/I%sq>^NYmJd/oq>^MnKDu!\!2"iBJcD_L
-!13N^!5JC1!$M+<!8m8F!2')f!+>0n!'pA\!.X\A!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiKDtqtp](;=o)A^1q>^N)LAq5rqZ$U=m/I%sq>^NYmJd/oq>^MnKDu!\!2"iBJcD_L
-!13N^!5JC1!$M+<!8m8F!2')f!+>0n!'pA\!.X\A!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiKDtqtp](;=o)A^1q>^N)LAq5rqZ$U=m/I%sq>^NYmJd/oq>^MnKDu!\!2"iBJcD_L
-!13N^!5JC1!$M+<!8m8F!2')f!+>0n!'pA\!.X\A!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiK)Yg1p](=cn+?V[8G`Ae0STN,+Su-=+RT1/n+ctMrr@<?!!%e,rrQR.T7R#ns/H"u
-5l1N])#=13GkqC?L[Y6CTDANf@-mmn+Sl'<O7iMQht[8's+13NrrBh4!!&Y>s*t~>
-df0<^r;ZhiK)Yg1p](=cn+?V[8G`Ae0STN,+Su-=+RT1/n+ctMrr@<?!!%e,rrQR.T7R#ns/H"u
-5l1N])#=13GkqC?L[Y6CTDANf@-mmn+Sl'<O7iMQht[8's+13NrrBh4!!&Y>s*t~>
-df0<^r;ZhiK)Yg1p](=cn+?V[8G`Ae0STN,+Su-=+RT1/n+ctMrr@<?!!%e,rrQR.T7R#ns/H"u
-5l1N])#=13GkqC?L[Y6CTDANf@-mmn+Sl'<O7iMQht[8's+13NrrBh4!!&Y>s*t~>
-df0<^r;ZhiK)Ykd#l"B#(pEZ5!2')f!4R[^!$M.=!$L\/!71KA!!qrk!.XhF!+:HZ!al##JcC<$
-WrE(^q>^M/q>UH8q>^LTn,EB[q>^M'mJd1Dq#CDup&>$Lq#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiK)Ykd#l"B#(pEZ5!2')f!4R[^!$M.=!$L\/!71KA!!qrk!.XhF!+:HZ!al##JcC<$
-WrE(^q>^M/q>UH8q>^LTn,EB[q>^M'mJd1Dq#CDup&>$Lq#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiK)Ykd#l"B#(pEZ5!2')f!4R[^!$M.=!$L\/!71KA!!qrk!.XhF!+:HZ!al##JcC<$
-WrE(^q>^M/q>UH8q>^LTn,EB[q>^M'mJd1Dq#CDup&>$Lq#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiJc>_Rp&G+IYPJ2!h\c4j!/H7-!$M.=!$L\/!5J@1!$LY.!2')f!'l2:!al##JcC<$
-WrE'cq>^N1q#:=:q>^NQnG`K\q>^M'mJd0Yq>^O%p\"Odht[8's+13NrrBh4!!&Y>s*t~>
-df0<^r;ZhiJc>_Rp&G+IYPJ2!h\c4j!/H7-!$M.=!$L\/!5J@1!$LY.!2')f!'l2:!al##JcC<$
-WrE'cq>^N1q#:=:q>^NQnG`K\q>^M'mJd0Yq>^O%p\"Odht[8's+13NrrBh4!!&Y>s*t~>
-df0<^r;ZhiJc>_Rp&G+IYPJ2!h\c4j!/H7-!$M.=!$L\/!5J@1!$LY.!2')f!'l2:!al##JcC<$
-WrE'cq>^N1q#:=:q>^NQnG`K\q>^M'mJd0Yq>^O%p\"Odht[8's+13NrrBh4!!&Y>s*t~>
-df0<^r;ZhiJc>cNTCi0c+J8E,rrM""qZ$UuKDtooqZ$U=mJd0iq>^LDm/I'`q>^L\KDu!\!2"iB
-JcDbM!'pD]!#YJ1!-n>?!/L(D!2')f!+>3o!&46L!(cb^!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiJc>cNTCi0c+J8E,rrM""qZ$UuKDtooqZ$U=mJd0iq>^LDm/I'`q>^L\KDu!\!2"iB
-JcDbM!'pD]!#YJ1!-n>?!/L(D!2')f!+>3o!&46L!(cb^!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiJc>cNTCi0c+J8E,rrM""qZ$UuKDtooqZ$U=mJd0iq>^LDm/I'`q>^L\KDu!\!2"iB
-JcDbM!'pD]!#YJ1!-n>?!/L(D!2')f!+>3o!&46L!(cb^!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiJcGcM!LF)b!!NpQhuD"6qZ$XVpOiJG+Su-=+RT1/TDANf5j\LN^\Rp15_K(<?iZgM
-s+13NrrD6Y!!$^,rrC+9!!"G:rrA\f!!$EprrAtm!!&AXrrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiJcGcM!LF)b!!NpQhuD"6qZ$XVpOiJG+Su-=+RT1/TDANf5j\LN^\Rp15_K(<?iZgM
-s+13NrrD6Y!!$^,rrC+9!!"G:rrA\f!!$EprrAtm!!&AXrrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiJcGcM!LF)b!!NpQhuD"6qZ$XVpOiJG+Su-=+RT1/TDANf5j\LN^\Rp15_K(<?iZgM
-s+13NrrD6Y!!$^,rrC+9!!"G:rrA\f!!$EprrAtm!!&AXrrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiJcG`L!S9$s!!,V%qZ$YApO`DF+Su-=+RT1/TDANf5j\LN^\Rp1+G9[q?iZgMs+13N
-rrAD^!!'M%rr<o4!!(X@rrA\f!!$EqrrLFOq>^O5p[nIcht[8's+13NrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG`L!S9$s!!,V%qZ$YApO`DF+Su-=+RT1/TDANf5j\LN^\Rp1+G9[q?iZgMs+13N
-rrAD^!!'M%rr<o4!!(X@rrA\f!!$EqrrLFOq>^O5p[nIcht[8's+13NrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG`L!S9$s!!,V%qZ$YApO`DF+Su-=+RT1/TDANf5j\LN^\Rp1+G9[q?iZgMs+13N
-rrAD^!!'M%rr<o4!!(X@rrA\f!!$EqrrLFOq>^O5p[nIcht[8's+13NrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG]K!V^j,!!+LgJc>cN+Su-=+RT1/O88hV5j\LN^\Rp1+G9[q?iZgMs+13Nrr>=]
-!!*Z*pAY,+q>^MFnc&T]q>^M'nG`OH+Sc!;O7WAOht[8's+13NrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG]K!V^j,!!+LgJc>cN+Su-=+RT1/O88hV5j\LN^\Rp1+G9[q?iZgMs+13Nrr>=]
-!!*Z*pAY,+q>^MFnc&T]q>^M'nG`OH+Sc!;O7WAOht[8's+13NrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcG]K!V^j,!!+LgJc>cN+Su-=+RT1/O88hV5j\LN^\Rp1+G9[q?iZgMs+13Nrr>=]
-!!*Z*pAY,+q>^MFnc&T]q>^M'nG`OH+Sc!;O7WAOht[8's+13NrrBh4!!&Y>s*t~>
-df0<^r;ZhiJcGZJ!S8I`!!+MBJcGcM!$M.=!$L\/!.XhF!'ooN!5J@1!$Hpo!al##JcC<$XT&:X
-q>^M'p&>$,q>^LDnc&T]q>^M'nc&X)&GZ;,)#*Y%!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiJcGZJ!S8I`!!+MBJcGcM!$M.=!$L\/!.XhF!'ooN!5J@1!$Hpo!al##JcC<$XT&:X
-q>^M'p&>$,q>^LDnc&T]q>^M'nc&X)&GZ;,)#*Y%!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiJcGZJ!S8I`!!+MBJcGcM!$M.=!$L\/!.XhF!'ooN!5J@1!$Hpo!al##JcC<$XT&:X
-q>^M'p&>$,q>^LDnc&T]q>^M'nc&X)&GZ;,)#*Y%!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiJcG]K!J^sK!!+doJc>cN+Su-=+RT1/J,0-F5j\LN^\Ik^rrQR.T7R#ns/c5#L\^uN
-\+K\#)#=44fCJqATDANf@.XC!f4amY!3btn!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiJcG]K!J^sK!!+doJc>cN+Su-=+RT1/J,0-F5j\LN^\Ik^rrQR.T7R#ns/c5#L\^uN
-\+K\#)#=44fCJqATDANf@.XC!f4amY!3btn!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiJcG]K!J^sK!!+doJc>cN+Su-=+RT1/J,0-F5j\LN^\Ik^rrQR.T7R#ns/c5#L\^uN
-\+K\#)#=44fCJqATDANf@.XC!f4amY!3btn!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiJcGcM!S9=.!!4Qf)"R_.=Qb;9!$M.=!$L\/!.XhF!'ooN!5J=0KDu!\!2"iBJcDhO
-!''iU!>,"trr?a/!!%N>rrA\f!!$F$rr_/fIlR-%!-n&6!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiJcGcM!S9=.!!4Qf)"R_.=Qb;9!$M.=!$L\/!.XhF!'ooN!5J=0KDu!\!2"iBJcDhO
-!''iU!>,"trr?a/!!%N>rrA\f!!$F$rr_/fIlR-%!-n&6!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiJcGcM!S9=.!!4Qf)"R_.=Qb;9!$M.=!$L\/!.XhF!'ooN!5J=0KDu!\!2"iBJcDhO
-!''iU!>,"trr?a/!!%N>rrA\f!!$F$rr_/fIlR-%!-n&6!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiJc>fOV[3/""[MPVs/.jK!!*Y'hu<]6e,TJueGfLkqZ$U=mJd09q>^L\m/I(#q#H'I
-!al##JcC<$XoACYq>^M'oD\g*q>^LDo)A]^q>^L4q*=HM!(cVZ!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiJc>fOV[3/""[MPVs/.jK!!*Y'hu<]6e,TJueGfLkqZ$U=mJd09q>^L\m/I(#q#H'I
-!al##JcC<$XoACYq>^M'oD\g*q>^LDo)A]^q>^L4q*=HM!(cVZ!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiJc>fOV[3/""[MPVs/.jK!!*Y'hu<]6e,TJueGfLkqZ$U=mJd09q>^L\m/I(#q#H'I
-!al##JcC<$XoACYq>^M'oD\g*q>^LDo)A]^q>^L4q*=HM!(cVZ!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiJc>bc#l=T&B_VH)!nV)so`+uai;Wf7e,TJueGfLkqZ$U=mJd09q>^L\m/I(#q>^L<
-KDu!\!2"iBJcDkP!/LCN!4VP!!#YP4!8$iB!2&6N!GM5srrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiJc>bc#l=T&B_VH)!nV)so`+uai;Wf7e,TJueGfLkqZ$U=mJd09q>^L\m/I(#q>^L<
-KDu!\!2"iBJcDkP!/LCN!4VP!!#YP4!8$iB!2&6N!GM5srrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiJc>bc#l=T&B_VH)!nV)so`+uai;Wf7e,TJueGfLkqZ$U=mJd09q>^L\m/I(#q>^L<
-KDu!\!2"iBJcDkP!/LCN!4VP!!#YP4!8$iB!2&6N!GM5srrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiK)Yl/&GlG-5kt?\muJ=Z!!%N-rrCs+!!%Murr=2=!!"//rrA,V!!#:NrrBh1!!"-o
-rrQR.T7R#ns/l;$3;W[V#l!oi!+>X'!.XV?!2&<P!=5%[rrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiK)Yl/&GlG-5kt?\muJ=Z!!%N-rrCs+!!%Murr=2=!!"//rrA,V!!#:NrrBh1!!"-o
-rrQR.T7R#ns/l;$3;W[V#l!oi!+>X'!.XV?!2&<P!=5%[rrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiK)Yl/&GlG-5kt?\muJ=Z!!%N-rrCs+!!%Murr=2=!!"//rrA,V!!#:NrrBh1!!"-o
-rrQR.T7R#ns/l;$3;W[V#l!oi!+>X'!.XV?!2&<P!=5%[rrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiKDtu@+Su->)!CVm!r$pFpAb2Kir9#9e,TJueGfLkqZ$U=mJd0Yq>^L\m/I(#q>^L<
-KDu!\!2"iBJcDnQ!8mVQ!*Jdk!4Ve)!%@I=!2&?Q!AMR]rrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiKDtu@+Su->)!CVm!r$pFpAb2Kir9#9e,TJueGfLkqZ$U=mJd0Yq>^L\m/I(#q>^L<
-KDu!\!2"iBJcDnQ!8mVQ!*Jdk!4Ve)!%@I=!2&?Q!AMR]rrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiKDtu@+Su->)!CVm!r$pFpAb2Kir9#9e,TJueGfLkqZ$U=mJd0Yq>^L\m/I(#q>^L<
-KDu!\!2"iBJcDnQ!8mVQ!*Jdk!4Ve)!%@I=!2&?Q!AMR]rrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiKDtpjq>^N1oD\jC3;<IS#j:7J!8l9+!.WMu!$M.=!$L\/!2')f!'ooN!5J@1!'l2:
-!al##JcC<$Y5\KWq>^Mnnc&Xa&GcA,fC](CTB?1T0X'gB!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiKDtpjq>^N1oD\jC3;<IS#j:7J!8l9+!.WMu!$M.=!$L\/!2')f!'ooN!5J@1!'l2:
-!al##JcC<$Y5\KWq>^Mnnc&Xa&GcA,fC](CTB?1T0X'gB!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiKDtpjq>^N1oD\jC3;<IS#j:7J!8l9+!.WMu!$M.=!$L\/!2')f!'ooN!5J@1!'l2:
-!al##JcC<$Y5\KWq>^Mnnc&Xa&GcA,fC](CTB?1T0X'gB!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiK`;)A#l=T%5k+dRGk_7=E9$ruhp_W+J(4Ju+Su-=+RT1/YPJ5!..$s6VtpAn5_K(<
-?iZgMs+13Qrr>%T!!'Lt^ApOq!!%99rrA\V!!4!>YNc&eht[8's+13NrrBh4!!&Y>s*t~>
-df0<^r;ZhiK`;)A#l=T%5k+dRGk_7=E9$ruhp_W+J(4Ju+Su-=+RT1/YPJ5!..$s6VtpAn5_K(<
-?iZgMs+13Qrr>%T!!'Lt^ApOq!!%99rrA\V!!4!>YNc&eht[8's+13NrrBh4!!&Y>s*t~>
-df0<^r;ZhiK`;)A#l=T%5k+dRGk_7=E9$ruhp_W+J(4Ju+Su-=+RT1/YPJ5!..$s6VtpAn5_K(<
-?iZgMs+13Qrr>%T!!'Lt^ApOq!!%99rrA\V!!4!>YNc&eht[8's+13NrrBh4!!&Y>s*t~>
-df0<^r;ZhiK`;%5q>^Mnn,EB;q#CF$kN)XCn'lge^XW8`+Su-=+RT1/^\Rp1+RK+.TDANf5_K(<
-?iZgMs+13RrrC[.!!"/6rrA\\!!NWn5ZjB)k5PG=q#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiK`;%5q>^Mnn,EB;q#CF$kN)XCn'lge^XW8`+Su-=+RT1/^\Rp1+RK+.TDANf5_K(<
-?iZgMs+13RrrC[.!!"/6rrA\\!!NWn5ZjB)k5PG=q#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiK`;%5q>^Mnn,EB;q#CF$kN)XCn'lge^XW8`+Su-=+RT1/^\Rp1+RK+.TDANf5_K(<
-?iZgMs+13RrrC[.!!"/6rrA\\!!NWn5ZjB)k5PG=q#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiL&V2J)#F:6&GPVm!-n;>!-!bo!$M.=!$L\/!71KA!#Y)&!.XhF!+:HZ!al##JcC<$
-YQ"TPh>dPrp&>#aq>^M'fDbj.q#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiL&V2J)#F:6&GPVm!-n;>!-!bo!$M.=!$L\/!71KA!#Y)&!.XhF!+:HZ!al##JcC<$
-YQ"TPh>dPrp&>#aq>^M'fDbj.q#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiL&V2J)#F:6&GPVm!-n;>!-!bo!$M.=!$L\/!71KA!#Y)&!.XhF!+:HZ!al##JcC<$
-YQ"TPh>dPrp&>#aq>^M'fDbj.q#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiL&V.^q>^LtmJd4U#l4N$3/IS7+Su-=+RT1/p\=gUrr@$7!!%e,rrQR.T7R#ns0)G&
-.,Fq(GkM(:TDANf@+YDYht[8's+13NrrBh4!!&Y>s*t~>
-df0<^r;ZhiL&V.^q>^LtmJd4U#l4N$3/IS7+Su-=+RT1/p\=gUrr@$7!!%e,rrQR.T7R#ns0)G&
-.,Fq(GkM(:TDANf@+YDYht[8's+13NrrBh4!!&Y>s*t~>
-df0<^r;ZhiL&V.^q>^LtmJd4U#l4N$3/IS7+Su-=+RT1/p\=gUrr@$7!!%e,rrQR.T7R#ns0)G&
-.,Fq(GkM(:TDANf@+YDYht[8's+13NrrBh4!!&Y>s*t~>
-df0<^r;ZhiL&V.6q>^MFm/I'!q>^L,M#RGtqZ$U=m/I&&q>fm^!+>X'!2kJL!al##JcC<$Yl=^T
-h#IEtp&>#aq>^M'fDbj.q#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiL&V.6q>^MFm/I'!q>^L,M#RGtqZ$U=m/I&&q>fm^!+>X'!2kJL!al##JcC<$Yl=^T
-h#IEtp&>#aq>^M'fDbj.q#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiL&V.6q>^MFm/I'!q>^L,M#RGtqZ$U=m/I&&q>fm^!+>X'!2kJL!al##JcC<$Yl=^T
-h#IEtp&>#aq>^M'fDbj.q#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiL&V-lq>^Mfm/I'pq#CE`M>mPuqZ$U=m/I&Fq>^NImJd/Wq>^N9KDu!\!2"iBJcDtS
-!.Wc(!6=g5!2')f!+=FY!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiL&V-lq>^Mfm/I'pq#CE`M>mPuqZ$U=m/I&Fq>^NImJd/Wq>^N9KDu!\!2"iBJcDtS
-!.Wc(!6=g5!2')f!+=FY!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiL&V-lq>^Mfm/I'pq#CE`M>mPuqZ$U=m/I&Fq>^NImJd/Wq>^N9KDu!\!2"iBJcDtS
-!.Wc(!6=g5!2')f!+=FY!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiL&V-Dq>^N)m/I(;q#CE@M>mPuqZ$U=m/I&nq>^N)mJd/'q>^NYKDu!\!2"iBJcDtS
-!%?V&!-n5;!2')f!+=FY!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiL&V-Dq>^N)m/I(;q#CE@M>mPuqZ$U=m/I&nq>^N)mJd/'q>^NYKDu!\!2"iBJcDtS
-!%?V&!-n5;!2')f!+=FY!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiL&V-Dq>^N)m/I(;q#CE@M>mPuqZ$U=m/I&nq>^N)mJd/'q>^NYKDu!\!2"iBJcDtS
-!%?V&!-n5;!2')f!+=FY!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiL&V,qq>^N1m/I(Sq#CDmM>mPuqZ$U=m/I'@q>^MVmf*:]q>^L,K)Ym[!2"iBJcE"T
-!8%&I!#Y#e!&46L!$M"8!2')f!+=FY!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiL&V,qq>^N1m/I(Sq#CDmM>mPuqZ$U=m/I'@q>^MVmf*:]q>^L,K)Ym[!2"iBJcE"T
-!8%&I!#Y#e!&46L!$M"8!2')f!+=FY!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiL&V,qq>^N1m/I(Sq#CDmM>mPuqZ$U=m/I'@q>^MVmf*:]q>^L,K)Ym[!2"iBJcE"T
-!8%&I!#Y#e!&46L!$M"8!2')f!+=FY!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiL&V,qq>^N1li6b\!4Rgb!$M.=!$LY.!3c5!!,1g#!71KA!&0$)!al##JcC<$Z2XfR
-q>^Mfli-tJq#CE8p\t5cq>^M'fDbj.q#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiL&V,qq>^N1li6b\!4Rgb!$M.=!$LY.!3c5!!,1g#!71KA!&0$)!al##JcC<$Z2XfR
-q>^Mfli-tJq#CE8p\t5cq>^M'fDbj.q#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiL&V,qq>^N1li6b\!4Rgb!$M.=!$LY.!3c5!!,1g#!71KA!&0$)!al##JcC<$Z2XfR
-q>^Mfli-tJq#CE8p\t5cq>^M'fDbj.q#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiL&V-,q>^Mfli6b\!7-N%!$M.=!$LY.!:Taa!&3j@!2')f!-!Pi!al##JcC<$Z2XeP
-q>^NalMgiLq>^M?p\t5cq>^M'fDbj.q#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiL&V-,q>^Mfli6b\!7-N%!$M.=!$LY.!:Taa!&3j@!2')f!-!Pi!al##JcC<$Z2XeP
-q>^NalMgiLq>^M?p\t5cq>^M'fDbj.q#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiL&V-,q>^Mfli6b\!7-N%!$M.=!$LY.!:Taa!&3j@!2')f!-!Pi!al##JcC<$Z2XeP
-q>^NalMgiLq>^M?p\t5cq>^M'fDbj.q#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiL&V-Dq>^MFm/I(Kq#CEXM>mPuqZ$U=li-r=q>^NQn,EAiq>^N)K)Ym[!2"iBJcE%U
-!71KA!'ofK!13N^!$M%9!2')f!+=FY!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiL&V-Dq>^MFm/I(Kq#CEXM>mPuqZ$U=li-r=q>^NQn,EAiq>^N)K)Ym[!2"iBJcE%U
-!71KA!'ofK!13N^!$M%9!2')f!+=FY!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiL&V-Dq>^MFm/I(Kq#CEXM>mPuqZ$U=li-r=q>^NQn,EAiq>^N)K)Ym[!2"iBJcE%U
-!71KA!'ofK!13N^!$M%9!2')f!+=FY!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiL&V-dq>^LTm/I(#q>^L$M#RGtqZ$U=li-s0q>^M^nG`O`&GlG.#krrN!al##JcC<$
-ZMsoLq>^M^l2LbHq#CE8q#:>dq>^M'fDbj.q#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiL&V-dq>^LTm/I(#q>^L$M#RGtqZ$U=li-s0q>^M^nG`O`&GlG.#krrN!al##JcC<$
-ZMsoLq>^M^l2LbHq#CE8q#:>dq>^M'fDbj.q#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiL&V-dq>^LTm/I(#q>^L$M#RGtqZ$U=li-s0q>^M^nG`O`&GlG.#krrN!al##JcC<$
-ZMsoLq>^M^l2LbHq#CE8q#:>dq>^M'fDbj.q#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiL&V.Fq#CEXmJd09q>^LdM#RGtqZ$U=li-t"q>^LdnG`Ktq>^L\Jc>dZ!2"iBJcE%U
-!$M+<!9`SG!'pA\!-%`5!2')f!+=FY!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiL&V.Fq#CEXmJd09q>^LdM#RGtqZ$U=li-t"q>^LdnG`Ktq>^L\Jc>dZ!2"iBJcE%U
-!$M+<!9`SG!'pA\!-%`5!2')f!+=FY!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiL&V.Fq#CEXmJd09q>^LdM#RGtqZ$U=li-t"q>^LdnG`Ktq>^L\Jc>dZ!2"iBJcE%U
-!$M+<!9`SG!'pA\!-%`5!2')f!+=FY!8mSPJcC<$X8`17r;Zhidf4g~>
-df0<^r;ZhiL&V/Aq#CD6mJd/?q>^M^M#RGtqZ$U=li."[#l4N$cgh#8;#1.lIt@V$?iZgMs+13V
-rrC+9!!#:IrrAD^!!!l2rrA\f!!$EYrrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiL&V/Aq#CD6mJd/?q>^M^M#RGtqZ$U=li."[#l4N$cgh#8;#1.lIt@V$?iZgMs+13V
-rrC+9!!#:IrrAD^!!!l2rrA\f!!$EYrrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiL&V/Aq#CD6mJd/?q>^M^M#RGtqZ$U=li."[#l4N$cgh#8;#1.lIt@V$?iZgMs+13V
-rrC+9!!#:IrrAD^!!!l2rrA\f!!$EYrrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiK`;$;q>^O%hs^RFYPA.uhh_:4+Su-=+R8t,E;BP7;"FVd\,$(*#j6d=!al##JcC<$
-Zi:#Mq>^MNkPkP>q#CE0q>UGeq>^M'fDbj.q#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiK`;$;q>^O%hs^RFYPA.uhh_:4+Su-=+R8t,E;BP7;"FVd\,$(*#j6d=!al##JcC<$
-Zi:#Mq>^MNkPkP>q#CE0q>UGeq>^M'fDbj.q#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiK`;$;q>^O%hs^RFYPA.uhh_:4+Su-=+R8t,E;BP7;"FVd\,$(*#j6d=!al##JcC<$
-Zi:#Mq>^MNkPkP>q#CE0q>UGeq>^M'fDbj.q#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiK`;%Uq#CFTp[S7apF,k<!*G$V!$M.=!$LS,!Tsab!!((3rrMjJq>^M'Jc>iP?iZgM
-s+13Vrr=2<!!(p=rr>%T!!$^.rrA\f!!$EYrrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiK`;%Uq#CFTp[S7apF,k<!*G$V!$M.=!$LS,!Tsab!!((3rrMjJq>^M'Jc>iP?iZgM
-s+13Vrr=2<!!(p=rr>%T!!$^.rrA\f!!$EYrrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiK`;%Uq#CFTp[S7apF,k<!*G$V!$M.=!$LS,!Tsab!!((3rrMjJq>^M'Jc>iP?iZgM
-s+13Vrr=2<!!(p=rr>%T!!$^.rrA\f!!$EYrrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiKDtp*q#CG'p[\=a;#1.m#j7!C!$M.=!$LP+!)WLl!>*TNrrMjbq#CE@Jc>iP?iZgM
-s+13WrrC+9!!#"?rr@iN!!!l3rrA\f!!$EYrrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiKDtp*q#CG'p[\=a;#1.m#j7!C!$M.=!$LP+!)WLl!>*TNrrMjbq#CE@Jc>iP?iZgM
-s+13WrrC+9!!#"?rr@iN!!!l3rrA\f!!$EYrrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiKDtp*q#CG'p[\=a;#1.m#j7!C!$M.=!$LP+!)WLl!>*TNrrMjbq#CE@Jc>iP?iZgM
-s+13WrrC+9!!#"?rr@iN!!!l3rrA\f!!$EYrrCsP!.k0$s/Z/"^\n-4T@3ai~>
-df0<^r;ZhiKDtqTp](=[n+H\]mnif[!/H=/!$M.=!$LP+!71H@!>*$@rrM:Rq#CCkJcGcM!al##
-JcC<$[/U,Nq>^MNjo5><q#CE0qYpPfq>^M'fDbj.q#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiKDtqTp](=[n+H\]mnif[!/H=/!$M.=!$LP+!71H@!>*$@rrM:Rq#CCkJcGcM!al##
-JcC<$[/U,Nq>^MNjo5><q#CE0qYpPfq>^M'fDbj.q#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiKDtqTp](=[n+H\]mnif[!/H=/!$M.=!$LP+!71H@!>*$@rrM:Rq#CCkJcGcM!al##
-JcC<$[/U,Nq>^MNjo5><q#CE0qYpPfq>^M'fDbj.q#H!GJcDeN!5JI4!2%^>J,~>
-df0<^r;ZhiK)YgIp](=3TD/?dT-3q0!D)sIrrA\cIfL&W!!!T)IfQ\Drr@$5!!5Ehhu<WXpV1YQ
-q#CF,f7Eu%rrQR.T7R#ns0Ve++Sl'<fAur33;NUTB_q`/TDANf@,Cn`TDO*<E;9M1IfQ['s+13V
-rrBh4!!&Y>s*t~>
-df0<^r;ZhiK)YgIp](=3TD/?dT-3q0!D)sIrrA\cIfL&W!!!T)IfQ\Drr@$5!!5Ehhu<WXpV1YQ
-q#CF,f7Eu%rrQR.T7R#ns0Ve++Sl'<fAur33;NUTB_q`/TDANf@,Cn`TDO*<E;9M1IfQ['s+13V
-rrBh4!!&Y>s*t~>
-df0<^r;ZhiK)YgIp](=3TD/?dT-3q0!D)sIrrA\cIfL&W!!!T)IfQ\Drr@$5!!5Ehhu<WXpV1YQ
-q#CF,f7Eu%rrQR.T7R#ns0Ve++Sl'<fAur33;NUTB_q`/TDANf@,Cn`TDO*<E;9M1IfQ['s+13V
-rrBh4!!&Y>s*t~>
-df0<^r;ZhiK)YlG3;3CZ+D@snn)qHhBH['M!ANu(rr>=G!!$EurrMjRo`,"H#k\/tYCZ`QrrQR.
-T7R#ns0_k,a8,c9.-(=-L\^uN)#F74TDANf@,Cn`5jJCM@"J?/s0M_*^\n-4T@3ai~>
-df0<^r;ZhiK)YlG3;3CZ+D@snn)qHhBH['M!ANu(rr>=G!!$EurrMjRo`,"H#k\/tYCZ`QrrQR.
-T7R#ns0_k,a8,c9.-(=-L\^uN)#F74TDANf@,Cn`5jJCM@"J?/s0M_*^\n-4T@3ai~>
-df0<^r;ZhiK)YlG3;3CZ+D@snn)qHhBH['M!ANu(rr>=G!!$EurrMjRo`,"H#k\/tYCZ`QrrQR.
-T7R#ns0_k,a8,c9.-(=-L\^uN)#F74TDANf@,Cn`5jJCM@"J?/s0M_*^\n-4T@3ai~>
-df0<^r;ZhiJc>c6+Q`Y)+Qngc!'oWG!+>Bt!T+aY!!%e*s8Ds!?iZgMs+13Xrr?a/!!%N/rrCsP
-!!'e2rrA\f!!$E`rr>=M!!$DXs+13VrrBh4!!&Y>s*t~>
-df0<^r;ZhiJc>c6+Q`Y)+Qngc!'oWG!+>Bt!T+aY!!%e*s8Ds!?iZgMs+13Xrr?a/!!%N/rrCsP
-!!'e2rrA\f!!$E`rr>=M!!$DXs+13VrrBh4!!&Y>s*t~>
-df0<^r;ZhiJc>c6+Q`Y)+Qngc!'oWG!+>Bt!T+aY!!%e*s8Ds!?iZgMs+13Xrr?a/!!%N/rrCsP
-!!'e2rrA\f!!$E`rr>=M!!$DXs+13VrrBh4!!&Y>s*t~>
-df0<^r;ZhiJc>fOmm-(:!D)[>rr>=G!!$EsrrKkGlMpomJcGZJ!al##JcC<$[Jp4Dq>^NIir9!4
-q>^M/qu6Ygq>^M'hZ!R@lMpomJcC<$Zi:$?r;Zhidf4g~>
-df0<^r;ZhiJc>fOmm-(:!D)[>rr>=G!!$EsrrKkGlMpomJcGZJ!al##JcC<$[Jp4Dq>^NIir9!4
-q>^M/qu6Ygq>^M'hZ!R@lMpomJcC<$Zi:$?r;Zhidf4g~>
-df0<^r;ZhiJc>fOmm-(:!D)[>rr>=G!!$EsrrKkGlMpomJcGZJ!al##JcC<$[Jp4Dq>^NIir9!4
-q>^M/qu6Ygq>^M'hZ!R@lMpomJcC<$Zi:$?r;Zhidf4g~>
-df0<^r;ZhiJcG`L!.X86!.Tt-!'oWG!+><r!TuH1!!*Y'JcGWI!al##JcC<$[f6?Bq>^L<iVrn-
-q>^L4qu6Ygq>^M'hZ!R@lMpomJcC<$Zi:$?r;Zhidf4g~>
-df0<^r;ZhiJcG`L!.X86!.Tt-!'oWG!+><r!TuH1!!*Y'JcGWI!al##JcC<$[f6?Bq>^L<iVrn-
-q>^L4qu6Ygq>^M'hZ!R@lMpomJcC<$Zi:$?r;Zhidf4g~>
-df0<^r;ZhiJcG`L!.X86!.Tt-!'oWG!+><r!TuH1!!*Y'JcGWI!al##JcC<$[f6?Bq>^L<iVrn-
-q>^L4qu6Ygq>^M'hZ!R@lMpomJcC<$Zi:$?r;Zhidf4g~>
-df0<^r;ZhiJcG]K!RG0A!!,pBMuNcBjT#9gmf*93n,NJKf7EturrQR.T7R#ns0hq-B_h]/GiAZ&
-fD,CH^\n*3TDANf@,Cn`5jJCM@"J?/s0M_*^\n-4T@3ai~>
-df0<^r;ZhiJcG]K!RG0A!!,pBMuNcBjT#9gmf*93n,NJKf7EturrQR.T7R#ns0hq-B_h]/GiAZ&
-fD,CH^\n*3TDANf@,Cn`5jJCM@"J?/s0M_*^\n-4T@3ai~>
-df0<^r;ZhiJcG]K!RG0A!!,pBMuNcBjT#9gmf*93n,NJKf7EturrQR.T7R#ns0hq-B_h]/GiAZ&
-fD,CH^\n*3TDANf@,Cn`5jJCM@"J?/s0M_*^\n-4T@3ai~>
-df0<^r;ZhiJcGWI!oIB.oDeq(=O2j(!2&A&!3bei!p>Ump&G.*BZG](q#:D'!2"iBJcE1Y!13P3
-!8$0/!/LE#!5JI3!71Lk!3b8Z!2&S,!3^tRJcE(V!5JI4!2%^>J,~>
-df0<^r;ZhiJcGWI!oIB.oDeq(=O2j(!2&A&!3bei!p>Ump&G.*BZG](q#:D'!2"iBJcE1Y!13P3
-!8$0/!/LE#!5JI3!71Lk!3b8Z!2&S,!3^tRJcE(V!5JI4!2%^>J,~>
-df0<^r;ZhiJcGWI!oIB.oDeq(=O2j(!2&A&!3bei!p>Ump&G.*BZG](q#:D'!2"iBJcE1Y!13P3
-!8$0/!/LE#!5JI3!71Lk!3b8Z!2&S,!3^tRJcE(V!5JI4!2%^>J,~>
-df0<^r;ZhiJcGNF%,[[Z5X7:/+@&1gO3`CWdJj=#It(T!5lZ<6Vh+m@rrQR.T7R#ns+13$s+13$
-s6Tac^\n-4T@3ai~>
-df0<^r;ZhiJcGNF%,[[Z5X7:/+@&1gO3`CWdJj=#It(T!5lZ<6Vh+m@rrQR.T7R#ns+13$s+13$
-s6Tac^\n-4T@3ai~>
-df0<^r;ZhiJcGNF%,[[Z5X7:/+@&1gO3`CWdJj=#It(T!5lZ<6Vh+m@rrQR.T7R#ns+13$s+13$
-s6Tac^\n-4T@3ai~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<Rr;ZhAJ\QcNJ\S"q!_<<8J\QcNJ\QcNJ\QcNm(WO]r;ZhZdf4g~>
-df0<Rr;ZhAJ\QcNJ\S"q!_<<8J\QcNJ\QcNJ\QcNm(WO]r;ZhZdf4g~>
-df0<Rr;ZhAJ\QcNJ\S"q!_<<8J\QcNJ\QcNJ\QcNm(WO]r;ZhZdf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$SGrR3qZ$U]JcC<$JcFF'!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$SGrR3qZ$U]JcC<$JcFF'!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$SGrR3qZ$U]JcC<$JcFF'!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$\Gl[*^V@hRrr=2=!!#98s+13$s4RDP^\n-4T@3ai~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$\Gl[*^V@hRrr=2=!!#98s+13$s4RDP^\n-4T@3ai~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$\Gl[*^V@hRrr=2=!!#98s+13$s4RDP^\n-4T@3ai~>
-df0<^r;ZhiMZ3\&r-n^-g]%9"r-n^-JcGNF!71Rm!0?CE!8lbM!8!Y=!al##JcC<$^Ae;mO%;P2
-!!>2OLVN?Y!$M.=!'l,8JcC<$g&D&er;Zhidf4g~>
-df0<^r;ZhiMZ3\&r-n^-g]%9"r-n^-JcGNF!71Rm!0?CE!8lbM!8!Y=!al##JcC<$^Ae;mO%;P2
-!!>2OLVN?Y!$M.=!'l,8JcC<$g&D&er;Zhidf4g~>
-df0<^r;ZhiMZ3\&r-n^-g]%9"r-n^-JcGNF!71Rm!0?CE!8lbM!8!Y=!al##JcC<$^Ae;mO%;P2
-!!>2OLVN?Y!$M.=!'l,8JcC<$g&D&er;Zhidf4g~>
-df0<^r;ZhiMZ3[3qu?^>g]%8/qu?^>JcGNF!/LIP!$LP+!.Wr-!+;5p!al##JcC<$_>aS_GUW"\
-!]Ytuo`"n6qZ$U]JcC<$JcFF'!5JI4!2%^>J,~>
-df0<^r;ZhiMZ3[3qu?^>g]%8/qu?^>JcGNF!/LIP!$LP+!.Wr-!+;5p!al##JcC<$_>aS_GUW"\
-!]Ytuo`"n6qZ$U]JcC<$JcFF'!5JI4!2%^>J,~>
-df0<^r;ZhiMZ3[3qu?^>g]%8/qu?^>JcGNF!/LIP!$LP+!.Wr-!+;5p!al##JcC<$_>aS_GUW"\
-!]Ytuo`"n6qZ$U]JcC<$JcFF'!5JI4!2%^>J,~>
-df0<^r;ZhiMZ3ZYqu?^>g]%7Uqu?^>JcGNF!*K.!!$LP+!.Wr-!+;5p!al##JcC<$_uBbh8Eg*T
-8>l1]!$M.=!'l,8JcC<$g&D&er;Zhidf4g~>
-df0<^r;ZhiMZ3ZYqu?^>g]%7Uqu?^>JcGNF!*K.!!$LP+!.Wr-!+;5p!al##JcC<$_uBbh8Eg*T
-8>l1]!$M.=!'l,8JcC<$g&D&er;Zhidf4g~>
-df0<^r;ZhiMZ3ZYqu?^>g]%7Uqu?^>JcGNF!*K.!!$LP+!.Wr-!+;5p!al##JcC<$_uBbh8Eg*T
-8>l1]!$M.=!'l,8JcC<$g&D&er;Zhidf4g~>
-df0<^r;ZhiMZ3Ynqu?^>g]%6jqu?^>JcGNF!#YV6!$LP+!.Wr-!+;5p!al##JcC<$`W#u%B]T3p
-+J8H/!$M.=!'l,8JcC<$g&D&er;Zhidf4g~>
-df0<^r;ZhiMZ3Ynqu?^>g]%6jqu?^>JcGNF!#YV6!$LP+!.Wr-!+;5p!al##JcC<$`W#u%B]T3p
-+J8H/!$M.=!'l,8JcC<$g&D&er;Zhidf4g~>
-df0<^r;ZhiMZ3Ynqu?^>g]%6jqu?^>JcGNF!#YV6!$LP+!.Wr-!+;5p!al##JcC<$`W#u%B]T3p
-+J8H/!$M.=!'l,8JcC<$g&D&er;Zhidf4g~>
-df0<^r;ZhiMuNdlqZ$U=h#@AhqZ$U=JcGQG!5JC2!$LP+!.Wr-!+;5p!al##JcC<$`r?(#&E3Zj
-+K,)9!$M.=!'l,8JcC<$g&D&er;Zhidf4g~>
-df0<^r;ZhiMuNdlqZ$U=h#@AhqZ$U=JcGQG!5JC2!$LP+!.Wr-!+;5p!al##JcC<$`r?(#&E3Zj
-+K,)9!$M.=!'l,8JcC<$g&D&er;Zhidf4g~>
-df0<^r;ZhiMuNdlqZ$U=h#@AhqZ$U=JcGQG!5JC2!$LP+!.Wr-!+;5p!al##JcC<$`r?(#&E3Zj
-+K,)9!$M.=!'l,8JcC<$g&D&er;Zhidf4g~>
-df0<^r;ZhiN;iqQ0`(hM+Pm%upFuIE!$HjmqYpTj0`(hM+R/n+J)LA-@%%#r?iZgMs+13jrr@#q
-!!"/<rr=2=!!#98s+13$s4RDP^\n-4T@3ai~>
-df0<^r;ZhiN;iqQ0`(hM+Pm%upFuIE!$HjmqYpTj0`(hM+R/n+J)LA-@%%#r?iZgMs+13jrr@#q
-!!"/<rr=2=!!#98s+13$s4RDP^\n-4T@3ai~>
-df0<^r;ZhiN;iqQ0`(hM+Pm%upFuIE!$HjmqYpTj0`(hM+R/n+J)LA-@%%#r?iZgMs+13jrr@#q
-!!"/<rr=2=!!#98s+13$s4RDP^\n-4T@3ai~>
-df0<^r;ZhiNW0%R=S`!t+Q!,!pK77l!$Hjmqu6]k=S`!t+R/n+J)LA-@%%#r?iZgMs+13lrrMk%
-o)K"45Yur45X5VI!!"/<rr=2=!!#98s+13$s4RDP^\n-4T@3ai~>
-df0<^r;ZhiNW0%R=S`!t+Q!,!pK77l!$Hjmqu6]k=S`!t+R/n+J)LA-@%%#r?iZgMs+13lrrMk%
-o)K"45Yur45X5VI!!"/<rr=2=!!#98s+13$s4RDP^\n-4T@3ai~>
-df0<^r;ZhiNW0%R=S`!t+Q!,!pK77l!$Hjmqu6]k=S`!t+R/n+J)LA-@%%#r?iZgMs+13lrrMk%
-o)K"45Yur45X5VI!!"/<rr=2=!!#98s+13$s4RDP^\n-4T@3ai~>
-df0<^r;ZhiNrK-`./<iC+Q*2"Y:02H!$Hjmr;Qf$./<iC+R/n+J,0-F.-WtsLRJ/D?iZgMs+13m
-rrMjbp&G1+@'B>#rrUfE3;3CQ+Su*<+Su-=5_8rds+14'rrBh4!!&Y>s*t~>
-df0<^r;ZhiNrK-`./<iC+Q*2"Y:02H!$Hjmr;Qf$./<iC+R/n+J,0-F.-WtsLRJ/D?iZgMs+13m
-rrMjbp&G1+@'B>#rrUfE3;3CQ+Su*<+Su-=5_8rds+14'rrBh4!!&Y>s*t~>
-df0<^r;ZhiNrK-`./<iC+Q*2"Y:02H!$Hjmr;Qf$./<iC+R/n+J,0-F.-WtsLRJ/D?iZgMs+13m
-rrMjbp&G1+@'B>#rrUfE3;3CQ+Su*<+Su-=5_8rds+14'rrBh4!!&Y>s*t~>
-df0<^r;ZhiPQ(dK^SbH^pAb19jSoAG^SbH^pAb19Jc>l9^SbH^pAb19l2La5q>^MfJc>iP?iZgM
-s+13mrr?0q!!*Y'o)AdCBF+G7!$M.<!$M.=!'l,8JcC<$g&D&er;Zhidf4g~>
-df0<^r;ZhiPQ(dK^SbH^pAb19jSoAG^SbH^pAb19Jc>l9^SbH^pAb19l2La5q>^MfJc>iP?iZgM
-s+13mrr?0q!!*Y'o)AdCBF+G7!$M.<!$M.=!'l,8JcC<$g&D&er;Zhidf4g~>
-df0<^r;ZhiPQ(dK^SbH^pAb19jSoAG^SbH^pAb19Jc>l9^SbH^pAb19l2La5q>^MfJc>iP?iZgM
-s+13mrr?0q!!*Y'o)AdCBF+G7!$M.<!$M.=!'l,8JcC<$g&D&er;Zhidf4g~>
-df0<^r;ZhiQN$qMn,NG2kPkNIn,NG2K`;$;n,NG2l2La5q>^MfJc>iP?iZgMs+13nrrA\c!!-Kr
-n,EIXNtD3h!$M.<!$M.=!'l,8JcC<$g&D&er;Zhidf4g~>
-df0<^r;ZhiQN$qMn,NG2kPkNIn,NG2K`;$;n,NG2l2La5q>^MfJc>iP?iZgMs+13nrrA\c!!-Kr
-n,EIXNtD3h!$M.<!$M.=!'l,8JcC<$g&D&er;Zhidf4g~>
-df0<^r;ZhiQN$qMn,NG2kPkNIn,NG2K`;$;n,NG2l2La5q>^MfJc>iP?iZgMs+13nrrA\c!!-Kr
-n,EIXNtD3h!$M.<!$M.=!'l,8JcC<$g&D&er;Zhidf4g~>
-df0<^r;ZhiQN$qMn,NG2kPkNIn,NG2K`;$;n,NG2l2La5q>^MfJc>iP?iZgMs+13orrM!_q#CF$
-\*O%pk?.Z_!$M.<!$M.=!'l,8JcC<$g&D&er;Zhidf4g~>
-df0<^r;ZhiQN$qMn,NG2kPkNIn,NG2K`;$;n,NG2l2La5q>^MfJc>iP?iZgMs+13orrM!_q#CF$
-\*O%pk?.Z_!$M.<!$M.=!'l,8JcC<$g&D&er;Zhidf4g~>
-df0<^r;ZhiQN$qMn,NG2kPkNIn,NG2K`;$;n,NG2l2La5q>^MfJc>iP?iZgMs+13orrM!_q#CF$
-\*O%pk?.Z_!$M.<!$M.=!'l,8JcC<$g&D&er;Zhidf4g~>
-df0<^r;ZhiQN$qMn,NG2kPkNIn,NG2K`;$;n,NG2l2La5q>^MfJc>iP?iZgMs+13prrMjRq#CF$
-\*3hpT*PDs+Su*<+Su-=5_8rds+14'rrBh4!!&Y>s*t~>
-df0<^r;ZhiQN$qMn,NG2kPkNIn,NG2K`;$;n,NG2l2La5q>^MfJc>iP?iZgMs+13prrMjRq#CF$
-\*3hpT*PDs+Su*<+Su-=5_8rds+14'rrBh4!!&Y>s*t~>
-df0<^r;ZhiQN$qMn,NG2kPkNIn,NG2K`;$;n,NG2l2La5q>^MfJc>iP?iZgMs+13prrMjRq#CF$
-\*3hpT*PDs+Su*<+Su-=5_8rds+14'rrBh4!!&Y>s*t~>
-df0<^r;ZhiQN$qMn,NG2kPkNIn,NG2K`;$;n,NG2l2La5q>^MfJc>iP?iZgMs+13prr@QE!!*A7
-k5PP0+93P\rr=2=!!#98s+13$s4RDP^\n-4T@3ai~>
-df0<^r;ZhiQN$qMn,NG2kPkNIn,NG2K`;$;n,NG2l2La5q>^MfJc>iP?iZgMs+13prr@QE!!*A7
-k5PP0+93P\rr=2=!!#98s+13$s4RDP^\n-4T@3ai~>
-df0<^r;ZhiQN$qMn,NG2kPkNIn,NG2K`;$;n,NG2l2La5q>^MfJc>iP?iZgMs+13prr@QE!!*A7
-k5PP0+93P\rr=2=!!#98s+13$s4RDP^\n-4T@3ai~>
-df0<^r;ZhiQN$qMn,NG2kPkNIn,NG2K`;$;n,NG2l2La5q>^MfJc>iP?iZgMs+13qrrMj*q#CDU
-jSo;E3$A(t!$M.=!'l,8JcC<$g&D&er;Zhidf4g~>
-df0<^r;ZhiQN$qMn,NG2kPkNIn,NG2K`;$;n,NG2l2La5q>^MfJc>iP?iZgMs+13qrrMj*q#CDU
-jSo;E3$A(t!$M.=!'l,8JcC<$g&D&er;Zhidf4g~>
-df0<^r;ZhiQN$qMn,NG2kPkNIn,NG2K`;$;n,NG2l2La5q>^MfJc>iP?iZgMs+13qrrMj*q#CDU
-jSo;E3$A(t!$M.=!'l,8JcC<$g&D&er;Zhidf4g~>
-df0<^r;ZhiQN$rWpO</SqZ$U=kPkOSpO</SqZ$U=K`;%EpO</SqZ$U=l2La5q>^MfJc>iP?iZgM
-s+13qrrA,U!!#"<rrMk\qYpO<qZ$U]l2LhJ^X(R4!nY3Uhu<c0^[HaRJcE^h!5JI4!2%^>J,~>
-df0<^r;ZhiQN$rWpO</SqZ$U=kPkOSpO</SqZ$U=K`;%EpO</SqZ$U=l2La5q>^MfJc>iP?iZgM
-s+13qrrA,U!!#"<rrMk\qYpO<qZ$U]l2LhJ^X(R4!nY3Uhu<c0^[HaRJcE^h!5JI4!2%^>J,~>
-df0<^r;ZhiQN$rWpO</SqZ$U=kPkOSpO</SqZ$U=K`;%EpO</SqZ$U=l2La5q>^MfJc>iP?iZgM
-s+13qrrA,U!!#"<rrMk\qYpO<qZ$U]l2LhJ^X(R4!nY3Uhu<c0^[HaRJcE^h!5JI4!2%^>J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XhF!2"iB"92a/T7R#ns3CWE)#=45
-#g_3(!$M.=!'p,T#3WIFIm?7Qq#CO?5]E@ak5PP(Io%!Y!!F]HJ%+n5rr^;k:`0$/"=R)r\*nnJ
-JcEso!5JI4!2%^>J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XhF!2"iB"92a/T7R#ns3CWE)#=45
-#g_3(!$M.=!'p,T#3WIFIm?7Qq#CO?5]E@ak5PP(Io%!Y!!F]HJ%+n5rr^;k:`0$/"=R)r\*nnJ
-JcEso!5JI4!2%^>J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XhF!2"iB"92a/T7R#ns3CWE)#=45
-#g_3(!$M.=!'p,T#3WIFIm?7Qq#CO?5]E@ak5PP(Io%!Y!!F]HJ%+n5rr^;k:`0$/"=R)r\*nnJ
-JcEso!5JI4!2%^>J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XhF!2"iB"92a/T7R#ns3L]FYPA.u
-E7k0j+Su-=5kb3[hj7F^m/R/`\*O%qkD(2M!!5EHht$dKkD(2M!!5EHhgtfYs3L]F^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XhF!2"iB"92a/T7R#ns3L]FYPA.u
-E7k0j+Su-=5kb3[hj7F^m/R/`\*O%qkD(2M!!5EHht$dKkD(2M!!5EHhgtfYs3L]F^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XhF!2"iB"92a/T7R#ns3L]FYPA.u
-E7k0j+Su-=5kb3[hj7F^m/R/`\*O%qkD(2M!!5EHht$dKkD(2M!!5EHhgtfYs3L]F^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XhF!2"iB"92a/T7R#ns3L]F0_k\K
-f@^*'+Su-=5kb3XJ*6k5;!79H!M9qi!!,X"p&>&b&F9At8@O0MJcF-t!5JI4!2%^>J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XhF!2"iB"92a/T7R#ns3L]F0_k\K
-f@^*'+Su-=5kb3XJ*6k5;!79H!M9qi!!,X"p&>&b&F9At8@O0MJcF-t!5JI4!2%^>J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XhF!2"iB"92a/T7R#ns3L]F0_k\K
-f@^*'+Su-=5kb3XJ*6k5;!79H!M9qi!!,X"p&>&b&F9At8@O0MJcF-t!5JI4!2%^>J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XhF!2"iB"92a/T7R#ns3UcGkP5)X
-5hH#9+Su-=5kb3XJ*-e4#e0@(!UiSC!!'e/rrMRZkPtUtJcC<$df0<^r;Zhidf4g~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XhF!2"iB"92a/T7R#ns3UcGkP5)X
-5hH#9+Su-=5kb3XJ*-e4#e0@(!UiSC!!'e/rrMRZkPtUtJcC<$df0<^r;Zhidf4g~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XhF!2"iB"92a/T7R#ns3UcGkP5)X
-5hH#9+Su-=5kb3XJ*-e4#e0@(!UiSC!!'e/rrMRZkPtUtJcC<$df0<^r;Zhidf4g~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XhF!2"iB"92a/T7R#ns3UcGYPA.u
-Vq:qK+Su-=5kb3XJ*$_3#e0F*!Uh`*!!'e0rrMRBk5YLsJcC<$df0<^r;Zhidf4g~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XhF!2"iB"92a/T7R#ns3UcGYPA.u
-Vq:qK+Su-=5kb3XJ*$_3#e0F*!Uh`*!!'e0rrMRBk5YLsJcC<$df0<^r;Zhidf4g~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XhF!2"iB"92a/T7R#ns3UcGYPA.u
-Vq:qK+Su-=5kb3XJ*$_3#e0F*!Uh`*!!'e0rrMRBk5YLsJcC<$df0<^r;Zhidf4g~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XhF!2"iB"92a/T7R#ns3UcGE;BP8
-&GOfV!$M.=!'p8X!.X)1!=6a=rrMjJjo>CrqYpTj0]i?8^OcE9s3goI^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XhF!2"iB"92a/T7R#ns3UcGE;BP8
-&GOfV!$M.=!'p8X!.X)1!=6a=rrMjJjo>CrqYpTj0]i?8^OcE9s3goI^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XhF!2"iB"92a/T7R#ns3UcGE;BP8
-&GOfV!$M.=!'p8X!.X)1!=6a=rrMjJjo>CrqYpTj0]i?8^OcE9s3goI^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XhF!2"iB"92a/T7R#ns3UcG5l(H\
-5h>r8+Su-=5kb3XJ+s!F&3recJ,_b60_PJH0_PGGJ+ipK:k*u0^ScR23;<IR^\[s1J+ipK:k*u0
-^ScR23;<IR^OcE9s3goI^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XhF!2"iB"92a/T7R#ns3UcG5l(H\
-5h>r8+Su-=5kb3XJ+s!F&3recJ,_b60_PJH0_PGGJ+ipK:k*u0^ScR23;<IR^\[s1J+ipK:k*u0
-^ScR23;<IR^OcE9s3goI^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XhF!2"iB"92a/T7R#ns3UcG5l(H\
-5h>r8+Su-=5kb3XJ+s!F&3recJ,_b60_PJH0_PGGJ+ipK:k*u0^ScR23;<IR^\[s1J+ipK:k*u0
-^ScR23;<IR^OcE9s3goI^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XhF!2"iB"92a/T7R#ns3^iIpB^Tq
-!-m)p!$M.=!'p8X!.XnH"#u(Nn+cnahiB2\!!'4srrM!_q>^R.Gi/;r!q3=#qZ$W2qu6]S#l4N&
-&:!+-rrVYm@/Bp(^OcE9s3goI^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XhF!2"iB"92a/T7R#ns3^iIpB^Tq
-!-m)p!$M.=!'p8X!.XnH"#u(Nn+cnahiB2\!!'4srrM!_q>^R.Gi/;r!q3=#qZ$W2qu6]S#l4N&
-&:!+-rrVYm@/Bp(^OcE9s3goI^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XhF!2"iB"92a/T7R#ns3^iIpB^Tq
-!-m)p!$M.=!'p8X!.XnH"#u(Nn+cnahiB2\!!'4srrM!_q>^R.Gi/;r!q3=#qZ$W2qu6]S#l4N&
-&:!+-rrVYm@/Bp(^OcE9s3goI^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XhF!M@F.^B!/KrrQR.T7R#ns3^iH
-chRP@YL`^R+Su-=5kb3]IfKIFVsj0U!N-5"!!#:Yrr?a/!!*YWoD\mTGS'iS!5JF2!,23/!>*TK
-rrVA.&H2Y0^OcE9s3goI^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XhF!M@F.^B!/KrrQR.T7R#ns3^iH
-chRP@YL`^R+Su-=5kb3]IfKIFVsj0U!N-5"!!#:Yrr?a/!!*YWoD\mTGS'iS!5JF2!,23/!>*TK
-rrVA.&H2Y0^OcE9s3goI^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XhF!M@F.^B!/KrrQR.T7R#ns3^iH
-chRP@YL`^R+Su-=5kb3]IfKIFVsj0U!N-5"!!#:Yrr?a/!!*YWoD\mTGS'iS!5JF2!,23/!>*TK
-rrVA.&H2Y0^OcE9s3goI^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XD:!]X;[NrK/g!2"iBJcF-t!2'&e
-!9_r5!$M.=!'p8X!l()bmJd0iq#CE`q#:=2qZ$X.cg^r;mpH+q^\e$2)#F:6&C9kG"Rf^u!5F*b
-JcF0u!5JI4!2%^>J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XD:!]X;[NrK/g!2"iBJcF-t!2'&e
-!9_r5!$M.=!'p8X!l()bmJd0iq#CE`q#:=2qZ$X.cg^r;mpH+q^\e$2)#F:6&C9kG"Rf^u!5F*b
-JcF0u!5JI4!2%^>J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XD:!]X;[NrK/g!2"iBJcF-t!2'&e
-!9_r5!$M.=!'p8X!l()bmJd0iq#CE`q#:=2qZ$X.cg^r;mpH+q^\e$2)#F:6&C9kG"Rf^u!5F*b
-JcF0u!5JI4!2%^>J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.X;7!Z5n>OoGJj!2"iBJcF-t!13N^
-!#X8d!$M.=!'oE@!,23/!2oYm!5J@1!*JXg!k0#]r;Qc3q>^LtmJd6s(r(Y%JcF0u!5JI4!2%^>
-J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.X;7!Z5n>OoGJj!2"iBJcF-t!13N^
-!#X8d!$M.=!'oE@!,23/!2oYm!5J@1!*JXg!k0#]r;Qc3q>^LtmJd6s(r(Y%JcF0u!5JI4!2%^>
-J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.X;7!Z5n>OoGJj!2"iBJcF-t!13N^
-!#X8d!$M.=!'oE@!,23/!2oYm!5J@1!*JXg!k0#]r;Qc3q>^LtmJd6s(r(Y%JcF0u!5JI4!2%^>
-J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.X55!>(<TrrQR.T7R#ns3^iHJ,0-F
-0\-1'+Su-=5i2M@a8,c9B_hZ.Qhg[^O6loHn,31cQhg[^O6loHmt(Lis3goI^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.X55!>(<TrrQR.T7R#ns3^iHJ,0-F
-0\-1'+Su-=5i2M@a8,c9B_hZ.Qhg[^O6loHn,31cQhg[^O6loHmt(Lis3goI^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.X55!>(<TrrQR.T7R#ns3^iHJ,0-F
-0\-1'+Su-=5i2M@a8,c9B_hZ.Qhg[^O6loHn,31cQhg[^O6loHmt(Lis3goI^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.X/3!@ZiirrQR.T7R#ns3^iHE;BP7
-5h5l7+Su-=5i)G?)#F:5=S_ssJ,0-Fa6!=$J,0-Fa+=8As1A:2^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.X/3!@ZiirrQR.T7R#ns3^iHE;BP7
-5h5l7+Su-=5i)G?)#F:5=S_ssJ,0-Fa6!=$J,0-Fa+=8As1A:2^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.X/3!@ZiirrQR.T7R#ns3^iHE;BP7
-5h5l7+Su-=5i)G?)#F:5=S_ssJ,0-Fa6!=$J,0-Fa+=8As1A:2^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.X,2!?g9brrQR.T7R#ns3^iH@/9j'
-=OmEO+Su-=5i)G?3;W[U5l(E[@/9j'YN>ca@/9j'YCZ_)s1A:2^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.X,2!?g9brrQR.T7R#ns3^iH@/9j'
-=OmEO+Su-=5i)G?3;W[U5l(E[@/9j'YN>ca@/9j'YCZ_)s1A:2^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.X,2!?g9brrQR.T7R#ns3^iH@/9j'
-=OmEO+Su-=5i)G?3;W[U5l(E[@/9j'YN>ca@/9j'YCZ_)s1A:2^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.X)1!?g9crrQR.T7R#ns3^iH8GW;d
-@+G8W+Su-=5i)G?5l1N]0_t_KL\^uNLZSO9L\^uNLOoJVs1A:2^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.X)1!?g9crrQR.T7R#ns3^iH8GW;d
-@+G8W+Su-=5i)G?5l1N]0_t_KL\^uNLZSO9L\^uNLOoJVs1A:2^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.X)1!?g9crrQR.T7R#ns3^iH8GW;d
-@+G8W+Su-=5i)G?5l1N]0_t_KL\^uNLZSO9L\^uNLOoJVs1A:2^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XnH!"f,prI4l>5T'+n!AO87rrQR.
-T7R#ns3^iH5l(H\Gh)fo+Su-=5i)G?5l1N]+Sl$;VtpAo./2m(!2oYn!@[\ns+13_rrBh4!!&Y>
-s*t~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XnH!"f,prI4l>5T'+n!AO87rrQR.
-T7R#ns3^iH5l(H\Gh)fo+Su-=5i)G?5l1N]+Sl$;VtpAo./2m(!2oYn!@[\ns+13_rrBh4!!&Y>
-s*t~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.XnH!"f,prI4l>5T'+n!AO87rrQR.
-T7R#ns3^iH5l(H\Gh)fo+Su-=5i)G?5l1N]+Sl$;VtpAo./2m(!2oYn!@[\ns+13_rrBh4!!&Y>
-s*t~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=f)Ga=e:.J5e,KCjqZ$U=l2LmY8:Rhho`#!=BGgID!/Hp@
-!al##JcC<$dJj23q>^MFec,UlqZ$U]jSo5SrkJG^!$M.=!$M+;!71H@!-%*#!71H@!-!MhJcEC_
-!5JI4!2%^>J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=f)Ga=e:.J5e,KCjqZ$U=l2LmY8:Rhho`#!=BGgID!/Hp@
-!al##JcC<$dJj23q>^MFec,UlqZ$U]jSo5SrkJG^!$M.=!$M+;!71H@!-%*#!71H@!-!MhJcEC_
-!5JI4!2%^>J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=f)Ga=e:.J5e,KCjqZ$U=l2LmY8:Rhho`#!=BGgID!/Hp@
-!al##JcC<$dJj23q>^MFec,UlqZ$U]jSo5SrkJG^!$M.=!$M+;!71H@!-%*#!71H@!-!MhJcEC_
-!5JI4!2%^>J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=f)Ga-e,TJue,KCjqZ$U=ec,[=@/'^&#iD$L!al##JcC<$
-dJj2;q>^M'ec,UlqZ$U]li..G[spq6+S#L4+Sl$<pB^Qp!D)D;rrMj"q#CFdkCNYas1\L5^\n-4
-T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=f)Ga-e,TJue,KCjqZ$U=ec,[=@/'^&#iD$L!al##JcC<$
-dJj2;q>^M'ec,UlqZ$U]li..G[spq6+S#L4+Sl$<pB^Qp!D)D;rrMj"q#CFdkCNYas1\L5^\n-4
-T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=f)Ga-e,TJue,KCjqZ$U=ec,[=@/'^&#iD$L!al##JcC<$
-dJj2;q>^M'ec,UlqZ$U]li..G[spq6+S#L4+Sl$<pB^Qp!D)D;rrMj"q#CFdkCNYas1\L5^\n-4
-T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=f)Ga-e,TJue,KCjqZ$U=e,KE?p](;5R/[4q!2"iBJcF-t
-!+>X'!+=@W!$M.=!'p#Q"6Z"A&F9As+Sbs:E;0D7&7D^+rr@$5!!3^>YCZ_)s1nX7^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=f)Ga-e,TJue,KCjqZ$U=e,KE?p](;5R/[4q!2"iBJcF-t
-!+>X'!+=@W!$M.=!'p#Q"6Z"A&F9As+Sbs:E;0D7&7D^+rr@$5!!3^>YCZ_)s1nX7^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=f)Ga-e,TJue,KCjqZ$U=e,KE?p](;5R/[4q!2"iBJcF-t
-!+>X'!+=@W!$M.=!'p#Q"6Z"A&F9As+Sbs:E;0D7&7D^+rr@$5!!3^>YCZ_)s1nX7^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=f)Ga-e,TJue,KCjqZ$U=df0<>q#CC;R/[4q!2"iBJcF-t
-!,23/!'o*7!$M.=!'p,T!r&<XkPtT*q#:BX#ke6#(f6".mJd4M#ke6#(f6".JcC<$`;]hPr;Zhi
-df4g~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=f)Ga-e,TJue,KCjqZ$U=df0<>q#CC;R/[4q!2"iBJcF-t
-!,23/!'o*7!$M.=!'p,T!r&<XkPtT*q#:BX#ke6#(f6".mJd4M#ke6#(f6".JcC<$`;]hPr;Zhi
-df4g~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=f)Ga-e,TJue,KCjqZ$U=df0<>q#CC;R/[4q!2"iBJcF-t
-!,23/!'o*7!$M.=!'p,T!r&<XkPtT*q#:BX#ke6#(f6".mJd4M#ke6#(f6".JcC<$`;]hPr;Zhi
-df4g~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=f)Ga-e,TJue,KCjqZ$U=dJj2Cq#CEHRK!=r!2"iBJcF-t
-!.XhF!'&O/!$M.=!'p/U!P^&F!!"/9rr@$.!!>K2YNPHU!-%H."$h+7kCNYas2k9@^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=f)Ga-e,TJue,KCjqZ$U=dJj2Cq#CEHRK!=r!2"iBJcF-t
-!.XhF!'&O/!$M.=!'p/U!P^&F!!"/9rr@$.!!>K2YNPHU!-%H."$h+7kCNYas2k9@^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=f)Ga-e,TJue,KCjqZ$U=dJj2Cq#CEHRK!=r!2"iBJcF-t
-!.XhF!'&O/!$M.=!'p/U!P^&F!!"/9rr@$.!!>K2YNPHU!-%H."$h+7kCNYas2k9@^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=f)Ga-e,TJue,KCjqZ$U=dJj3mq#CDMRK!=r!2"iBJcF-t
-!0?sV!$Khl!$M.=!'p5W!U!kO!!"/9rrMRBmJm;JTD/!X!Uh`1!!5-PpOW?qs31KC^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=f)Ga-e,TJue,KCjqZ$U=dJj3mq#CDMRK!=r!2"iBJcF-t
-!0?sV!$Khl!$M.=!'p5W!U!kO!!"/9rrMRBmJm;JTD/!X!Uh`1!!5-PpOW?qs31KC^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=f)Ga-e,TJue,KCjqZ$U=dJj3mq#CDMRK!=r!2"iBJcF-t
-!0?sV!$Khl!$M.=!'p5W!U!kO!!"/9rrMRBmJm;JTD/!X!Uh`1!!5-PpOW?qs31KC^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=f)Ga-e,TJue,KCjqZ$U=d/O)"q>^LtRK!=r!2"iBJcF-t
-!2'&e!;G(E!$M.=!'p8X!T,$f!<5:c@"0<r!!"/8rrMRZm/R2!@+Y)O!UiSH!!3^>f7EsQs3CWE
-^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=f)Ga-e,TJue,KCjqZ$U=d/O)"q>^LtRK!=r!2"iBJcF-t
-!2'&e!;G(E!$M.=!'p8X!T,$f!<5:c@"0<r!!"/8rrMRZm/R2!@+Y)O!UiSH!!3^>f7EsQs3CWE
-^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=f)Ga-e,TJue,KCjqZ$U=d/O)"q>^LtRK!=r!2"iBJcF-t
-!2'&e!;G(E!$M.=!'p8X!T,$f!<5:c@"0<r!!"/8rrMRZm/R2!@+Y)O!UiSH!!3^>f7EsQs3CWE
-^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$KYg!.XhF!'ltP!al##JcC<$dJj3]q#CE0
-f)G^mqZ$U]p\t9_0_GDL(g)9[^ZYLo!'pD]!$Lt7!V]^_!!*Y/p&>'e=R6"g&>t*ZJcF'r!5JI4
-!2%^>J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$KYg!.XhF!'ltP!al##JcC<$dJj3]q#CE0
-f)G^mqZ$U]p\t9_0_GDL(g)9[^ZYLo!'pD]!$Lt7!V]^_!!*Y/p&>'e=R6"g&>t*ZJcF'r!5JI4
-!2%^>J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$KYg!.XhF!'ltP!al##JcC<$dJj3]q#CE0
-f)G^mqZ$U]p\t9_0_GDL(g)9[^ZYLo!'pD]!$Lt7!V]^_!!*Y/p&>'e=R6"g&>t*ZJcF'r!5JI4
-!2%^>J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$KYg!2')f!$I^0!al##JcC<$dJj4@q#CDE
-f)G^mqZ$U]q#:Bh8G<)c.%fDirr>=]!!"/5rrL/Bli7$)o`"s4=R6"fE.S%?s3UcG^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$KYg!2')f!$I^0!al##JcC<$dJj4@q#CDE
-f)G^mqZ$U]q#:Bh8G<)c.%fDirr>=]!!"/5rrL/Bli7$)o`"s4=R6"fE.S%?s3UcG^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$KYg!2')f!$I^0!al##JcC<$dJj4@q#CDE
-f)G^mqZ$U]q#:Bh8G<)c.%fDirr>=]!!"/5rrL/Bli7$)o`"s4=R6"fE.S%?s3UcG^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$KYg!5J@1!"bRu!al##JcC<$d/O)"q>^Ll
-f)G^mqZ$U]q#:>\p](=S^[hC)5l1N]+S#I5kBIR+!!%!0rrVA.&FKMuE.S%?s3^iH^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$KYg!5J@1!"bRu!al##JcC<$d/O)"q>^Ll
-f)G^mqZ$U]q#:>\p](=S^[hC)5l1N]+S#I5kBIR+!!%!0rrVA.&FKMuE.S%?s3^iH^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$KYg!5J@1!"bRu!al##JcC<$d/O)"q>^Ll
-f)G^mqZ$U]q#:>\p](=S^[hC)5l1N]+S#I5kBIR+!!%!0rrVA.&FKMuE.S%?s3^iH^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$KYg!5J=0RK!=r!2"iBJcF*s!-%c7!"d`]
-!$M.=!'p>Z!&43K!H@f'rr>=]!!"/0rr^l>=;^Q.!7138"4rlA)"@S+c[l+Is3goI^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$KYg!5J=0RK!=r!2"iBJcF*s!-%c7!"d`]
-!$M.=!'p>Z!&43K!H@f'rr>=]!!"/0rr^l>=;^Q.!7138"4rlA)"@S+c[l+Is3goI^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$KYg!5J=0RK!=r!2"iBJcF*s!-%c7!"d`]
-!$M.=!'p>Z!&43K!H@f'rr>=]!!"/0rr^l>=;^Q.!7138"4rlA)"@S+c[l+Is3goI^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$KYg!4Vb(RK!=r!2"iBJcF*s!2oVm!3b#S
-!$M.=!'pA[!71H@!.XJ;!'pD]!$LS,"5g;,0_GDG;!n8bhlh8Yo`+tgJcC<$df0<^r;Zhidf4g~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$KYg!4Vb(RK!=r!2"iBJcF*s!2oVm!3b#S
-!$M.=!'pA[!71H@!.XJ;!'pD]!$LS,"5g;,0_GDG;!n8bhlh8Yo`+tgJcC<$df0<^r;Zhidf4g~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$KYg!4Vb(RK!=r!2"iBJcF*s!2oVm!3b#S
-!$M.=!'pA[!71H@!.XJ;!'pD]!$LS,"5g;,0_GDG;!n8bhlh8Yo`+tgJcC<$df0<^r;Zhidf4g~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$KYg!13N^!#V.(!al##JcC<$d/O+'q#CCS
-fDbgnqZ$U]q>UG.q>^OMp[A+^5l1N]+Qi\*hiBJc!!(@1rrV)=0_YPIc[l+Is3puJ^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$KYg!13N^!#V.(!al##JcC<$d/O+'q#CCS
-fDbgnqZ$U]q>UG.q>^OMp[A+^5l1N]+Qi\*hiBJc!!(@1rrV)=0_YPIc[l+Is3puJ^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$KYg!13N^!#V.(!al##JcC<$d/O+'q#CCS
-fDbgnqZ$U]q>UG.q>^OMp[A+^5l1N]+Qi\*hiBJc!!(@1rrV)=0_YPIc[l+Is3puJ^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$KYg!-n>?!%=98!al##JcC<$ci3tfq#CE@
-f`(poqZ$U]q>UFSq>^N9mf*8PqZ$U=j8T.X)#4.3O6?NDV\o40!0;^2JcF4!!5JI4!2%^>J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$KYg!-n>?!%=98!al##JcC<$ci3tfq#CE@
-f`(poqZ$U]q>UFSq>^N9mf*8PqZ$U=j8T.X)#4.3O6?NDV\o40!0;^2JcF4!!5JI4!2%^>J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$KYg!-n>?!%=98!al##JcC<$ci3tfq#CE@
-f`(poqZ$U]q>UFSq>^N9mf*8PqZ$U=j8T.X)#4.3O6?NDV\o40!0;^2JcF4!!5JI4!2%^>J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$KYg!*K't!'ltP!al##JcC<$ci4!+q#CCs
-f`(poqZ$U]q>UF3q>^Nimf*8PqZ$U=ir9&B&GcA,E9@0$k7IIi!-!MhJcF4!!5JI4!2%^>J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$KYg!*K't!'ltP!al##JcC<$ci4!+q#CCs
-f`(poqZ$U]q>UF3q>^Nimf*8PqZ$U=ir9&B&GcA,E9@0$k7IIi!-!MhJcF4!!5JI4!2%^>J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$KYg!*K't!'ltP!al##JcC<$ci4!+q#CCs
-f`(poqZ$U]q>UF3q>^Nimf*8PqZ$U=ir9&B&GcA,E9@0$k7IIi!-!MhJcF4!!5JI4!2%^>J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$KYg!&46L!+;5p!al##JcC<$ci4%7#l+H#
-^Y/Ve+Su-=5l(HV!!"G7rr>=]!!"/#rrA\f!!#ROrrA\f!!#Q@s+14!rrBh4!!&Y>s*t~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$KYg!&46L!+;5p!al##JcC<$ci4%7#l+H#
-^Y/Ve+Su-=5l(HV!!"G7rr>=]!!"/#rrA\f!!#ROrrA\f!!#Q@s+14!rrBh4!!&Y>s*t~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$KYg!&46L!+;5p!al##JcC<$ci4%7#l+H#
-^Y/Ve+Su-=5l(HV!!"G7rr>=]!!"/#rrA\f!!#ROrrA\f!!#Q@s+14!rrBh4!!&Y>s*t~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$K\h!V[0%!!'3jrrQR.T7R#ns3CWEE;9J7
-+SXmq!2',f!$M.=!'pD\!8mVQ!'orO!'pD]!$L8#!:Taa!%?t/!:Taa!%<EuJcF4!!5JI4!2%^>
-J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$K\h!V[0%!!'3jrrQR.T7R#ns3CWEE;9J7
-+SXmq!2',f!$M.=!'pD\!8mVQ!'orO!'pD]!$L8#!:Taa!%?t/!:Taa!%<EuJcF4!!5JI4!2%^>
-J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$K\h!V[0%!!'3jrrQR.T7R#ns3CWEE;9J7
-+SXmq!2',f!$M.=!'pD\!8mVQ!'orO!'pD]!$L8#!:Taa!%?t/!:Taa!%<EuJcF4!!5JI4!2%^>
-J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$K\h!0?pU!:Q?U!al##JcC<$cMmmrp](;-
-jSo;M80Id/!$M.=!'pD\!8mVQ!%@77!'pD]!$L5"!"f#-!$LA&!"f#-!$HjmJcF4!!5JI4!2%^>
-J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$K\h!0?pU!:Q?U!al##JcC<$cMmmrp](;-
-jSo;M80Id/!$M.=!'pD\!8mVQ!%@77!'pD]!$L5"!"f#-!$LA&!"f#-!$HjmJcF4!!5JI4!2%^>
-J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$K\h!0?pU!:Q?U!al##JcC<$cMmmrp](;-
-jSo;M80Id/!$M.=!'pD\!8mVQ!%@77!'pD]!$L5"!"f#-!$LA&!"f#-!$HjmJcF4!!5JI4!2%^>
-J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$K_i!Tsab!!#!GrrQR.T7R#ns3:QD;"t"j
-TB?.Uk:clYqYpO<qZ$U]qYpQiq#CEhmf*8PqZ$U=q>UHPl2L`+qZ$UMrVllTl2L`+qZ$UMJcC<$
-e,KE_r;Zhidf4g~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$K_i!Tsab!!#!GrrQR.T7R#ns3:QD;"t"j
-TB?.Uk:clYqYpO<qZ$U]qYpQiq#CEhmf*8PqZ$U=q>UHPl2L`+qZ$UMrVllTl2L`+qZ$UMJcC<$
-e,KE_r;Zhidf4g~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$K_i!Tsab!!#!GrrQR.T7R#ns3:QD;"t"j
-TB?.Uk:clYqYpO<qZ$U]qYpQiq#CEhmf*8PqZ$U=q>UHPl2L`+qZ$UMrVllTl2L`+qZ$UMJcC<$
-e,KE_r;Zhidf4g~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LV-!KZF/rr@$6!!&(IrrQR.T7R#ns3:QE
-h[&uW!2&KT"J65*!$M.<!$M.=!'pA[!"eu,!71-6!KRN`!!"/;rrF7'lMghqqZ$U]rVlm@O6Z`F
-&GlG-5_8rds3puJ^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LV-!KZF/rr@$6!!&(IrrQR.T7R#ns3:QE
-h[&uW!2&KT"J65*!$M.<!$M.=!'pA[!"eu,!71-6!KRN`!!"/;rrF7'lMghqqZ$U]rVlm@O6Z`F
-&GlG-5_8rds3puJ^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LV-!KZF/rr@$6!!&(IrrQR.T7R#ns3:QE
-h[&uW!2&KT"J65*!$M.<!$M.=!'pA[!"eu,!71-6!KRN`!!"/;rrF7'lMghqqZ$U]rVlm@O6Z`F
-&GlG-5_8rds3puJ^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LV-"!A/)p[.t]`sDMA!>tQurrQR.T7R#n
-s31KCTD&<cTBlLXk=GOO!$M.<!$M.=!'pA[!'pA\!,1p&!U!#L!!"/;rrXAD=RYYW!8%&I!.XtI
-"!@SGn*U,TfD5IIIt@WNs3puJ^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LV-"!A/)p[.t]`sDMA!>tQurrQR.T7R#n
-s31KCTD&<cTBlLXk=GOO!$M.<!$M.=!'pA[!'pA\!,1p&!U!#L!!"/;rrXAD=RYYW!8%&I!.XtI
-"!@SGn*U,TfD5IIIt@WNs3puJ^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LV-"!A/)p[.t]`sDMA!>tQurrQR.T7R#n
-s31KCTD&<cTBlLXk=GOO!$M.<!$M.=!'pA[!'pA\!,1p&!U!#L!!"/;rrXAD=RYYW!8%&I!.XtI
-"!@SGn*U,TfD5IIIt@WNs3puJ^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LV-"X!dF(jP65rrLFWq#CDMQi@+p!2"iB
-JcEpn!+>O$!EeORrrVA.&GuM.+Su*<+Su-=5l(E[O8/bU^[qI+[h/<7!$M+;"<[[E&=;hb!*K't
-!8%2L"<[[E&=;hb!*K't!7uf%JcF4!!5JI4!2%^>J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LV-"X!dF(jP65rrLFWq#CDMQi@+p!2"iB
-JcEpn!+>O$!EeORrrVA.&GuM.+Su*<+Su-=5l(E[O8/bU^[qI+[h/<7!$M+;"<[[E&=;hb!*K't
-!8%2L"<[[E&=;hb!*K't!7uf%JcF4!!5JI4!2%^>J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LV-"X!dF(jP65rrLFWq#CDMQi@+p!2"iB
-JcEpn!+>O$!EeORrrVA.&GuM.+Su*<+Su-=5l(E[O8/bU^[qI+[h/<7!$M+;"<[[E&=;hb!*K't
-!8%2L"<[[E&=;hb!*K't!7uf%JcF4!!5JI4!2%^>J,~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LV-!$M1>!Eci&rrJGtq#CF,kEl2M?iZgM
-s+13nrrMjBpAb7#L[Xj7!Ol2,!!"/<rr=2=!!#:[rrC[H!!+4WpAY0^@.jR#+Sl$;+T29A+J8,n
-rr?I'!!"_Nrr=2?!!4:8n+-JY@/9j'0S07Ts3goI^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LV-!$M1>!Eci&rrJGtq#CF,kEl2M?iZgM
-s+13nrrMjBpAb7#L[Xj7!Ol2,!!"/<rr=2=!!#:[rrC[H!!+4WpAY0^@.jR#+Sl$;+T29A+J8,n
-rr?I'!!"_Nrr=2?!!4:8n+-JY@/9j'0S07Ts3goI^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LV-!$M1>!Eci&rrJGtq#CF,kEl2M?iZgM
-s+13nrrMjBpAb7#L[Xj7!Ol2,!!"/<rr=2=!!#:[rrC[H!!+4WpAY0^@.jR#+Sl$;+T29A+J8,n
-rr?I'!!"_Nrr=2?!!4:8n+-JY@/9j'0S07Ts3goI^\n-4T@3ai~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LV-!$M+<!si#$kPG2[kFX0s!!'KorrQR.
-T7R#ns2t?Bf,4/\!`56HqYpZd^OI[+!!"/<rr=2=!!#:Zrr>mj!!,pJqYpW+?jQE*!$M+;!$M.=
-!XMo3pAY0>8GN5cYPeD#+Su-?#[";(rrLG:q#CDuJcC<$df0<^r;Zhidf4g~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LV-!$M+<!si#$kPG2[kFX0s!!'KorrQR.
-T7R#ns2t?Bf,4/\!`56HqYpZd^OI[+!!"/<rr=2=!!#:Zrr>mj!!,pJqYpW+?jQE*!$M+;!$M.=
-!XMo3pAY0>8GN5cYPeD#+Su-?#[";(rrLG:q#CDuJcC<$df0<^r;Zhidf4g~>
-df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LV-!$M+<!si#$kPG2[kFX0s!!'KorrQR.
-T7R#ns2t?Bf,4/\!`56HqYpZd^OI[+!!"/<rr=2=!!#:Zrr>mj!!,pJqYpW+?jQE*!$M+;!$M.=
-!XMo3pAY0>8GN5cYPeD#+Su-?#[";(rrLG:q#CDuJcC<$df0<^r;Zhidf4g~>
-df0<^r;ZhiQN$qMjT#9go)A\TjT#9gO8f2FjT#9gpAY+8o`+t7rBL?2o`+uAQ2^nn!2"iBJcEjl
-!T,<r!!"GG5QDqu!!"/<rr=2=!!#:ZrrCC<!!"GH5QE5&!!"/;rr=2:!"'Q.BRdM+^P@;@+SYp:
-;#C7m+SYpD(dMba\%f\5Iomig!!#iHs+13trrBh4!!&Y>s*t~>
-df0<^r;ZhiQN$qMjT#9go)A\TjT#9gO8f2FjT#9gpAY+8o`+t7rBL?2o`+uAQ2^nn!2"iBJcEjl
-!T,<r!!"GG5QDqu!!"/<rr=2=!!#:ZrrCC<!!"GH5QE5&!!"/;rr=2:!"'Q.BRdM+^P@;@+SYp:
-;#C7m+SYpD(dMba\%f\5Iomig!!#iHs+13trrBh4!!&Y>s*t~>
-df0<^r;ZhiQN$qMjT#9go)A\TjT#9gO8f2FjT#9gpAY+8o`+t7rBL?2o`+uAQ2^nn!2"iBJcEjl
-!T,<r!!"GG5QDqu!!"/<rr=2=!!#:ZrrCC<!!"GH5QE5&!!"/;rr=2:!"'Q.BRdM+^P@;@+SYp:
-;#C7m+SYpD(dMba\%f\5Iomig!!#iHs+13trrBh4!!&Y>s*t~>
-df0<^r;ZhiQN$qMjT#9go)A\TjT#9gO8f2FjT#9gpAY+8j8]0VPlCem!2"iBJcEgk!Ui;2!!"/<
-rr=2=!!#:Yrr?`s!<42=!!"/;rr=2'!!+5"qu6X=jT#<(hgtfYs3^iH^\n-4T@3ai~>
-df0<^r;ZhiQN$qMjT#9go)A\TjT#9gO8f2FjT#9gpAY+8j8]0VPlCem!2"iBJcEgk!Ui;2!!"/<
-rr=2=!!#:Yrr?`s!<42=!!"/;rr=2'!!+5"qu6X=jT#<(hgtfYs3^iH^\n-4T@3ai~>
-df0<^r;ZhiQN$qMjT#9go)A\TjT#9gO8f2FjT#9gpAY+8j8]0VPlCem!2"iBJcEgk!Ui;2!!"/<
-rr=2=!!#:Yrr?`s!<42=!!"/;rr=2'!!+5"qu6X=jT#<(hgtfYs3^iH^\n-4T@3ai~>
-df0<^r;ZhiQN$qMjT#9go)A\TjT#9gO8f2FjT#9gpAY+8jT#:"PQ(\l!2"iBJcEdj!V]^T!!,@"
-qYpO<qZ$U]p\t9g39pPG8FJh@!!"/;rr=2(!!+5"qYpO<jo>E)hgtfYs3UcG^\n-4T@3ai~>
-df0<^r;ZhiQN$qMjT#9go)A\TjT#9gO8f2FjT#9gpAY+8jT#:"PQ(\l!2"iBJcEdj!V]^T!!,@"
-qYpO<qZ$U]p\t9g39pPG8FJh@!!"/;rr=2(!!+5"qYpO<jo>E)hgtfYs3UcG^\n-4T@3ai~>
-df0<^r;ZhiQN$qMjT#9go)A\TjT#9gO8f2FjT#9gpAY+8jT#:"PQ(\l!2"iBJcEdj!V]^T!!,@"
-qYpO<qZ$U]p\t9g39pPG8FJh@!!"/;rr=2(!!+5"qYpO<jo>E)hgtfYs3UcG^\n-4T@3ai~>
-df0<^r;ZhiQN$qMjT#9go)A\TjT#9gO8f2FjT#9gpAY+8jo>CJP5bSk!2"iBJcE^h!P^n]!!,X*
-q#:=:qZ$U]pAY0N...'<#`&H[5l1N]+Sl$<GR3L5!C5iDrrI?MkPtWKkCNYas3L]F^\n-4T@3ai~>
-df0<^r;ZhiQN$qMjT#9go)A\TjT#9gO8f2FjT#9gpAY+8jo>CJP5bSk!2"iBJcE^h!P^n]!!,X*
-q#:=:qZ$U]pAY0N...'<#`&H[5l1N]+Sl$<GR3L5!C5iDrrI?MkPtWKkCNYas3L]F^\n-4T@3ai~>
-df0<^r;ZhiQN$qMjT#9go)A\TjT#9gO8f2FjT#9gpAY+8jo>CJP5bSk!2"iBJcE^h!P^n]!!,X*
-q#:=:qZ$U]pAY0N...'<#`&H[5l1N]+Sl$<GR3L5!C5iDrrI?MkPtWKkCNYas3L]F^\n-4T@3ai~>
-df0<^r;ZhiQN$qMjT#9go)A\TjT#9gO8f2FjT#9gpAY3GBFsG/!Dq[9rrQR.T7R#ns24j;Y;#5A
-!YB%spAY+8qZ$U]p&>']3:HnK37n00!'pD]!$M(:!p>%Eli7%lL\C`LkC4'0!!*@\JcC<$c2RdY
-r;Zhidf4g~>
-df0<^r;ZhiQN$qMjT#9go)A\TjT#9gO8f2FjT#9gpAY3GBFsG/!Dq[9rrQR.T7R#ns24j;Y;#5A
-!YB%spAY+8qZ$U]p&>']3:HnK37n00!'pD]!$M(:!p>%Eli7%lL\C`LkC4'0!!*@\JcC<$c2RdY
-r;Zhidf4g~>
-df0<^r;ZhiQN$qMjT#9go)A\TjT#9gO8f2FjT#9gpAY3GBFsG/!Dq[9rrQR.T7R#ns24j;Y;#5A
-!YB%spAY+8qZ$U]p&>']3:HnK37n00!'pD]!$M(:!p>%Eli7%lL\C`LkC4'0!!*@\JcC<$c2RdY
-r;Zhidf4g~>
-df0<^r;ZhiQN$qMjT#9go)A\TjT#9gO8f2FjT#9go`#$fQWOgf!!,X2O8f8h!2"iBJcERd!k2hc
-n,NM4@'B2%!$M.=!'p2V!r%`eoDenOTD\]h5l1N]+SGa9Y@%q3!!4!ekOSWSY@%q3!!4!ekCNYa
-s31KC^\n-4T@3ai~>
-df0<^r;ZhiQN$qMjT#9go)A\TjT#9gO8f2FjT#9go`#$fQWOgf!!,X2O8f8h!2"iBJcERd!k2hc
-n,NM4@'B2%!$M.=!'p2V!r%`eoDenOTD\]h5l1N]+SGa9Y@%q3!!4!ekOSWSY@%q3!!4!ekCNYa
-s31KC^\n-4T@3ai~>
-df0<^r;ZhiQN$qMjT#9go)A\TjT#9gO8f2FjT#9go`#$fQWOgf!!,X2O8f8h!2"iBJcERd!k2hc
-n,NM4@'B2%!$M.=!'p2V!r%`eoDenOTD\]h5l1N]+SGa9Y@%q3!!4!ekOSWSY@%q3!!4!ekCNYa
-s31KC^\n-4T@3ai~>
-df0<^r;ZhiQN$s2jhCfIo)A^9jhCfIO8f4+jhCfInG`U:LKHP1!!<d7TBD46!al##JcC<$^Ae;e
-O%;8*!!=??Qe1a,!6=uO!7169!q210q#CI%@*e]L!71PW!6=[1"2Bn!+SYp=5^9d4mJd:'O'!P"
-!!>K2\+bIRJcEmm!5JI4!2%^>J,~>
-df0<^r;ZhiQN$s2jhCfIo)A^9jhCfIO8f4+jhCfInG`U:LKHP1!!<d7TBD46!al##JcC<$^Ae;e
-O%;8*!!=??Qe1a,!6=uO!7169!q210q#CI%@*e]L!71PW!6=[1"2Bn!+SYp=5^9d4mJd:'O'!P"
-!!>K2\+bIRJcEmm!5JI4!2%^>J,~>
-df0<^r;ZhiQN$s2jhCfIo)A^9jhCfIO8f4+jhCfInG`U:LKHP1!!<d7TBD46!al##JcC<$^Ae;e
-O%;8*!!=??Qe1a,!6=uO!7169!q210q#CI%@*e]L!71PW!6=[1"2Bn!+SYp=5^9d4mJd:'O'!P"
-!!>K2\+bIRJcEmm!5JI4!2%^>J,~>
-df0<^r;ZhiJcC<$V>ghI^V@7-QbU<0M>mWb!2"iBJcE7[!:Tm$!9_c0#Nrk2It+rBf@p6)hu:@j
-kMcF@hu:@jkCNYas2=p;^\n-4T@3ai~>
-df0<^r;ZhiJcC<$V>ghI^V@7-QbU<0M>mWb!2"iBJcE7[!:Tm$!9_c0#Nrk2It+rBf@p6)hu:@j
-kMcF@hu:@jkCNYas2=p;^\n-4T@3ai~>
-df0<^r;ZhiJcC<$V>ghI^V@7-QbU<0M>mWb!2"iBJcE7[!:Tm$!9_c0#Nrk2It+rBf@p6)hu:@j
-kMcF@hu:@jkCNYas2=p;^\n-4T@3ai~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~>
-df0<Rr;ZhAJ\QcNJ\S"q!_<<8J\QcNJ\QcNJ\QcNm(WO]r;ZhZdf4g~>
-df0<Rr;ZhAJ\QcNJ\S"q!_<<8J\QcNJ\QcNJ\QcNm(WO]r;ZhZdf4g~>
-df0<Rr;ZhAJ\QcNJ\S"q!_<<8J\QcNJ\QcNJ\QcNm(WO]r;ZhZdf4g~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<.JH16$JH16$JH16$JH16$JH19%!+XIWJ,~>
-df0<brBC9pJU`6#JUaJF!`qU!JU`6#JU`6#JU`6#m!f"RrBC:\df4g~>
-df0<brBC9pJU`6#JUaJF!`qU!JU`6#JU`6#JU`6#m!f"RrBC:\df4g~>
-df0<brBC9pJU`6#JUaJF!`qU!JU`6#JU`6#JU`6#m!f"RrBC:\df4g~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-%%EndData
-showpage
-%%Trailer
-end
-%%EOF
diff --git a/doc/user/ObjectId-16Bits.png b/doc/user/ObjectId-16Bits.png
deleted file mode 100644
index e65429c858..0000000000
--- a/doc/user/ObjectId-16Bits.png
+++ /dev/null
Binary files differ
diff --git a/doc/user/ObjectId-32Bits.eps b/doc/user/ObjectId-32Bits.eps
deleted file mode 100644
index e0dc79d0b6..0000000000
--- a/doc/user/ObjectId-32Bits.eps
+++ /dev/null
@@ -1,4679 +0,0 @@
-%!PS-Adobe-3.0 EPSF-3.0
-%%Creator: GIMP PostScript file plugin V 1.17 by Peter Kirchgessner
-%%Title: ObjectId-32Bits.eps
-%%CreationDate: Sun Feb 24 10:04:59 2013
-%%DocumentData: Clean7Bit
-%%LanguageLevel: 2
-%%Pages: 1
-%%BoundingBox: 14 14 675 477
-%%EndComments
-%%BeginProlog
-% Use own dictionary to avoid conflicts
-10 dict begin
-%%EndProlog
-%%Page: 1 1
-% Translate for offset
-14.173228346456694 14.173228346456694 translate
-% Translate to begin of first scanline
-0 462.1936767358626 translate
-659.93385826771657 -462.1936767358626 scale
-% Image geometry
-1375 963 8
-% Transformation matrix
-[ 1375 0 0 963 0 0 ]
-% Strings to hold RGB-samples per scanline
-/rstr 1375 string def
-/gstr 1375 string def
-/bstr 1375 string def
-{currentfile /ASCII85Decode filter /RunLengthDecode filter rstr readstring pop}
-{currentfile /ASCII85Decode filter /RunLengthDecode filter gstr readstring pop}
-{currentfile /ASCII85Decode filter /RunLengthDecode filter bstr readstring pop}
-true 3
-%%BeginData: 277700 ASCII Bytes
-colorimage
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-df0;%rX]&FJO"cOJO$"r!]gl.JO"cOJO"cOJO"cOlTbFirX]&NdJn^~>
-df0;%rX]&FJO"cOJO$"r!]gl.JO"cOJO"cOJO"cOlTbFirX]&NdJn^~>
-df0;%rX]&FJO"cOJO$"r!]gl.JO"cOJO"cOJO"cOlTbFirX]&NdJn^~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcD_L!4VG_!/H.*O8f:=!$HjmJcC<$JcC<$JcG'9!'pM`!$K\hJ,~>
-df0;4rVup@JcD_L!4VG_!/H.*O8f:=!$HjmJcC<$JcC<$JcG'9!'pM`!$K\hJ,~>
-df0;4rVup@JcD_L!4VG_!/H.*O8f:=!$HjmJcC<$JcC<$JcG'9!'pM`!$K\hJ,~>
-df0;4rVup@JcD_L!2&`\!+:BXO8f:=!$HjmJcC<$JcC<$JcG'9!'pM`!$K\hJ,~>
-df0;4rVup@JcD_L!2&`\!+:BXO8f:=!$HjmJcC<$JcC<$JcG'9!'pM`!$K\hJ,~>
-df0;4rVup@JcD_L!2&`\!+:BXO8f:=!$HjmJcC<$JcC<$JcG'9!'pM`!$K\hJ,~>
-df0;4rVup@JcD_L!2&`\!+:BXO8f:=!$Hjm\c2m.^V?CjIpi.="B^/'\(?32JcC<$JcE^h!'pM`
-!$K\hJ,~>
-df0;4rVup@JcD_L!2&`\!+:BXO8f:=!$Hjm\c2m.^V?CjIpi.="B^/'\(?32JcC<$JcE^h!'pM`
-!$K\hJ,~>
-df0;4rVup@JcD_L!2&`\!+:BXO8f:=!$Hjm\c2m.^V?CjIpi.="B^/'\(?32JcC<$JcE^h!'pM`
-!$K\hJ,~>
-df0;4rVup@JcG*:!0?Ao!0?rj!8$30!2&`\!+:BXO8f:=!$Hjm]`/&bO%A^>":.8BYMXp2JcC<$
-JcEmm!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!0?Ao!0?rj!8$30!2&`\!+:BXO8f:=!$Hjm]`/&bO%A^>":.8BYMXp2JcC<$
-JcEmm!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!0?Ao!0?rj!8$30!2&`\!+:BXO8f:=!$Hjm]`/&bO%A^>":.8BYMXp2JcC<$
-JcEmm!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$L(t"$g7dfB</6TC;g\@"J?=rrV'X+G'R-rrT*+)!:l#+F)dps+13$s+13p
-rr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$L(t"$g7dfB</6TC;g\@"J?=rrV'X+G'R-rrT*+)!:l#+F)dps+13$s+13p
-rr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$L(t"$g7dfB</6TC;g\@"J?=rrV'X+G'R-rrT*+)!:l#+F)dps+13$s+13p
-rr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Kqp!Z5n6lMgjVn,NGro`"p3n\5(mJcDnQ!oEu#JcERd!N.(!!!5-Hmt(N2
-rrCsH^Aul:s6fmehsnG]f7Esdrr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Kqp!Z5n6lMgjVn,NGro`"p3n\5(mJcDnQ!oEu#JcERd!N.(!!!5-Hmt(N2
-rrCsH^Aul:s6fmehsnG]f7Esdrr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Kqp!Z5n6lMgjVn,NGro`"p3n\5(mJcDnQ!oEu#JcERd!N.(!!!5-Hmt(N2
-rrCsH^Aul:s6fmehsnG]f7Esdrr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Khm!DpPtrrA\\!!$F!rr=23!!'cbs/uA'hZ+dMs24j;^G+ID!XN2cJcGHD
-!.XM=!+:BXmf*9:nGiPsJcCu7!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$Khm!DpPtrrA\\!!$F!rr=23!!'cbs/uA'hZ+dMs24j;^G+ID!XN2cJcGHD
-!.XM=!+:BXmf*9:nGiPsJcCu7!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$Khm!DpPtrrA\\!!$F!rr=23!!'cbs/uA'hZ+dMs24j;^G+ID!XN2cJcGHD
-!.XM=!+:BXmf*9:nGiPsJcCu7!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$Kbk!H@f$rrA\\!!$F!rr=23!!'cbs/uA'hZ+dMs2G!=cTp+_!D'tVs7lTo
-J+3L=@"J@Grr@Q=!!$DXs-3N`5lL``+OU4>~>
-df0;4rVup@JcG*:!$Kbk!H@f$rrA\\!!$F!rr=23!!'cbs/uA'hZ+dMs2G!=cTp+_!D'tVs7lTo
-J+3L=@"J@Grr@Q=!!$DXs-3N`5lL``+OU4>~>
-df0;4rVup@JcG*:!$Kbk!H@f$rrA\\!!$F!rr=23!!'cbs/uA'hZ+dMs2G!=cTp+_!D'tVs7lTo
-J+3L=@"J@Grr@Q=!!$DXs-3N`5lL``+OU4>~>
-df0;4rVup@JcG*:!$K_j!@ZRgrrA\\!!$F!rr=23!!'cbs/uA'hZ+dMs2P'=LXZ;(O+I?,rr@Q=
-!!$DXs6fmeJ+3L=@"J?Brr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$K_j!@ZRgrrA\\!!$F!rr=23!!'cbs/uA'hZ+dMs2P'=LXZ;(O+I?,rr@Q=
-!!$DXs6fmeJ+3L=@"J?Brr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$K_j!@ZRgrrA\\!!$F!rr=23!!'cbs/uA'hZ+dMs2P'=LXZ;(O+I?,rr@Q=
-!!$DXs6fmeJ+3L=@"J?Brr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$K\i!=6I0rrA\\!!$F!rr=23!!'cbs/uA'hZ+dMs2b3@pL)GM!.TS"q>UGE
-nGiPsJcG0<!.XM=!+:BXPlC_KrVup@dJn^~>
-df0;4rVup@JcG*:!$K\i!=6I0rrA\\!!$F!rr=23!!'cbs/uA'hZ+dMs2b3@pL)GM!.TS"q>UGE
-nGiPsJcG0<!.XM=!+:BXPlC_KrVup@dJn^~>
-df0;4rVup@JcG*:!$K\i!=6I0rrA\\!!$F!rr=23!!'cbs/uA'hZ+dMs2b3@pL)GM!.TS"q>UGE
-nGiPsJcG0<!.XM=!+:BXPlC_KrVup@dJn^~>
-df0;4rVup@JcG*:!$KYh!>t"irrA\\!!$F!rr=23!!'cbs/uA'hZ+dMs2k9Amm,;$!.TS"q>UGE
-nGiPsJcG0<!.XM=!+:BXPlC_KrVup@dJn^~>
-df0;4rVup@JcG*:!$KYh!>t"irrA\\!!$F!rr=23!!'cbs/uA'hZ+dMs2k9Amm,;$!.TS"q>UGE
-nGiPsJcG0<!.XM=!+:BXPlC_KrVup@dJn^~>
-df0;4rVup@JcG*:!$KYh!>t"irrA\\!!$F!rr=23!!'cbs/uA'hZ+dMs2k9Amm,;$!.TS"q>UGE
-nGiPsJcG0<!.XM=!+:BXPlC_KrVup@dJn^~>
-df0;4rVup@JcG*:!$KVg!C6DMrrA\\!!$F!rr=23!!'cbs/uA'hZ+dMs2t?Bh^HkP!.TS"q>UGE
-nGiPsJcG0<!.XM=!+:BXPlC_KrVup@dJn^~>
-df0;4rVup@JcG*:!$KVg!C6DMrrA\\!!$F!rr=23!!'cbs/uA'hZ+dMs2t?Bh^HkP!.TS"q>UGE
-nGiPsJcG0<!.XM=!+:BXPlC_KrVup@dJn^~>
-df0;4rVup@JcG*:!$KVg!C6DMrrA\\!!$F!rr=23!!'cbs/uA'hZ+dMs2t?Bh^HkP!.TS"q>UGE
-nGiPsJcG0<!.XM=!+:BXPlC_KrVup@dJn^~>
-df0;4rVup@JcG*:!$KSf!.XS>!2&`\!+>I!!$Le3!5F*bY5\R\!$HjmbPqUp&C:CWIt@Xqrr@Q=
-!!$DXs6fmeJ+3L=@"J?Brr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$KSf!.XS>!2&`\!+>I!!$Le3!5F*bY5\R\!$HjmbPqUp&C:CWIt@Xqrr@Q=
-!!$DXs6fmeJ+3L=@"J?Brr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$KSf!.XS>!2&`\!+>I!!$Le3!5F*bY5\R\!$HjmbPqUp&C:CWIt@Xqrr@Q=
-!!$DXs6fmeJ+3L=@"J?Brr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$KSf!#Y;,!4VG_!/L4H!$Le3!5F*bY5\R\!$Hjmbl7_<.*hknIt@Xqrr@Q=
-!!$DXs6fmeJ+3L=@"J?Brr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$KSf!#Y;,!4VG_!/L4H!$Le3!5F*bY5\R\!$Hjmbl7_<.*hknIt@Xqrr@Q=
-!!$DXs6fmeJ+3L=@"J?Brr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$KSf!#Y;,!4VG_!/L4H!$Le3!5F*bY5\R\!$Hjmbl7_<.*hknIt@Xqrr@Q=
-!!$DXs6fmeJ+3L=@"J?Brr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$KPe!4UGW!$Le3!5F*bY5\R\!$Hjmbl7ZFc2[ioJcGQG!.XM=!+:BXmf*9:
-nGiPsJcCu7!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$KPe!4UGW!$Le3!5F*bY5\R\!$Hjmbl7ZFc2[ioJcGQG!.XM=!+:BXmf*9:
-nGiPsJcCu7!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$KPe!4UGW!$Le3!5F*bY5\R\!$Hjmbl7ZFc2[ioJcGQG!.XM=!+:BXmf*9:
-nGiPsJcCu7!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$KPe!)V/E!$Le3!5F*bY5\R\!$Hjmc2Rd)irB*F+RK./It@Xqrr@Q=!!$DX
-s6fmeJ+3L=@"J?Brr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$KPe!)V/E!$Le3!5F*bY5\R\!$Hjmc2Rd)irB*F+RK./It@Xqrr@Q=!!$DX
-s6fmeJ+3L=@"J?Brr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$KPe!)V/E!$Le3!5F*bY5\R\!$Hjmc2Rd)irB*F+RK./It@Xqrr@Q=!!$DX
-s6fmeJ+3L=@"J?Brr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$KPe!!q'R!$Le3!5F*bY5\R\!$HjmcMmpc#jD<j0R1)'rrU5r5k4mTIt@Xq
-rr@Q=!!$DXs6fmeJ+3L=@"J?Brr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$KPe!!q'R!$Le3!5F*bY5\R\!$HjmcMmpc#jD<j0R1)'rrU5r5k4mTIt@Xq
-rr@Q=!!$DXs6fmeJ+3L=@"J?Brr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$KPe!!q'R!$Le3!5F*bY5\R\!$HjmcMmpc#jD<j0R1)'rrU5r5k4mTIt@Xq
-rr@Q=!!$DXs6fmeJ+3L=@"J?Brr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!5J@0"Q-t\:^HCf!9_l3!$Le3!5F*bY5\R\!$Hjmci4%7+R/q-=PrcN
-!p=M.o`+uAJcGQG!.XM=!+:BXmf*9:nGiPsJcCu7!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$Lb2!5J@0"Q-t\:^HCf!9_l3!$Le3!5F*bY5\R\!$Hjmci4%7+R/q-=PrcN
-!p=M.o`+uAJcGQG!.XM=!+:BXmf*9:nGiPsJcCu7!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$Lb2!5J@0"Q-t\:^HCf!9_l3!$Le3!5F*bY5\R\!$Hjmci4%7+R/q-=PrcN
-!p=M.o`+uAJcGQG!.XM=!+:BXmf*9:nGiPsJcCu7!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$Lb2!5J4,!S9m0!!('hrr=23!!'cbs/uA'hZ+dMs3L]FE9dK)5gSs"!p>%E
-pAb2CJcGQG!.XM=!+:BXmf*9:nGiPsJcCu7!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$Lb2!5J4,!S9m0!!('hrr=23!!'cbs/uA'hZ+dMs3L]FE9dK)5gSs"!p>%E
-pAb2CJcGQG!.XM=!+:BXmf*9:nGiPsJcCu7!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$Lb2!5J4,!S9m0!!('hrr=23!!'cbs/uA'hZ+dMs3L]FE9dK)5gSs"!p>%E
-pAb2CJcGQG!.XM=!+:BXmf*9:nGiPsJcCu7!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$Lb2!5J.*!''BH!3aoP!$Le3!5F*bY5\R\!$Hjmd/O.0#j_NkE:!T+msbW=
-!!%N,rrKmdSGrS=nGiPsdJj6^f:`-DJ+3L=@"J?Brr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!5J.*!''BH!3aoP!$Le3!5F*bY5\R\!$Hjmd/O.0#j_NkE:!T+msbW=
-!!%N,rrKmdSGrS=nGiPsdJj6^f:`-DJ+3L=@"J?Brr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!5J.*!''BH!3aoP!$Le3!5F*bY5\R\!$Hjmd/O.0#j_NkE:!T+msbW=
-!!%N,rrKmdSGrS=nGiPsdJj6^f:`-DJ+3L=@"J?Brr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!5J.*!8$W=!2%d@!$Le3!5I=h!lpX8r]gH#rVup@r]gR)O2'k/s5j7^
-hZ+dMs3UcGJ*[.8Qg+MNf/WU,!.X54"OE-*5WJT?"V<paBW(%7rsP`S83e9t!&-Z7Qf%'-!.XM=
-!+=L["NQ!W5VW!6s$-X)YOB^8$`AJF5Tg%,0L/I$hs(.@J+3L=@,1b`hlhP/5QEM;!!!<(5Qb,<
-YKqe"bPqQ-rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J.*!8$W=!2%d@!$Le3!5I=h!lpX8r]gH#rVup@r]gR)O2'k/s5j7^
-hZ+dMs3UcGJ*[.8Qg+MNf/WU,!.X54"OE-*5WJT?"V<paBW(%7rsP`S83e9t!&-Z7Qf%'-!.XM=
-!+=L["NQ!W5VW!6s$-X)YOB^8$`AJF5Tg%,0L/I$hs(.@J+3L=@,1b`hlhP/5QEM;!!!<(5Qb,<
-YKqe"bPqQ-rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J.*!8$W=!2%d@!$Le3!5I=h!lpX8r]gH#rVup@r]gR)O2'k/s5j7^
-hZ+dMs3UcGJ*[.8Qg+MNf/WU,!.X54"OE-*5WJT?"V<paBW(%7rsP`S83e9t!&-Z7Qf%'-!.XM=
-!+=L["NQ!W5VW!6s$-X)YOB^8$`AJF5Tg%,0L/I$hs(.@J+3L=@,1b`hlhP/5QEM;!!!<(5Qb,<
-YKqe"bPqQ-rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J+)!(cPY!3c"o!0?Z"!:Tgb!71Ol!"eZ#!+>AI!3bnl!nVBVmJm=p
-:m]dbs69ObhZ+dMs3^iIpDE8t!4V.k!V^j9!!%N8rr_GN=;^K,![q`[kl1XtnUCPBq>UN2?kDu2
-!@X<)s8.9G5k+gS0_'Vmn*^2Xf8iH.mf3D;B[?&F!5J&R!3c4u!l&+So`,"@Qgt+QIfMb(!!"_C
-IfSs-rr__V8/Uap!\eT&JcF'r!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$Lb2!5J+)!(cPY!3c"o!0?Z"!:Tgb!71Ol!"eZ#!+>AI!3bnl!nVBVmJm=p
-:m]dbs69ObhZ+dMs3^iIpDE8t!4V.k!V^j9!!%N8rr_GN=;^K,![q`[kl1XtnUCPBq>UN2?kDu2
-!@X<)s8.9G5k+gS0_'Vmn*^2Xf8iH.mf3D;B[?&F!5J&R!3c4u!l&+So`,"@Qgt+QIfMb(!!"_C
-IfSs-rr__V8/Uap!\eT&JcF'r!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$Lb2!5J+)!(cPY!3c"o!0?Z"!:Tgb!71Ol!"eZ#!+>AI!3bnl!nVBVmJm=p
-:m]dbs69ObhZ+dMs3^iIpDE8t!4V.k!V^j9!!%N8rr_GN=;^K,![q`[kl1XtnUCPBq>UN2?kDu2
-!@X<)s8.9G5k+gS0_'Vmn*^2Xf8iH.mf3D;B[?&F!5J&R!3c4u!l&+So`,"@Qgt+QIfMb(!!"_C
-IfSs-rr__V8/Uap!\eT&JcF'r!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$Lb2!5J+)!2&][!8$iB!$Le3!8m\R!2%sF!+>Eu!q2I0k5YQ+B\.h8m/I.E
-!$HjmdJj3-m/R-9jSo8$)#XF7J+!=<kAU^k!!+47lMgj6nGiPsqu6];0^o&C.(AgJf`2$0nG`O8
-;!7l[:s\S0!.XM=!+>^(!QQn`!!+LWoDdJD!8mDJ!ln[SkPtYi:oAmEdf0;4rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J+)!2&][!8$iB!$Le3!8m\R!2%sF!+>Eu!q2I0k5YQ+B\.h8m/I.E
-!$HjmdJj3-m/R-9jSo8$)#XF7J+!=<kAU^k!!+47lMgj6nGiPsqu6];0^o&C.(AgJf`2$0nG`O8
-;!7l[:s\S0!.XM=!+>^(!QQn`!!+LWoDdJD!8mDJ!ln[SkPtYi:oAmEdf0;4rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J+)!2&][!8$iB!$Le3!8m\R!2%sF!+>Eu!q2I0k5YQ+B\.h8m/I.E
-!$HjmdJj3-m/R-9jSo8$)#XF7J+!=<kAU^k!!+47lMgj6nGiPsqu6];0^o&C.(AgJf`2$0nG`O8
-;!7l[:s\S0!.XM=!+>^(!QQn`!!+LWoDdJD!8mDJ!ln[SkPtYi:oAmEdf0;4rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J+)!6=O.!;H*b!$Le3!8m\R!2%sF!+>L"!r%0MiW'!=T7R%1rrV'X
-+G'R?rr<o(!!#RLrrMRRrVuqJnG`RQE!YP*!?e$$rr@Q=!!$F*rrM:bli7$8o`*SE!8mAI!RFU'
-!!,pJnG`K<nGiPsrVlo]=R6"fJ+Wco!!(pLrrKkgiW'#sGisYXec,V7rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J+)!6=O.!;H*b!$Le3!8m\R!2%sF!+>L"!r%0MiW'!=T7R%1rrV'X
-+G'R?rr<o(!!#RLrrMRRrVuqJnG`RQE!YP*!?e$$rr@Q=!!$F*rrM:bli7$8o`*SE!8mAI!RFU'
-!!,pJnG`K<nGiPsrVlo]=R6"fJ+Wco!!(pLrrKkgiW'#sGisYXec,V7rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J+)!6=O.!;H*b!$Le3!8m\R!2%sF!+>L"!r%0MiW'!=T7R%1rrV'X
-+G'R?rr<o(!!#RLrrMRRrVuqJnG`RQE!YP*!?e$$rr@Q=!!$F*rrM:bli7$8o`*SE!8mAI!RFU'
-!!,pJnG`K<nGiPsrVlo]=R6"fJ+Wco!!(pLrrKkgiW'#sGisYXec,V7rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J+)!8m8G!#Y;,!$Le3!8m\R!2%sF!+>O#!Oj3.!.k1<rrV'X+G'R@
-rrB7j!!*r*i;Wme!!%N=rrK#'i;`m,cgLf5J+3L=@/g0,NsP"N!,2'*f`2$0o`"sd=Q'5\&?kX(
-!.XM=!+>g+!KRNO!!$^*s4IAPhtR-Ok@!-H!2"iBec,V7rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J+)!8m8G!#Y;,!$Le3!8m\R!2%sF!+>O#!Oj3.!.k1<rrV'X+G'R@
-rrB7j!!*r*i;Wme!!%N=rrK#'i;`m,cgLf5J+3L=@/g0,NsP"N!,2'*f`2$0o`"sd=Q'5\&?kX(
-!.XM=!+>g+!KRNO!!$^*s4IAPhtR-Ok@!-H!2"iBec,V7rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J+)!8m8G!#Y;,!$Le3!8m\R!2%sF!+>O#!Oj3.!.k1<rrV'X+G'R@
-rrB7j!!*r*i;Wme!!%N=rrK#'i;`m,cgLf5J+3L=@/g0,NsP"N!,2'*f`2$0o`"sd=Q'5\&?kX(
-!.XM=!+>g+!KRNO!!$^*s4IAPhtR-Ok@!-H!2"iBec,V7rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J+)!5J"'!(c\\!$Le3!8m\R!2%sF!+>U%!V]^O!.k1<rrV'X+G'R@
-rr?Hp!!&):rrSgB^[hC)E8CQq#d<^s!.XM="(;/t=Q]YaGkV0j!!(pLrrM"2h>dP:o)A]>nGiZ!
-s6j(Q!!%9;s4IAPht[3PV\%Ya!2"iBec,V7rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J+)!5J"'!(c\\!$Le3!8m\R!2%sF!+>U%!V]^O!.k1<rrV'X+G'R@
-rr?Hp!!&):rrSgB^[hC)E8CQq#d<^s!.XM="(;/t=Q]YaGkV0j!!(pLrrM"2h>dP:o)A]>nGiZ!
-s6j(Q!!%9;s4IAPht[3PV\%Ya!2"iBec,V7rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J+)!5J"'!(c\\!$Le3!8m\R!2%sF!+>U%!V]^O!.k1<rrV'X+G'R@
-rr?Hp!!&):rrSgB^[hC)E8CQq#d<^s!.XM="(;/t=Q]YaGkV0j!!(pLrrM"2h>dP:o)A]>nGiZ!
-s6j(Q!!%9;s4IAPht[3PV\%Ya!2"iBec,V7rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J+)!2o;d!3btn!$Le3!8m\R!2%sF!+>X&!UiS6!.k1<rrV'X+G'R@
-rr=bA!!*r2cMmq6:tksML[b<DJ+3L?@+Qgg!!((6s4IAPhtI'N`t7#+!+>Eu!.XM=!asV.jT#;$
-p]&nH!8mVP!2&!G!2"iBec,V7rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J+)!2o;d!3btn!$Le3!8m\R!2%sF!+>X&!UiS6!.k1<rrV'X+G'R@
-rr=bA!!*r2cMmq6:tksML[b<DJ+3L?@+Qgg!!((6s4IAPhtI'N`t7#+!+>Eu!.XM=!asV.jT#;$
-p]&nH!8mVP!2&!G!2"iBec,V7rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J+)!2o;d!3btn!$Le3!8m\R!2%sF!+>X&!UiS6!.k1<rrV'X+G'R@
-rr=bA!!*r2cMmq6:tksML[b<DJ+3L?@+Qgg!!((6s4IAPhtI'N`t7#+!+>Eu!.XM=!asV.jT#;$
-p]&nH!8mVP!2&!G!2"iBec,V7rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J+)!*Jak!$Lh3!$Le3!8m\R!2%sF!+>['!Uh_r!.k1<rrV'X+G'RA
-rrDNU!!&)*rrM:2f`2"[nc&T=nGiS<&EEfl./3N:f`2$0p\t8d#hf7YO7`GPJ+3L>-kPG>!@[^;
-s4IAPhtm?QLY;_.T7R$mrr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!5J+)!*Jak!$Lh3!$Le3!8m\R!2%sF!+>['!Uh_r!.k1<rrV'X+G'RA
-rrDNU!!&)*rrM:2f`2"[nc&T=nGiS<&EEfl./3N:f`2$0p\t8d#hf7YO7`GPJ+3L>-kPG>!@[^;
-s4IAPhtm?QLY;_.T7R$mrr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!5J+)!*Jak!$Lh3!$Le3!8m\R!2%sF!+>['!Uh_r!.k1<rrV'X+G'RA
-rrDNU!!&)*rrM:2f`2"[nc&T=nGiS<&EEfl./3N:f`2$0p\t8d#hf7YO7`GPJ+3L>-kPG>!@[^;
-s4IAPhtm?QLY;_.T7R$mrr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!5J.*!TsaY!!&)Mrr=23!!(pRrrA\F!!$F'rr>=;!.k1<rrV'X+G'RA
-rrB7k!!*Agci4%?5h>u9O7N;NJ'e5rO8/b.!!(pOrrB7T!!*AGp&>#Ad/X0-q#B"I!8m\R!2%pE
-!2"iBec,V7rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J.*!TsaY!!&)Mrr=23!!(pRrrA\F!!$F'rr>=;!.k1<rrV'X+G'RA
-rrB7k!!*Agci4%?5h>u9O7N;NJ'e5rO8/b.!!(pOrrB7T!!*AGp&>#Ad/X0-q#B"I!8m\R!2%pE
-!2"iBec,V7rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J.*!TsaY!!&)Mrr=23!!(pRrrA\F!!$F'rr>=;!.k1<rrV'X+G'RA
-rrB7k!!*Agci4%?5h>u9O7N;NJ'e5rO8/b.!!(pOrrB7T!!*AGp&>#Ad/X0-q#B"I!8m\R!2%pE
-!2"iBec,V7rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J.*!'p&S!>tS$rr=23!!(pRrrA\F!!$F(rr@i,!.k1<rrV'X+G'RA
-rr@$,!!#j@rr@#g!!'e*rr@Pr!!!l2s4IAPhtd9Qh[nB>!?gk)rr@Pr!!!l2s4IAPhu*KTk7H;H
-!2"iBec,V7rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J.*!'p&S!>tS$rr=23!!(pRrrA\F!!$F(rr@i,!.k1<rrV'X+G'RA
-rr@$,!!#j@rr@#g!!'e*rr@Pr!!!l2s4IAPhtd9Qh[nB>!?gk)rr@Pr!!!l2s4IAPhu*KTk7H;H
-!2"iBec,V7rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J.*!'p&S!>tS$rr=23!!(pRrrA\F!!$F(rr@i,!.k1<rrV'X+G'RA
-rr@$,!!#j@rr@#g!!'e*rr@Pr!!!l2s4IAPhtd9Qh[nB>!?gk)rr@Pr!!!l2s4IAPhu*KTk7H;H
-!2"iBec,V7rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J4,!S9=#!!'4lrr=23!!(pRrrA\F!!$F)rrL^WfDpL&mf*@G!$Hjm
-e,KD%mf3?Kci4!Ke,TLdkOecSJ'\/qYPJ4O!!(pQrrMjJli7#>lMpompAY,Bci='Lq>]+J!8m_S
-!(b`B!2"iBec,V7rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J4,!S9=#!!'4lrr=23!!(pRrrA\F!!$F)rrL^WfDpL&mf*@G!$Hjm
-e,KD%mf3?Kci4!Ke,TLdkOecSJ'\/qYPJ4O!!(pQrrMjJli7#>lMpompAY,Bci='Lq>]+J!8m_S
-!(b`B!2"iBec,V7rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J4,!S9=#!!'4lrr=23!!(pRrrA\F!!$F)rrL^WfDpL&mf*@G!$Hjm
-e,KD%mf3?Kci4!Ke,TLdkOecSJ'\/qYPJ4O!!(pQrrMjJli7#>lMpompAY,Bci='Lq>]+J!8m_S
-!(b`B!2"iBec,V7rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J:.!mbNcn,NHDn,EA1nGiRHqu6Ygg&M+\r;Qa^li7"kr]gH#nGn.?
-mf*@G!$HjmeGfO;mJm75d/O.(&CUUZ5kP'VJ'\/q;#1.E!!(pQrr?Hr!!=p)\(CWZ"4t;4&F]Z#
-#j:s^!.W>q!)WLkf`2$0rVll$lMq#@5X7$n!!&XBs4.,L5lL``+OU4>~>
-df0;4rVup@JcG*:!$Lb2!5J:.!mbNcn,NHDn,EA1nGiRHqu6Ygg&M+\r;Qa^li7"kr]gH#nGn.?
-mf*@G!$HjmeGfO;mJm75d/O.(&CUUZ5kP'VJ'\/q;#1.E!!(pQrr?Hr!!=p)\(CWZ"4t;4&F]Z#
-#j:s^!.W>q!)WLkf`2$0rVll$lMq#@5X7$n!!&XBs4.,L5lL``+OU4>~>
-df0;4rVup@JcG*:!$Lb2!5J:.!mbNcn,NHDn,EA1nGiRHqu6Ygg&M+\r;Qa^li7"kr]gH#nGn.?
-mf*@G!$HjmeGfO;mJm75d/O.(&CUUZ5kP'VJ'\/q;#1.E!!(pQrr?Hr!!=p)\(CWZ"4t;4&F]Z#
-#j:s^!.W>q!)WLkf`2$0rVll$lMq#@5X7$n!!&XBs4.,L5lL``+OU4>~>
-df0;4rVup@JcG*:!$Lb2!&446!''?G!,1g#!$Le3!8m\R!2%sF!+>d*!8m2E!`5fhqu6cM^R%4Z
-!.k1<rrV'X+G'RBrrC[>!!!SVrr?0h!!sc]LVN$8^Sb0>mJm6jp&>#Aci=%Wq>]+J!8m\R!3bnm
-!>)I/rrM:Rn,NH-p\t5Cci=%Wq>]+J!8mbT!)W+a![rQMqu6ff^TV#VpAb2cJcF:#!'pM`!$K\h
-J,~>
-df0;4rVup@JcG*:!$Lb2!&446!''?G!,1g#!$Le3!8m\R!2%sF!+>d*!8m2E!`5fhqu6cM^R%4Z
-!.k1<rrV'X+G'RBrrC[>!!!SVrr?0h!!sc]LVN$8^Sb0>mJm6jp&>#Aci=%Wq>]+J!8m\R!3bnm
-!>)I/rrM:Rn,NH-p\t5Cci=%Wq>]+J!8mbT!)W+a![rQMqu6ff^TV#VpAb2cJcF:#!'pM`!$K\h
-J,~>
-df0;4rVup@JcG*:!$Lb2!&446!''?G!,1g#!$Le3!8m\R!2%sF!+>d*!8m2E!`5fhqu6cM^R%4Z
-!.k1<rrV'X+G'RBrrC[>!!!SVrr?0h!!sc]LVN$8^Sb0>mJm6jp&>#Aci=%Wq>]+J!8m\R!3bnm
-!>)I/rrM:Rn,NH-p\t5Cci=%Wq>]+J!8mbT!)W+a![rQMqu6ff^TV#VpAb2cJcF:#!'pM`!$K\h
-J,~>
-df0;4rVup@JcG*:!$K_j!)W(_!$Le3!8m\R!71Ol!"eZ#!+>AI!3cA$!/L%D!AN-trrVAU;#(*B
-s6fmghZ+dMs4%&K^[D.&:sf4Ck6UPW!=4JUrrM:Rmf3>Ap&>#AcN!ssqZ$GB!'p&S!&3qm!:Tgb
-!&3sD!?g:lrr@Q=!!*r2q#:>DcN!ssqZ$GB!'p&S!&3qm!:Tpe!Ug<a!!*@loD\m$BGgRG!2"iB
-ec,V7rVup@dJn^~>
-df0;4rVup@JcG*:!$K_j!)W(_!$Le3!8m\R!71Ol!"eZ#!+>AI!3cA$!/L%D!AN-trrVAU;#(*B
-s6fmghZ+dMs4%&K^[D.&:sf4Ck6UPW!=4JUrrM:Rmf3>Ap&>#AcN!ssqZ$GB!'p&S!&3qm!:Tgb
-!&3sD!?g:lrr@Q=!!*r2q#:>DcN!ssqZ$GB!'p&S!&3qm!:Tpe!Ug<a!!*@loD\m$BGgRG!2"iB
-ec,V7rVup@dJn^~>
-df0;4rVup@JcG*:!$K_j!)W(_!$Le3!8m\R!71Ol!"eZ#!+>AI!3cA$!/L%D!AN-trrVAU;#(*B
-s6fmghZ+dMs4%&K^[D.&:sf4Ck6UPW!=4JUrrM:Rmf3>Ap&>#AcN!ssqZ$GB!'p&S!&3qm!:Tgb
-!&3sD!?g:lrr@Q=!!*r2q#:>DcN!ssqZ$GB!'p&S!&3qm!:Tpe!Ug<a!!*@loD\m$BGgRG!2"iB
-ec,V7rVup@dJn^~>
-df0;4rVup@JcG*:!$Kel!?el<rr=23!!(pKrr=23!!'e$rr=bC!!,XbnG`OH=Si)Ls6fmghZ+dM
-s4%&KVsaTcJ'e2qE:<i.#e0L,!.XG;!6=g5!.X>8!Z5=KrkANDE$4NJ!2oJh!.XM=!+>-m!3bnm
-!6=[1!&3pC!0?pT!.X>8!Z5=KrkANDE$4NJ!2oJh!.XM=!+>3o!130T!6=U/!r%`mqu?_hJcF:#
-!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$Kel!?el<rr=23!!(pKrr=23!!'e$rr=bC!!,XbnG`OH=Si)Ls6fmghZ+dM
-s4%&KVsaTcJ'e2qE:<i.#e0L,!.XG;!6=g5!.X>8!Z5=KrkANDE$4NJ!2oJh!.XM=!+>-m!3bnm
-!6=[1!&3pC!0?pT!.X>8!Z5=KrkANDE$4NJ!2oJh!.XM=!+>3o!130T!6=U/!r%`mqu?_hJcF:#
-!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$Kel!?el<rr=23!!(pKrr=23!!'e$rr=bC!!,XbnG`OH=Si)Ls6fmghZ+dM
-s4%&KVsaTcJ'e2qE:<i.#e0L,!.XG;!6=g5!.X>8!Z5=KrkANDE$4NJ!2oJh!.XM=!+>-m!3bnm
-!6=[1!&3pC!0?pT!.X>8!Z5=KrkANDE$4NJ!2oJh!.XM=!+>3o!130T!6=U/!r%`mqu?_hJcF:#
-!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$Kkn!XO;Mli-r-nGiRHo`"n6nGiR(mJlYU!2o5a!RF%0!.k1<rrV'X+G'RB
-rrA\[!!%f%rrM9gn,NHtoD\f8n,NGbpAY,BmJm8IYPA+uLC!>K!-%T1!.XM=!+>-m!'p)T!,1p&
-!3bnm!(cnb!.XD:!B@:XrrIl\mf3?,o`"o@nGiPsmJd0*nGiPKmJd7VIh;SZ!2"iBec,V7rVup@
-dJn^~>
-df0;4rVup@JcG*:!$Kkn!XO;Mli-r-nGiRHo`"n6nGiR(mJlYU!2o5a!RF%0!.k1<rrV'X+G'RB
-rrA\[!!%f%rrM9gn,NHtoD\f8n,NGbpAY,BmJm8IYPA+uLC!>K!-%T1!.XM=!+>-m!'p)T!,1p&
-!3bnm!(cnb!.XD:!B@:XrrIl\mf3?,o`"o@nGiPsmJd0*nGiPKmJd7VIh;SZ!2"iBec,V7rVup@
-dJn^~>
-df0;4rVup@JcG*:!$Kkn!XO;Mli-r-nGiRHo`"n6nGiR(mJlYU!2o5a!RF%0!.k1<rrV'X+G'RB
-rrA\[!!%f%rrM9gn,NHtoD\f8n,NGbpAY,BmJm8IYPA+uLC!>K!-%T1!.XM=!+>-m!'p)T!,1p&
-!3bnm!(cnb!.XD:!B@:XrrIl\mf3?,o`"o@nGiPsmJd0*nGiPKmJd7VIh;SZ!2"iBec,V7rVup@
-dJn^~>
-df0;4rVup@JcG*:!$Kkn!FXgMrr=23!!(pKrr=23!!'e%rrCsG!!)3Jrr]_Q!!%TMmf*@G!$Hjm
-eGfMumf3?[dJj2kn,NGbo)Aab)"7M*chIG>J+*F=(q92<!2o8c!+>I!!.XM=!+>0n!7139!>t:p
-rr=bD!!!T*rr@Q<!!*qGp&>#imf3>qo`"o@nGiPsmJd/_nGiQ.li.+N:]LKfJcF:#!'pM`!$K\h
-J,~>
-df0;4rVup@JcG*:!$Kkn!FXgMrr=23!!(pKrr=23!!'e%rrCsG!!)3Jrr]_Q!!%TMmf*@G!$Hjm
-eGfMumf3?[dJj2kn,NGbo)Aab)"7M*chIG>J+*F=(q92<!2o8c!+>I!!.XM=!+>0n!7139!>t:p
-rr=bD!!!T*rr@Q<!!*qGp&>#imf3>qo`"o@nGiPsmJd/_nGiQ.li.+N:]LKfJcF:#!'pM`!$K\h
-J,~>
-df0;4rVup@JcG*:!$Kkn!FXgMrr=23!!(pKrr=23!!'e%rrCsG!!)3Jrr]_Q!!%TMmf*@G!$Hjm
-eGfMumf3?[dJj2kn,NGbo)Aab)"7M*chIG>J+*F=(q92<!2o8c!+>I!!.XM=!+>0n!7139!>t:p
-rr=bD!!!T*rr@Q<!!*qGp&>#imf3>qo`"o@nGiPsmJd/_nGiQ.li.+N:]LKfJcF:#!'pM`!$K\h
-J,~>
-df0;4rVup@JcG*:!$Kel!]ZP0mJd//nGiRHo`"n6nGiR(mf*:%n,NHtlMgq[BL%.Kmf*@G!$Hjm
-eGfMfmf3?kdJj2#nGiRqkOJQPO73,LJ+rsCJ+3L>3:HJ=!)W.b!'p2V!.XM=!+>0n!+>?t!/L%C
-!133U!71K@!.XM=!BBQ>rr>mb!!#:Vrr@Q=!!$Eorr=bC!!#RSrrT)`[t4S0rr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Kel!]ZP0mJd//nGiRHo`"n6nGiR(mf*:%n,NHtlMgq[BL%.Kmf*@G!$Hjm
-eGfMfmf3?kdJj2#nGiRqkOJQPO73,LJ+rsCJ+3L>3:HJ=!)W.b!'p2V!.XM=!+>0n!+>?t!/L%C
-!133U!71K@!.XM=!BBQ>rr>mb!!#:Vrr@Q=!!$Eorr=bC!!#RSrrT)`[t4S0rr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Kel!]ZP0mJd//nGiRHo`"n6nGiR(mf*:%n,NHtlMgq[BL%.Kmf*@G!$Hjm
-eGfMfmf3?kdJj2#nGiRqkOJQPO73,LJ+rsCJ+3L>3:HJ=!)W.b!'p2V!.XM=!+>0n!+>?t!/L%C
-!133U!71K@!.XM=!BBQ>rr>mb!!#:Vrr@Q=!!$Eorr=bC!!#RSrrT)`[t4S0rr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$K\i!D'-Wrr=23!!(pKrr=23!!'e%rrBOt!!,@ZJcF:#!oEu#JcF7"!+>6q
-!5Ht^!:TCW!*Jaj!V[/q!!#:Yrr@Q=!!$EtrrBOt!!#:Vrr@Q=!!$Enrr=24!!'LsrrC+0!!&Ye
-rr@Q=!!$EtrrBOt!!#:Vrr@Q=!!$Eorr=23!!*AGJcE@^!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$K\i!D'-Wrr=23!!(pKrr=23!!'e%rrBOt!!,@ZJcF:#!oEu#JcF7"!+>6q
-!5Ht^!:TCW!*Jaj!V[/q!!#:Yrr@Q=!!$EtrrBOt!!#:Vrr@Q=!!$Enrr=24!!'LsrrC+0!!&Ye
-rr@Q=!!$EtrrBOt!!#:Vrr@Q=!!$Eorr=23!!*AGJcE@^!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$K\i!D'-Wrr=23!!(pKrr=23!!'e%rrBOt!!,@ZJcF:#!oEu#JcF7"!+>6q
-!5Ht^!:TCW!*Jaj!V[/q!!#:Yrr@Q=!!$EtrrBOt!!#:Vrr@Q=!!$Enrr=24!!'LsrrC+0!!&Ye
-rr@Q=!!$EtrrBOt!!#:Vrr@Q=!!$Eorr=23!!*AGJcE@^!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$KVg!GM5trr=23!!(pKrr=23!!'e%rrBh&!!-3bJcF=$!oEu#JcF7"!(cPY
-!8#[!!3bkl!2o;c!+><s!=8Gprr@Q=!!$EtrrMj"nGiPCo`"o@nGiPsmJd1DnGiRXn,ECNnGiPs
-q>UGEnGiPso)Aab#k7lp0_GAFJ+3L=@.!so3:HnK(oMrb]`.ssrVup@dJn^~>
-df0;4rVup@JcG*:!$KVg!GM5trr=23!!(pKrr=23!!'e%rrBh&!!-3bJcF=$!oEu#JcF7"!(cPY
-!8#[!!3bkl!2o;c!+><s!=8Gprr@Q=!!$EtrrMj"nGiPCo`"o@nGiPsmJd1DnGiRXn,ECNnGiPs
-q>UGEnGiPso)Aab#k7lp0_GAFJ+3L=@.!so3:HnK(oMrb]`.ssrVup@dJn^~>
-df0;4rVup@JcG*:!$KVg!GM5trr=23!!(pKrr=23!!'e%rrBh&!!-3bJcF=$!oEu#JcF7"!(cPY
-!8#[!!3bkl!2o;c!+><s!=8Gprr@Q=!!$EtrrMj"nGiPCo`"o@nGiPsmJd1DnGiRXn,ECNnGiPs
-q>UGEnGiPso)Aab#k7lp0_GAFJ+3L=@.!so3:HnK(oMrb]`.ssrVup@dJn^~>
-df0;4rVup@JcG*:!$KSf!ANF%rr=23!!(pKrr=23!!'e%rrC[=!!<L/Vsf3:g&D-2!$HjmeGfM6
-mf3@Fdf0;dnGiRqp[A+^VsjZd^\Ig/J+3L=@.F6s0_#,C+S>[6J+3L=@.!soTCMs^)"%>'&Fof$
-5l(E[J+3L=@.F6s0_#,C+S>[6J+3L=@.!so5jeUR.$)u2s1eR65lL``+OU4>~>
-df0;4rVup@JcG*:!$KSf!ANF%rr=23!!(pKrr=23!!'e%rrC[=!!<L/Vsf3:g&D-2!$HjmeGfM6
-mf3@Fdf0;dnGiRqp[A+^VsjZd^\Ig/J+3L=@.F6s0_#,C+S>[6J+3L=@.!soTCMs^)"%>'&Fof$
-5l(E[J+3L=@.F6s0_#,C+S>[6J+3L=@.!so5jeUR.$)u2s1eR65lL``+OU4>~>
-df0;4rVup@JcG*:!$KSf!ANF%rr=23!!(pKrr=23!!'e%rrC[=!!<L/Vsf3:g&D-2!$HjmeGfM6
-mf3@Fdf0;dnGiRqp[A+^VsjZd^\Ig/J+3L=@.F6s0_#,C+S>[6J+3L=@.!soTCMs^)"%>'&Fof$
-5l(E[J+3L=@.F6s0_#,C+S>[6J+3L=@.!so5jeUR.$)u2s1eR65lL``+OU4>~>
-df0;4rVup@JcG*:!$KPe!>)a3rr=23!!(pKrr=23!!'e%rrDNQ!!>cA\*nnJh>[Q6!$HjmeGfMV
-mf3@&df0;$nGiPCmf*:Mn,NH<q#:>DnGiPsnc&ScnGiP3o`"o@nGiPsmJd/onc/YLmCrWDnc/Y4
-q>UGEnGiPsnc&ScnGiP3o`"o@nGiPsmJd/olMq#8E1ba5s24j:5lL``+OU4>~>
-df0;4rVup@JcG*:!$KPe!>)a3rr=23!!(pKrr=23!!'e%rrDNQ!!>cA\*nnJh>[Q6!$HjmeGfMV
-mf3@&df0;$nGiPCmf*:Mn,NH<q#:>DnGiPsnc&ScnGiP3o`"o@nGiPsmJd/onc/YLmCrWDnc/Y4
-q>UGEnGiPsnc&ScnGiP3o`"o@nGiPsmJd/olMq#8E1ba5s24j:5lL``+OU4>~>
-df0;4rVup@JcG*:!$KPe!>)a3rr=23!!(pKrr=23!!'e%rrDNQ!!>cA\*nnJh>[Q6!$HjmeGfMV
-mf3@&df0;$nGiPCmf*:Mn,NH<q#:>DnGiPsnc&ScnGiP3o`"o@nGiPsmJd/onc/YLmCrWDnc/Y4
-q>UGEnGiPsnc&ScnGiP3o`"o@nGiPsmJd/olMq#8E1ba5s24j:5lL``+OU4>~>
-df0;4rVup@JcG*:!$KJc!2oJh!$Le3!8mGK!$Le3!5Iq$!&3R9"!C^4f7Et\rrV'X+G'RBrr@$,
-!!'LWrrDNW!!$-grr<W#!!#Rbrr@Q=!!$Esrr@$.!!"/6rr@Q=!!$Eorr=1d!!"/;rr@Q=!!$Es
-rr@$.!!"/6rr@Q=!!$EorrA\S!!<KlJ%pR7a8Z-)rVup@dJn^~>
-df0;4rVup@JcG*:!$KJc!2oJh!$Le3!8mGK!$Le3!5Iq$!&3R9"!C^4f7Et\rrV'X+G'RBrr@$,
-!!'LWrrDNW!!$-grr<W#!!#Rbrr@Q=!!$Esrr@$.!!"/6rr@Q=!!$Eorr=1d!!"/;rr@Q=!!$Es
-rr@$.!!"/6rr@Q=!!$EorrA\S!!<KlJ%pR7a8Z-)rVup@dJn^~>
-df0;4rVup@JcG*:!$KJc!2oJh!$Le3!8mGK!$Le3!5Iq$!&3R9"!C^4f7Et\rrV'X+G'RBrr@$,
-!!'LWrrDNW!!$-grr<W#!!#Rbrr@Q=!!$Esrr@$.!!"/6rr@Q=!!$Eorr=1d!!"/;rr@Q=!!$Es
-rr@$.!!"/6rr@Q=!!$EorrA\S!!<KlJ%pR7a8Z-)rVup@dJn^~>
-df0;4rVup@JcG*:!$KJc!=7<Mrr=23!!(pKrr=23!!'e$rr@#u!!='?Qe-fgjo5D>!$HjmeGfMu
-mf3?[e,KF*n,NHDmJd/WnGiPCq#:>DnGiPsnc&T=nGiP3o`"o@nGiPsmf*:]b5hA<!.XM=!+>?s
-!.XM=!$Lq6!.XM=!+>3o!8$31!^M7MJcEpn!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$KJc!=7<Mrr=23!!(pKrr=23!!'e$rr@#u!!='?Qe-fgjo5D>!$HjmeGfMu
-mf3?[e,KF*n,NHDmJd/WnGiPCq#:>DnGiPsnc&T=nGiP3o`"o@nGiPsmf*:]b5hA<!.XM=!+>?s
-!.XM=!$Lq6!.XM=!+>3o!8$31!^M7MJcEpn!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$KJc!=7<Mrr=23!!(pKrr=23!!'e$rr@#u!!='?Qe-fgjo5D>!$HjmeGfMu
-mf3?[e,KF*n,NHDmJd/WnGiPCq#:>DnGiPsnc&T=nGiP3o`"o@nGiPsmf*:]b5hA<!.XM=!+>?s
-!.XM=!$Lq6!.XM=!+>3o!8$31!^M7MJcEpn!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$Lb2!&4.4!#Xo"!&4*G!$Le3!8mGK!$Le3!5Iq$!6<ss!DpO^s6'C`hZ+dM
-s4%&KQgXnSO44+/a7''/YO2>iE:Eo.+Sbs:J+3L=@.F6sJ+3L=+S>[6J+3L=@.+$phoc#qrr@Q=
-!!$Esrr@Q=!!"/6rr@Q=!!$Enrr=b2!!4:0pOW@irr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!&4.4!#Xo"!&4*G!$Le3!8mGK!$Le3!5Iq$!6<ss!DpO^s6'C`hZ+dM
-s4%&KQgXnSO44+/a7''/YO2>iE:Eo.+Sbs:J+3L=@.F6sJ+3L=+S>[6J+3L=@.+$phoc#qrr@Q=
-!!$Esrr@Q=!!"/6rr@Q=!!$Enrr=b2!!4:0pOW@irr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!&4.4!#Xo"!&4*G!$Le3!8mGK!$Le3!5Iq$!6<ss!DpO^s6'C`hZ+dM
-s4%&KQgXnSO44+/a7''/YO2>iE:Eo.+Sbs:J+3L=@.F6sJ+3L=+S>[6J+3L=@.+$phoc#qrr@Q=
-!!$Esrr@Q=!!"/6rr@Q=!!$Enrr=b2!!4:0pOW@irr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!5J1+!mco]li7$hpAY+8nGiRHo`"n6nGiR(m/I&>h>dR9Vh+m4rrV'X
-+G'RBrrA\[!!%MtrrBh'!!'e$rr@Q=!!!<"rr@Q=!!$Esrr@iE!!"/6rr@Q=!!$EprrC*_!!(pQ
-rr@Q=!!$Esrr@iE!!"/6rr@Q=!!$EnrrADB!!4!ekCNZ[rr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!5J1+!mco]li7$hpAY+8nGiRHo`"n6nGiR(m/I&>h>dR9Vh+m4rrV'X
-+G'RBrrA\[!!%MtrrBh'!!'e$rr@Q=!!!<"rr@Q=!!$Esrr@iE!!"/6rr@Q=!!$EprrC*_!!(pQ
-rr@Q=!!$Esrr@iE!!"/6rr@Q=!!$EnrrADB!!4!ekCNZ[rr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!5J1+!mco]li7$hpAY+8nGiRHo`"n6nGiR(m/I&>h>dR9Vh+m4rrV'X
-+G'RBrrA\[!!%MtrrBh'!!'e$rr@Q=!!!<"rr@Q=!!$Esrr@iE!!"/6rr@Q=!!$EprrC*_!!(pQ
-rr@Q=!!$Esrr@iE!!"/6rr@Q=!!$EnrrADB!!4!ekCNZ[rr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!5J((!N.(.!!"_Hrr=23!!(pKrr=23!!'e#rrB7X!!+M*JcG'9!oEu#
-JcF7"!5It&!,0j]!2o;d!6=L,!.XJ<q#:>DnGiPsnc&T]nGiP3o`"o@nGiPsmf*9rb5_P"qYpPF
-nGiPsnc&T]nGiP3o`"o@nGiPsm/I+\+Pd"u#bQ\JdJj23rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J((!N.(.!!"_Hrr=23!!(pKrr=23!!'e#rrB7X!!+M*JcG'9!oEu#
-JcF7"!5It&!,0j]!2o;d!6=L,!.XJ<q#:>DnGiPsnc&T]nGiP3o`"o@nGiPsmf*9rb5_P"qYpPF
-nGiPsnc&T]nGiP3o`"o@nGiPsm/I+\+Pd"u#bQ\JdJj23rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J((!N.(.!!"_Hrr=23!!(pKrr=23!!'e#rrB7X!!+M*JcG'9!oEu#
-JcF7"!5It&!,0j]!2o;d!6=L,!.XJ<q#:>DnGiPsnc&T]nGiP3o`"o@nGiPsmf*9rb5_P"qYpPF
-nGiPsnc&T]nGiP3o`"o@nGiPsm/I+\+Pd"u#bQ\JdJj23rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J%'!Uh`1!!'e.rr=23!!(pKrr=23!!'e"rr?0V!!*YOJcG*:!oEu#
-JcF7"!6=O.!$Kbj!2&`\!8m2D!0?UL!8mVP!.XM=!+>?s!2&c]!$Lq6!.XM=!+>6p!2%F7!8mYQ
-!.XM=!+>?s!2&c]!$Lq6!.XM=!+>-m!5I7g!-j(pdf0;4rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J%'!Uh`1!!'e.rr=23!!(pKrr=23!!'e"rr?0V!!*YOJcG*:!oEu#
-JcF7"!6=O.!$Kbj!2&`\!8m2D!0?UL!8mVP!.XM=!+>?s!2&c]!$Lq6!.XM=!+>6p!2%F7!8mYQ
-!.XM=!+>?s!2&c]!$Lq6!.XM=!+>-m!5I7g!-j(pdf0;4rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J%'!Uh`1!!'e.rr=23!!(pKrr=23!!'e"rr?0V!!*YOJcG*:!oEu#
-JcF7"!6=O.!$Kbj!2&`\!8m2D!0?UL!8mVP!.XM=!+>?s!2&c]!$Lq6!.XM=!+>6p!2%F7!8mYQ
-!.XM=!+>?s!2&c]!$Lq6!.XM=!+>-m!5I7g!-j(pdf0;4rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5J"&!Uglo!!%NCrr=23!!(pKrr=23!!'e"rrM:*g].?\YCZ`@rrV'X
-+G'RBrrD6M!!(p+rr@Q<!!(pDrrA\\!!(pPrr@Q=!!$EsrrA\]!!"/6rr@Q=!!$EprrA,'!!(pQ
-rr@Q=!!$EsrrA\]!!"/6rr@Q=!!$Elrr@#m!!,pjJcF7"!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$Lb2!5J"&!Uglo!!%NCrr=23!!(pKrr=23!!'e"rrM:*g].?\YCZ`@rrV'X
-+G'RBrrD6M!!(p+rr@Q<!!(pDrrA\\!!(pPrr@Q=!!$EsrrA\]!!"/6rr@Q=!!$EprrA,'!!(pQ
-rr@Q=!!$EsrrA\]!!"/6rr@Q=!!$Elrr@#m!!,pjJcF7"!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$Lb2!5J"&!Uglo!!%NCrr=23!!(pKrr=23!!'e"rrM:*g].?\YCZ`@rrV'X
-+G'RBrrD6M!!(p+rr@Q<!!(pDrrA\\!!(pPrr@Q=!!$EsrrA\]!!"/6rr@Q=!!$EprrA,'!!(pQ
-rr@Q=!!$EsrrA\]!!"/6rr@Q=!!$Elrr@#m!!,pjJcF7"!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$Lb2!5It%!0?RK!'p;Y!$Le3!8mGK!$Le3!5Ih!!T,$S!!&pJs6fmghZ+dM
-s3puJ+R]:1T@El@L[Y9DhsLFDTC;g\htd9PJ+3L=@.F6sTCDm]+S>[6J+3L=@.+$pJ'.flhtm?Q
-J+3L=@.F6sTCDm]+S>[6J+3L=@-R[k@+tY]3._+Zrr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!5It%!0?RK!'p;Y!$Le3!8mGK!$Le3!5Ih!!T,$S!!&pJs6fmghZ+dM
-s3puJ+R]:1T@El@L[Y9DhsLFDTC;g\htd9PJ+3L=@.F6sTCDm]+S>[6J+3L=@.+$pJ'.flhtm?Q
-J+3L=@.F6sTCDm]+S>[6J+3L=@-R[k@+tY]3._+Zrr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!5It%!0?RK!'p;Y!$Le3!8mGK!$Le3!5Ih!!T,$S!!&pJs6fmghZ+dM
-s3puJ+R]:1T@El@L[Y9DhsLFDTC;g\htd9PJ+3L=@.F6sTCDm]+S>[6J+3L=@.+$pJ'.flhtm?Q
-J+3L=@.F6sTCDm]+S>[6J+3L=@-R[k@+tY]3._+Zrr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!5It%!V[/p!!!<!rr=23!!(pKrr=23!!'durrM":g].?\f7EtjrrV'X
-+G'RArr?0i!!#jFrrA\\!!(pDrrA,L!!)3Xrr@Q=!!$EsrrA\]!!"/6rr@Q=!!$EprrA\7!!(pQ
-rr@Q=!!$EsrrA\]!!"/6rr@Q=!!$Ejrr@i/!!&XBs4.,L5lL``+OU4>~>
-df0;4rVup@JcG*:!$Lb2!5It%!V[/p!!!<!rr=23!!(pKrr=23!!'durrM":g].?\f7EtjrrV'X
-+G'RArr?0i!!#jFrrA\\!!(pDrrA,L!!)3Xrr@Q=!!$EsrrA\]!!"/6rr@Q=!!$EprrA\7!!(pQ
-rr@Q=!!$EsrrA\]!!"/6rr@Q=!!$Ejrr@i/!!&XBs4.,L5lL``+OU4>~>
-df0;4rVup@JcG*:!$Lb2!5It%!V[/p!!!<!rr=23!!(pKrr=23!!'durrM":g].?\f7EtjrrV'X
-+G'RArr?0i!!#jFrrA\\!!(pDrrA,L!!)3Xrr@Q=!!$EsrrA\]!!"/6rr@Q=!!$EprrA\7!!(pQ
-rr@Q=!!$EsrrA\]!!"/6rr@Q=!!$Ejrr@i/!!&XBs4.,L5lL``+OU4>~>
-df0;4rVup@JcG*:!$Lb2!5Iq$!''EI!:T^_!$Le3!8mGK!$Le3!5I^s!-m9!!'l,8n,EIH!$Hjm
-e,KE/mf3A"pXT9DVsjZdhsLFDJ+*I5rr@Q=!!$EsrrA\]!!"/6rr@Q=!!$EprrAt?!!(pQrr@Q=
-!!$EsrrA\]!!"/6rr@Q=!!$EirrL.Wh#IHmpOW@qrr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!5Iq$!''EI!:T^_!$Le3!8mGK!$Le3!5I^s!-m9!!'l,8n,EIH!$Hjm
-e,KE/mf3A"pXT9DVsjZdhsLFDJ+*I5rr@Q=!!$EsrrA\]!!"/6rr@Q=!!$EprrAt?!!(pQrr@Q=
-!!$EsrrA\]!!"/6rr@Q=!!$EirrL.Wh#IHmpOW@qrr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!5Iq$!''EI!:T^_!$Le3!8mGK!$Le3!5I^s!-m9!!'l,8n,EIH!$Hjm
-e,KE/mf3A"pXT9DVsjZdhsLFDJ+*I5rr@Q=!!$EsrrA\]!!"/6rr@Q=!!$EprrAt?!!(pQrr@Q=
-!!$EsrrA\]!!"/6rr@Q=!!$EirrL.Wh#IHmpOW@qrr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!5Iq$!)W+a!8mSO!$Le3!8mGK!$Le3!5I[r!T-`0!!(>rs7$$ihZ+dM
-s3puJcgCc5O4F71^[M4'^[;%$J+3L=&GZ8*J+3L=@.F6sTCDm]+S>[6J+3L=@.+$p^[V:(0\jDC
-p\OmiJ+3L=@.F6sTCDm]+S>[6J+3L=@-7IjpP0=:!!&(2s472M5lL``+OU4>~>
-df0;4rVup@JcG*:!$Lb2!5Iq$!)W+a!8mSO!$Le3!8mGK!$Le3!5I[r!T-`0!!(>rs7$$ihZ+dM
-s3puJcgCc5O4F71^[M4'^[;%$J+3L=&GZ8*J+3L=@.F6sTCDm]+S>[6J+3L=@.+$p^[V:(0\jDC
-p\OmiJ+3L=@.F6sTCDm]+S>[6J+3L=@-7IjpP0=:!!&(2s472M5lL``+OU4>~>
-df0;4rVup@JcG*:!$Lb2!5Iq$!)W+a!8mSO!$Le3!8mGK!$Le3!5I[r!T-`0!!(>rs7$$ihZ+dM
-s3puJcgCc5O4F71^[M4'^[;%$J+3L=&GZ8*J+3L=@.F6sTCDm]+S>[6J+3L=@.+$p^[V:(0\jDC
-p\OmiJ+3L=@.F6sTCDm]+S>[6J+3L=@-7IjpP0=:!!&(2s472M5lL``+OU4>~>
-df0;4rVup@JcG*:!$Lb2!5Iq$!+>6q!6=m7!$Le3!8mGK!$Le3!5IUp!nV)shuEajJcG6>!oEu#
-JcF0u!"eT!!>tR^rrCC7!!'e$rr@<6!!"/:rr@Q=!!$EsrrA\]!!"/6rr@Q=!!$EprrC[@!!".k
-rr@Q=!!$EsrrA\]!!"/6rr@Q=!!$EfrrVYU0]2p3)#&U]fDbh9rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5Iq$!+>6q!6=m7!$Le3!8mGK!$Le3!5IUp!nV)shuEajJcG6>!oEu#
-JcF0u!"eT!!>tR^rrCC7!!'e$rr@<6!!"/:rr@Q=!!$EsrrA\]!!"/6rr@Q=!!$EprrC[@!!".k
-rr@Q=!!$EsrrA\]!!"/6rr@Q=!!$EfrrVYU0]2p3)#&U]fDbh9rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5Iq$!+>6q!6=m7!$Le3!8mGK!$Le3!5IUp!nV)shuEajJcG6>!oEu#
-JcF0u!"eT!!>tR^rrCC7!!'e$rr@<6!!"/:rr@Q=!!$EsrrA\]!!"/6rr@Q=!!$EprrC[@!!".k
-rr@Q=!!$EsrrA\]!!"/6rr@Q=!!$EfrrVYU0]2p3)#&U]fDbh9rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5Iq$!+>6q!6=m7!$Le3!8mGK!$Le3!5ILm!iK][irB'%JcG6>!oEu#
-JcF0u!)W(`!0?":!l'6"r;QcSn,NHTmJd/_nGiPCq#:>DnGiPsnc&T]nGiP3o`"o@nGiPsmf*:E
-n,NI_ec,W!nGiPsnc&T]nGiP3o`"o@nGiPsiVru2ImDun!7-5rfDbh9rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5Iq$!+>6q!6=m7!$Le3!8mGK!$Le3!5ILm!iK][irB'%JcG6>!oEu#
-JcF0u!)W(`!0?":!l'6"r;QcSn,NHTmJd/_nGiPCq#:>DnGiPsnc&T]nGiP3o`"o@nGiPsmf*:E
-n,NI_ec,W!nGiPsnc&T]nGiP3o`"o@nGiPsiVru2ImDun!7-5rfDbh9rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5Iq$!+>6q!6=m7!$Le3!8mGK!$Le3!5ILm!iK][irB'%JcG6>!oEu#
-JcF0u!)W(`!0?":!l'6"r;QcSn,NHTmJd/_nGiPCq#:>DnGiPsnc&T]nGiP3o`"o@nGiPsmf*:E
-n,NI_ec,W!nGiPsnc&T]nGiP3o`"o@nGiPsiVru2ImDun!7-5rfDbh9rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5Iq$!'ouQ!8mSO!$Le3!8mGK!$Le3!5ICj"6ZRq5ir%Hmt(N/rrV'X
-+G'R@rr@Q:!!*r2i;WnG!!%NHrrMj"nGiQ.mJd/7nGiPcq#:>DnGiPsnc&T]nGiP3o`"o@nGiPs
-mJlYU!8#d$!.XM=!+>?s!2&c]!$Lq6!.XM=!+=X_"2B=N)!:l!YCZ`*rr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!5Iq$!'ouQ!8mSO!$Le3!8mGK!$Le3!5ICj"6ZRq5ir%Hmt(N/rrV'X
-+G'R@rr@Q:!!*r2i;WnG!!%NHrrMj"nGiQ.mJd/7nGiPcq#:>DnGiPsnc&T]nGiP3o`"o@nGiPs
-mJlYU!8#d$!.XM=!+>?s!2&c]!$Lq6!.XM=!+=X_"2B=N)!:l!YCZ`*rr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!5Iq$!'ouQ!8mSO!$Le3!8mGK!$Le3!5ICj"6ZRq5ir%Hmt(N/rrV'X
-+G'R@rr@Q:!!*r2i;WnG!!%NHrrMj"nGiQ.mJd/7nGiPcq#:>DnGiPsnc&T]nGiP3o`"o@nGiPs
-mJlYU!8#d$!.XM=!+>?s!2&c]!$Lq6!.XM=!+=X_"2B=N)!:l!YCZ`*rr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!5It%!V[H"!;HKn+RoF3ht6pK+RoF3^Y/Vhc_"knlMpq"JcG9?!oEu#
-JcF0u!9`_L!*J4[!-%o;!.XnG!'p&S!''EH!;Gs_!0?pT!.XM=!+>?s!2&c]!$Lq6!.XM=!+>3o
-!'p&S!.WQ!!.XM=!+>?s!2&c]!$Lq6!.XM=!+=L["7N^K39pPEO+I>_rr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!5It%!V[H"!;HKn+RoF3ht6pK+RoF3^Y/Vhc_"knlMpq"JcG9?!oEu#
-JcF0u!9`_L!*J4[!-%o;!.XnG!'p&S!''EH!;Gs_!0?pT!.XM=!+>?s!2&c]!$Lq6!.XM=!+>3o
-!'p&S!.WQ!!.XM=!+>?s!2&c]!$Lq6!.XM=!+=L["7N^K39pPEO+I>_rr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!5It%!V[H"!;HKn+RoF3ht6pK+RoF3^Y/Vhc_"knlMpq"JcG9?!oEu#
-JcF0u!9`_L!*J4[!-%o;!.XnG!'p&S!''EH!;Gs_!0?pT!.XM=!+>?s!2&c]!$Lq6!.XM=!+>3o
-!'p&S!.WQ!!.XM=!+>?s!2&c]!$Lq6!.XM=!+=L["7N^K39pPEO+I>_rr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!5It%!3bhk!#YJ1!$Le3!8mGK!$Le3!5I(a!mc?5mJm6bJcG9?!oEu#
-JcF-t!)W%_!/KY8!U!#P!!%NGrr@Q=!!*B"n,EC.n,NI7q#:>DnGiPsnc&T]nGiP3o`"o@nGiPs
-mJd09nGiP;ec,W!nGiPsnc&T]nGiP3o`"o@nGiPsec,^6T0VfE!,-r`fDbh9rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5It%!3bhk!#YJ1!$Le3!8mGK!$Le3!5I(a!mc?5mJm6bJcG9?!oEu#
-JcF-t!)W%_!/KY8!U!#P!!%NGrr@Q=!!*B"n,EC.n,NI7q#:>DnGiPsnc&T]nGiP3o`"o@nGiPs
-mJd09nGiP;ec,W!nGiPsnc&T]nGiP3o`"o@nGiPsec,^6T0VfE!,-r`fDbh9rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5It%!3bhk!#YJ1!$Le3!8mGK!$Le3!5I(a!mc?5mJm6bJcG9?!oEu#
-JcF-t!)W%_!/KY8!U!#P!!%NGrr@Q=!!*B"n,EC.n,NI7q#:>DnGiPsnc&T]nGiP3o`"o@nGiPs
-mJd09nGiP;ec,W!nGiPsnc&T]nGiP3o`"o@nGiPsec,^6T0VfE!,-r`fDbh9rVup@dJn^~>
-df0;4rVup@JcG*:!$Lb2!5It%!''EI!&40I!$Le3!8mGK!$Le3!0>V/!V_B<!!&XBs7-*jhZ+dM
-s3^iHcg1W3\*!\k[h/H;!.XnG!5J"'!2o;c!,1m&!"eo)!.XM=!+>?s!2&c]!$Lq6!.XM=!&3g?
-!5J"'!5I+b!.XM=!+>?s!2&c]!$Lq6!.XM=!&2k$!P^&P!!#Q@s4@8N5lL``+OU4>~>
-df0;4rVup@JcG*:!$Lb2!5It%!''EI!&40I!$Le3!8mGK!$Le3!0>V/!V_B<!!&XBs7-*jhZ+dM
-s3^iHcg1W3\*!\k[h/H;!.XnG!5J"'!2o;c!,1m&!"eo)!.XM=!+>?s!2&c]!$Lq6!.XM=!&3g?
-!5J"'!5I+b!.XM=!+>?s!2&c]!$Lq6!.XM=!&2k$!P^&P!!#Q@s4@8N5lL``+OU4>~>
-df0;4rVup@JcG*:!$Lb2!5It%!''EI!&40I!$Le3!8mGK!$Le3!0>V/!V_B<!!&XBs7-*jhZ+dM
-s3^iHcg1W3\*!\k[h/H;!.XnG!5J"'!2o;c!,1m&!"eo)!.XM=!+>?s!2&c]!$Lq6!.XM=!&3g?
-!5J"'!5I+b!.XM=!+>?s!2&c]!$Lq6!.XM=!&2k$!P^&P!!#Q@s4@8N5lL``+OU4>~>
-df0;4rVup@JcG*:!$Lb2!5J"&!-%?+!+>R$!$Le3!8mGK!$Le3!+>6p"(2+RpZVVWJ+*F<T7R%4
-rrV'X+G'R>rr>m_!!*A'l2LeYB_h]/J,B6HpB^9h!*Jaj!V[/q!!#jirr@Q=!!$EsrrA\]!!"/6
-rrA\\!!)c\rr<W#!!+5:j8T4j&-1V`rr@Q=!!$EsrrA\]!!"/6rrA\\!!)c^rr_-Y37mBo!T+1Q
-!!#98s4@8N5lL``+OU4>~>
-df0;4rVup@JcG*:!$Lb2!5J"&!-%?+!+>R$!$Le3!8mGK!$Le3!+>6p"(2+RpZVVWJ+*F<T7R%4
-rrV'X+G'R>rr>m_!!*A'l2LeYB_h]/J,B6HpB^9h!*Jaj!V[/q!!#jirr@Q=!!$EsrrA\]!!"/6
-rrA\\!!)c\rr<W#!!+5:j8T4j&-1V`rr@Q=!!$EsrrA\]!!"/6rrA\\!!)c^rr_-Y37mBo!T+1Q
-!!#98s4@8N5lL``+OU4>~>
-df0;4rVup@JcG*:!$Lb2!5J"&!-%?+!+>R$!$Le3!8mGK!$Le3!+>6p"(2+RpZVVWJ+*F<T7R%4
-rrV'X+G'R>rr>m_!!*A'l2LeYB_h]/J,B6HpB^9h!*Jaj!V[/q!!#jirr@Q=!!$EsrrA\]!!"/6
-rrA\\!!)c\rr<W#!!+5:j8T4j&-1V`rr@Q=!!$EsrrA\]!!"/6rrA\\!!)c^rr_-Y37mBo!T+1Q
-!!#98s4@8N5lL``+OU4>~>
-df0;4rVup@JcG*:!$Lb2!5J((!Uk!p!!'M&rr=23!!(pKrr>=S!!"_@rrc^0!'&m#rrD6O!!'KZ
-s7-*jhZ+dMs3UcGYNl/hB_Uln!OjKQ!!%NFrr>=S!!*A_nc&TMn,NHLp\t5CnGiPsnc&T]nGiP3
-o`"o`n,NI'mJd/_n,NGrjo5AM@/^-+htd9PJ+3L=@.F6sTCDm]+S>[6TC;g\^[M1*hZ*WfVs+-\
-8FZZ[=FpM(rr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!5J((!Uk!p!!'M&rr=23!!(pKrr>=S!!"_@rrc^0!'&m#rrD6O!!'KZ
-s7-*jhZ+dMs3UcGYNl/hB_Uln!OjKQ!!%NFrr>=S!!*A_nc&TMn,NHLp\t5CnGiPsnc&T]nGiP3
-o`"o`n,NI'mJd/_n,NGrjo5AM@/^-+htd9PJ+3L=@.F6sTCDm]+S>[6TC;g\^[M1*hZ*WfVs+-\
-8FZZ[=FpM(rr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!5J((!Uk!p!!'M&rr=23!!(pKrr>=S!!"_@rrc^0!'&m#rrD6O!!'KZ
-s7-*jhZ+dMs3UcGYNl/hB_Uln!OjKQ!!%NFrr>=S!!*A_nc&TMn,NHLp\t5CnGiPsnc&T]nGiP3
-o`"o`n,NI'mJd/_n,NGrjo5AM@/^-+htd9PJ+3L=@.F6sTCDm]+S>[6TC;g\^[M1*hZ*WfVs+-\
-8FZZ[=FpM(rr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$Lb2!5J.*!q2`um/R/(p\4[f+RoF3ht6pK8FQTZp[A+^@/^-,&;TQN!;Gs_
-!7uf%nc&[J!$Hjmci3u!lMprF^[M1'cUdd1!.XkF!0?UL!)W7d!Tt$a!!*Agp\t5CnGiPsnc&T]
-nGiP3o`"p+n,NHDmJd0amf3?$kl1_YNu7fq!8mVP!.XM=!+>?s!2&c]!$Lq6!5J"'!/L%C!8m_T
-!DqtErr?0k!!%7ps4@8N5lL``+OU4>~>
-df0;4rVup@JcG*:!$Lb2!5J.*!q2`um/R/(p\4[f+RoF3ht6pK8FQTZp[A+^@/^-,&;TQN!;Gs_
-!7uf%nc&[J!$Hjmci3u!lMprF^[M1'cUdd1!.XkF!0?UL!)W7d!Tt$a!!*Agp\t5CnGiPsnc&T]
-nGiP3o`"p+n,NHDmJd0amf3?$kl1_YNu7fq!8mVP!.XM=!+>?s!2&c]!$Lq6!5J"'!/L%C!8m_T
-!DqtErr?0k!!%7ps4@8N5lL``+OU4>~>
-df0;4rVup@JcG*:!$Lb2!5J.*!q2`um/R/(p\4[f+RoF3ht6pK8FQTZp[A+^@/^-,&;TQN!;Gs_
-!7uf%nc&[J!$Hjmci3u!lMprF^[M1'cUdd1!.XkF!0?UL!)W7d!Tt$a!!*Agp\t5CnGiPsnc&T]
-nGiP3o`"p+n,NHDmJd0amf3?$kl1_YNu7fq!8mVP!.XM=!+>?s!2&c]!$Lq6!5J"'!/L%C!8m_T
-!DqtErr?0k!!%7ps4@8N5lL``+OU4>~>
-df0;4rVup@JcG*:!$Lb2!5J:."R!Od=:"3m!,2*+!$Le3!8mGK!+>9r!-mu4!+>^)!ALG<rrBOt
-!!)J=s7-*jhZ+dMs3L]F\*3kn5elpj!M;@E!!%NFrrMj2n,NH\oD\emn,NH%pAY,BnGiPsnc&T]
-nGiP3o`"p3n,NJ+n*U,T0^euB;!73F!r%`mqZ$WRq>UGEnGiPsnc&T]nGiP3o`"p3n,NJ+n*p>W
-hu!HU#]Stnrr<o+!!&(2s4@8N5lL``+OU4>~>
-df0;4rVup@JcG*:!$Lb2!5J:."R!Od=:"3m!,2*+!$Le3!8mGK!+>9r!-mu4!+>^)!ALG<rrBOt
-!!)J=s7-*jhZ+dMs3L]F\*3kn5elpj!M;@E!!%NFrrMj2n,NH\oD\emn,NH%pAY,BnGiPsnc&T]
-nGiP3o`"p3n,NJ+n*U,T0^euB;!73F!r%`mqZ$WRq>UGEnGiPsnc&T]nGiP3o`"p3n,NJ+n*p>W
-hu!HU#]Stnrr<o+!!&(2s4@8N5lL``+OU4>~>
-df0;4rVup@JcG*:!$Lb2!5J:."R!Od=:"3m!,2*+!$Le3!8mGK!+>9r!-mu4!+>^)!ALG<rrBOt
-!!)J=s7-*jhZ+dMs3L]F\*3kn5elpj!M;@E!!%NFrrMj2n,NH\oD\emn,NH%pAY,BnGiPsnc&T]
-nGiP3o`"p3n,NJ+n*U,T0^euB;!73F!r%`mqZ$WRq>UGEnGiPsnc&T]nGiP3o`"p3n,NJ+n*p>W
-hu!HU#]Stnrr<o+!!&(2s4@8N5lL``+OU4>~>
-df0;4rVup@JcG*:!$KDa!71B=!$Le3!8mGK!,1j%!=5UrrrL0lrr2t+q>^R>O6?$4!V].T!!"^(
-s7$$ihZ+dMs3CWEE9I9)(g*->p\k*pn%XWK#kJ#rJ,0*EO7*&KTCr3a@.+'qch@A=J+3L=@.F6s
-TCDm]+S>[6hsUOG8FQ9P!oLcer;Qc#mJm;"L\L<<!l&Ccq#CEPq>UGEnGiPsnc&T]nGiP3o`"pK
-mf3AZn+QbbhnSpcs53YQ!XNJSn,EB[n,NI7JcF@%!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$KDa!71B=!$Le3!8mGK!,1j%!=5UrrrL0lrr2t+q>^R>O6?$4!V].T!!"^(
-s7$$ihZ+dMs3CWEE9I9)(g*->p\k*pn%XWK#kJ#rJ,0*EO7*&KTCr3a@.+'qch@A=J+3L=@.F6s
-TCDm]+S>[6hsUOG8FQ9P!oLcer;Qc#mJm;"L\L<<!l&Ccq#CEPq>UGEnGiPsnc&T]nGiP3o`"pK
-mf3AZn+QbbhnSpcs53YQ!XNJSn,EB[n,NI7JcF@%!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$KDa!71B=!$Le3!8mGK!,1j%!=5UrrrL0lrr2t+q>^R>O6?$4!V].T!!"^(
-s7$$ihZ+dMs3CWEE9I9)(g*->p\k*pn%XWK#kJ#rJ,0*EO7*&KTCr3a@.+'qch@A=J+3L=@.F6s
-TCDm]+S>[6hsUOG8FQ9P!oLcer;Qc#mJm;"L\L<<!l&Ccq#CEPq>UGEnGiPsnc&T]nGiP3o`"pK
-mf3AZn+QbbhnSpcs53YQ!XNJSn,EB[n,NI7JcF@%!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$KGb!+>L"!$Le3!8mGK!2&ZZ!FX7MrrgA]+95gKrr?I$!!5]`p[nIdf/W7"
-!0;^2nG`RI!$Hjmc2Rc/bl@`nq>UKa#k%`o=QfM[!P^&O!!#jgrr@Q=!!$EsrrA\]!!"/5rr<W!
-!!4jPp\Xsohj6k6!8m\R!''?G!si#,fD#:IkI5+Ap&G*Mq>UGEnGiPsnc&T]nGiP3oD\e%mf3DC
-Vt^)g#iCt>!!(pVs53PN![)a>o`"sdGjk\50S08Trr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$KGb!+>L"!$Le3!8mGK!2&ZZ!FX7MrrgA]+95gKrr?I$!!5]`p[nIdf/W7"
-!0;^2nG`RI!$Hjmc2Rc/bl@`nq>UKa#k%`o=QfM[!P^&O!!#jgrr@Q=!!$EsrrA\]!!"/5rr<W!
-!!4jPp\Xsohj6k6!8m\R!''?G!si#,fD#:IkI5+Ap&G*Mq>UGEnGiPsnc&T]nGiP3oD\e%mf3DC
-Vt^)g#iCt>!!(pVs53PN![)a>o`"sdGjk\50S08Trr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$KGb!+>L"!$Le3!8mGK!2&ZZ!FX7MrrgA]+95gKrr?I$!!5]`p[nIdf/W7"
-!0;^2nG`RI!$Hjmc2Rc/bl@`nq>UKa#k%`o=QfM[!P^&O!!#jgrr@Q=!!$EsrrA\]!!"/5rr<W!
-!!4jPp\Xsohj6k6!8m\R!''?G!si#,fD#:IkI5+Ap&G*Mq>UGEnGiPsnc&T]nGiP3oD\e%mf3DC
-Vt^)g#iCt>!!(pVs53PN![)a>o`"sdGjk\50S08Trr>=`!!".hs*t~>
-df0;4rVup@JcG*:!$KJc!>t:urr=23!!(pKrrCsC!!OK18:O`,qu?_)rr2t+o`,+#=GOZcqu6`D
-LH+`&!=8.Fs7$$ihZ+dMs3:QEk8;JE!.XeD!-%<*#<74:^V?C[+RK./ch7;<J+3L=@.F6sTCDm]
-+S5U5;!e5d#XCXo=?-0X!8m\R!70g."u&;=Im?79nGiRHq>UGEnGiPsnc&T]nGiP3oD\eem/R:q
-5X99j3;W[XhuE`6oDetIGc00jrr__f=:jp$!1/9:f)G_8rVup@dJn^~>
-df0;4rVup@JcG*:!$KJc!>t:urr=23!!(pKrrCsC!!OK18:O`,qu?_)rr2t+o`,+#=GOZcqu6`D
-LH+`&!=8.Fs7$$ihZ+dMs3:QEk8;JE!.XeD!-%<*#<74:^V?C[+RK./ch7;<J+3L=@.F6sTCDm]
-+S5U5;!e5d#XCXo=?-0X!8m\R!70g."u&;=Im?79nGiRHq>UGEnGiPsnc&T]nGiP3oD\eem/R:q
-5X99j3;W[XhuE`6oDetIGc00jrr__f=:jp$!1/9:f)G_8rVup@dJn^~>
-df0;4rVup@JcG*:!$KJc!>t:urr=23!!(pKrrCsC!!OK18:O`,qu?_)rr2t+o`,+#=GOZcqu6`D
-LH+`&!=8.Fs7$$ihZ+dMs3:QEk8;JE!.XeD!-%<*#<74:^V?C[+RK./ch7;<J+3L=@.F6sTCDm]
-+S5U5;!e5d#XCXo=?-0X!8m\R!70g."u&;=Im?79nGiRHq>UGEnGiPsnc&T]nGiP3oD\eem/R:q
-5X99j3;W[XhuE`6oDetIGc00jrr__f=:jp$!1/9:f)G_8rVup@dJn^~>
-df0;4rVup@JcG*:!$KJc!2oJh!$Le3!8mDJ!#X\q!+>g+!+==W!+:BXn,EIH!$Hjmbl7^a#gWJN
-J,'$Emi^'Z!+>I!!.XM=!+>?s!2&c]!$Ln5!0?(=!8mYQ!,0a[!8mVP!.XM=!+>?s!2&c]!$Ln5
-!0?(="5j.Yhph]-&FY2Mf)G_8rVup@dJn^~>
-df0;4rVup@JcG*:!$KJc!2oJh!$Le3!8mDJ!#X\q!+>g+!+==W!+:BXn,EIH!$Hjmbl7^a#gWJN
-J,'$Emi^'Z!+>I!!.XM=!+>?s!2&c]!$Ln5!0?(=!8mYQ!,0a[!8mVP!.XM=!+>?s!2&c]!$Ln5
-!0?(="5j.Yhph]-&FY2Mf)G_8rVup@dJn^~>
-df0;4rVup@JcG*:!$KJc!2oJh!$Le3!8mDJ!#X\q!+>g+!+==W!+:BXn,EIH!$Hjmbl7^a#gWJN
-J,'$Emi^'Z!+>I!!.XM=!+>?s!2&c]!$Ln5!0?(=!8mYQ!,0a[!8mVP!.XM=!+>?s!2&c]!$Ln5
-!0?(="5j.Yhph]-&FY2Mf)G_8rVup@dJn^~>
-df0;4rVup@JcG*:!$KMd!,2!(!$Le3!8mDJ!*J4\!+>g+!+=@X!>t!Ns6oshhZ+dMs3(EBO3[e+
-J+rsD`sC2q!@[^7rr@Q=!!$EsrrA\]!!"/5rrCC(!!(pPrr>U<!!(pPrr@Q=!!$EsrrA\]!!"/5
-rrCC(!!D-Ys52?,!2"iBec,V7rVup@dJn^~>
-df0;4rVup@JcG*:!$KMd!,2!(!$Le3!8mDJ!*J4\!+>g+!+=@X!>t!Ns6oshhZ+dMs3(EBO3[e+
-J+rsD`sC2q!@[^7rr@Q=!!$EsrrA\]!!"/5rrCC(!!(pPrr>U<!!(pPrr@Q=!!$EsrrA\]!!"/5
-rrCC(!!D-Ys52?,!2"iBec,V7rVup@dJn^~>
-df0;4rVup@JcG*:!$KMd!,2!(!$Le3!8mDJ!*J4\!+>g+!+=@X!>t!Ns6oshhZ+dMs3(EBO3[e+
-J+rsD`sC2q!@[^7rr@Q=!!$EsrrA\]!!"/5rrCC(!!(pPrr>U<!!(pPrr@Q=!!$EsrrA\]!!"/5
-rrCC(!!D-Ys52?,!2"iBec,V7rVup@dJn^~>
-df0;4rVup@JcG*:!$KPe!+>Bt!$Le3!8mDJ!70X)!+>g+!+=@X!4ROZmf*@G!$Hjmb5VL/#giVP
-J+imBQdu-;&E!*Z!.XM=!+>?s!2&c]!$Lk4!'oND!8mVP!V\:s!!(pPrr@Q=!!$EsrrA\]!!"/4
-rr>=D!!D-Ys52B-!*FgPeGfM6rVup@dJn^~>
-df0;4rVup@JcG*:!$KPe!+>Bt!$Le3!8mDJ!70X)!+>g+!+=@X!4ROZmf*@G!$Hjmb5VL/#giVP
-J+imBQdu-;&E!*Z!.XM=!+>?s!2&c]!$Lk4!'oND!8mVP!V\:s!!(pPrr@Q=!!$EsrrA\]!!"/4
-rr>=D!!D-Ys52B-!*FgPeGfM6rVup@dJn^~>
-df0;4rVup@JcG*:!$KPe!+>Bt!$Le3!8mDJ!70X)!+>g+!+=@X!4ROZmf*@G!$Hjmb5VL/#giVP
-J+imBQdu-;&E!*Z!.XM=!+>?s!2&c]!$Lk4!'oND!8mVP!V\:s!!(pPrr@Q=!!$EsrrA\]!!"/4
-rr>=D!!D-Ys52B-!*FgPeGfM6rVup@dJn^~>
-df0;4rVup@JcG*:!$KSf!+>?s!$Le3!8mAI!)V\U!+>g+!+=CY!,-r`mJd7F!$Hjmao;C^&CLOY
-J+`gA@+PAYYO_\nJ+3L=@.F6sTCDm]+S,O4YMoN^ht[3Pk9/7S!8mVP!.XM=!+>?s!2&c]!$Lk4
-!3bA^"5j.Yhq%i/+Qn=UeGfM6rVup@dJn^~>
-df0;4rVup@JcG*:!$KSf!+>?s!$Le3!8mAI!)V\U!+>g+!+=CY!,-r`mJd7F!$Hjmao;C^&CLOY
-J+`gA@+PAYYO_\nJ+3L=@.F6sTCDm]+S,O4YMoN^ht[3Pk9/7S!8mVP!.XM=!+>?s!2&c]!$Lk4
-!3bA^"5j.Yhq%i/+Qn=UeGfM6rVup@dJn^~>
-df0;4rVup@JcG*:!$KSf!+>?s!$Le3!8mAI!)V\U!+>g+!+=CY!,-r`mJd7F!$Hjmao;C^&CLOY
-J+`gA@+PAYYO_\nJ+3L=@.F6sTCDm]+S,O4YMoN^ht[3Pk9/7S!8mVP!.XM=!+>?s!2&c]!$Lk4
-!3bA^"5j.Yhq%i/+Qn=UeGfM6rVup@dJn^~>
-df0;4rVup@JcG*:!$KYh!=4JMrr=23!!(pIrrC+"!!$F+rr?HZ!!$DXs6TaehZ+dMs2b3@h_<LZ
-!.X\A!V].<!!&)Mrr@Q=!!$EsrrA\]!!"/3rr>%=!!(pNrrL_"eGoU,q>UGEnGiPsnc&T]nGiP3
-nc&SKirB2=s8V!/!!+5"JcF4!!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$KYh!=4JMrr=23!!(pIrrC+"!!$F+rr?HZ!!$DXs6TaehZ+dMs2b3@h_<LZ
-!.X\A!V].<!!&)Mrr@Q=!!$EsrrA\]!!"/3rr>%=!!(pNrrL_"eGoU,q>UGEnGiPsnc&T]nGiP3
-nc&SKirB2=s8V!/!!+5"JcF4!!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$KYh!=4JMrr=23!!(pIrrC+"!!$F+rr?HZ!!$DXs6TaehZ+dMs2b3@h_<LZ
-!.X\A!V].<!!&)Mrr@Q=!!$EsrrA\]!!"/3rr>%=!!(pNrrL_"eGoU,q>UGEnGiPsnc&T]nGiP3
-nc&SKirB2=s8V!/!!+5"JcF4!!'pM`!$K\hJ,~>
-df0;4rVup@JcG*:!$K\i!BA^"rr=23!!(pHrr@i8!!$F+rr?H[!!%M"s6K[dhZ+dMs2Y-?pK5rG
-!>r$3rr@#n!!*A/nG`K<nGiPsnc&T]nGiP3nc&XI(utYshtI'NpMe[`!8mVP!.XM=!+>?s!2&c]
-!$Lh3!T+aT!!D-Ys52K0!ANtns3goI5lL``+OU4>~>
-df0;4rVup@JcG*:!$K\i!BA^"rr=23!!(pHrr@i8!!$F+rr?H[!!%M"s6K[dhZ+dMs2Y-?pK5rG
-!>r$3rr@#n!!*A/nG`K<nGiPsnc&T]nGiP3nc&XI(utYshtI'NpMe[`!8mVP!.XM=!+>?s!2&c]
-!$Lh3!T+aT!!D-Ys52K0!ANtns3goI5lL``+OU4>~>
-df0;4rVup@JcG*:!$K\i!BA^"rr=23!!(pHrr@i8!!$F+rr?H[!!%M"s6K[dhZ+dMs2Y-?pK5rG
-!>r$3rr@#n!!*A/nG`K<nGiPsnc&T]nGiP3nc&XI(utYshtI'NpMe[`!8mVP!.XM=!+>?s!2&c]
-!$Lh3!T+aT!!D-Ys52K0!ANtns3goI5lL``+OU4>~>
-df0;4rVup@JcG*:!$Kbk!>(Ubrr=23!!(pGrr?0_!!$F+rr?H]!!*XlJcG$8!oEu#JcE^h!M:Lf
-!!4:0p[S7aQO)IK!>s/Orr@Q=!!$EsrrA\]!!"/2rrL.GjT#;<o`"s$(t\fghtd9PJ+3L=@.F6s
-TCDm]+RoC3`sCc,"5j.YhqA&2;"&u8dJj23rVup@dJn^~>
-df0;4rVup@JcG*:!$Kbk!>(Ubrr=23!!(pGrr?0_!!$F+rr?H]!!*XlJcG$8!oEu#JcE^h!M:Lf
-!!4:0p[S7aQO)IK!>s/Orr@Q=!!$EsrrA\]!!"/2rrL.GjT#;<o`"s$(t\fghtd9PJ+3L=@.F6s
-TCDm]+RoC3`sCc,"5j.YhqA&2;"&u8dJj23rVup@dJn^~>
-df0;4rVup@JcG*:!$Kbk!>(Ubrr=23!!(pGrr?0_!!$F+rr?H]!!*XlJcG$8!oEu#JcE^h!M:Lf
-!!4:0p[S7aQO)IK!>s/Orr@Q=!!$EsrrA\]!!"/2rrL.GjT#;<o`"s$(t\fghtd9PJ+3L=@.F6s
-TCDm]+RoC3`sCc,"5j.YhqA&2;"&u8dJj23rVup@dJn^~>
-df0;4rVup@JcG*:!$Khm![*9]m/I&.nGiRHnG`O`Gieu+@/g0,V]adq!EeN9s69ObhZ+dMs24j;
-T-2qi!B@"ErrKkOi;`mDkO/?MJ+3L=@.F6sTCDm]+Rf=2[i"6-!8mDJ!U!S>!!4!^p\FghJ+3L=
-@.F6sTCDm]+Rf=2[i"6-"Q07Zmnhg?!@YF.s3L]F5lL``+OU4>~>
-df0;4rVup@JcG*:!$Khm![*9]m/I&.nGiRHnG`O`Gieu+@/g0,V]adq!EeN9s69ObhZ+dMs24j;
-T-2qi!B@"ErrKkOi;`mDkO/?MJ+3L=@.F6sTCDm]+Rf=2[i"6-!8mDJ!U!S>!!4!^p\FghJ+3L=
-@.F6sTCDm]+Rf=2[i"6-"Q07Zmnhg?!@YF.s3L]F5lL``+OU4>~>
-df0;4rVup@JcG*:!$Khm![*9]m/I&.nGiRHnG`O`Gieu+@/g0,V]adq!EeN9s69ObhZ+dMs24j;
-T-2qi!B@"ErrKkOi;`mDkO/?MJ+3L=@.F6sTCDm]+Rf=2[i"6-!8mDJ!U!S>!!4!^p\FghJ+3L=
-@.F6sTCDm]+Rf=2[i"6-"Q07Zmnhg?!@YF.s3L]F5lL``+OU4>~>
-df0;4rVup@JcG*:!$Kno!Echqrr=23!!(pErrL.gkPtTjr;Qf$8DsOL0Y`2=kPkV@!$Hjm_>aP.
-+Q<A&+Fi;6rrVqU)!(_u5el[c!.XM=!+>?s!2&c]!$L_0!UjFZ!!(pHrrVA.(uPAp8>l1]!.XM=
-!+>?s!2&c]!$L_0!UjFZ!!(pTrrV)&&E3Zk&;U"2s3CWE5lL``+OU4>~>
-df0;4rVup@JcG*:!$Kno!Echqrr=23!!(pErrL.gkPtTjr;Qf$8DsOL0Y`2=kPkV@!$Hjm_>aP.
-+Q<A&+Fi;6rrVqU)!(_u5el[c!.XM=!+>?s!2&c]!$L_0!UjFZ!!(pHrrVA.(uPAp8>l1]!.XM=
-!+>?s!2&c]!$L_0!UjFZ!!(pTrrV)&&E3Zk&;U"2s3CWE5lL``+OU4>~>
-df0;4rVup@JcG*:!$Kno!Echqrr=23!!(pErrL.gkPtTjr;Qf$8DsOL0Y`2=kPkV@!$Hjm_>aP.
-+Q<A&+Fi;6rrVqU)!(_u5el[c!.XM=!+>?s!2&c]!$L_0!UjFZ!!(pHrrVA.(uPAp8>l1]!.XM=
-!+>?s!2&c]!$L_0!UjFZ!!(pTrrV)&&E3Zk&;U"2s3CWE5lL``+OU4>~>
-df0;4rVup@JcG*:!$L+u":.83QbV\_!$Le3!8m2D!r&<Hl2UflqYpWKO%AF6!YB%kJcFj3!oEu#
-JcELb!iK]SkPtZ4BZK67!r%`mkl:`L^Zth!J+3L=@.F6sTCDm]+RK+0f4Y`\!!(pErrJ`Ojo>Jh
-:m^A;rr@Q=!!$EsrrA\]!!"/.rrUec&F'5qhu!EUpTJ6Ik5YQSVtYcBbl7Z.rVup@dJn^~>
-df0;4rVup@JcG*:!$L+u":.83QbV\_!$Le3!8m2D!r&<Hl2UflqYpWKO%AF6!YB%kJcFj3!oEu#
-JcELb!iK]SkPtZ4BZK67!r%`mkl:`L^Zth!J+3L=@.F6sTCDm]+RK+0f4Y`\!!(pErrJ`Ojo>Jh
-:m^A;rr@Q=!!$EsrrA\]!!"/.rrUec&F'5qhu!EUpTJ6Ik5YQSVtYcBbl7Z.rVup@dJn^~>
-df0;4rVup@JcG*:!$L+u":.83QbV\_!$Le3!8m2D!r&<Hl2UflqYpWKO%AF6!YB%kJcFj3!oEu#
-JcELb!iK]SkPtZ4BZK67!r%`mkl:`L^Zth!J+3L=@.F6sTCDm]+RK+0f4Y`\!!(pErrJ`Ojo>Jh
-:m^A;rr@Q=!!$EsrrA\]!!"/.rrUec&F'5qhu!EUpTJ6Ik5YQSVtYcBbl7Z.rVup@dJn^~>
-df0;4rVup@JcG*:!6='5!9`8>!6=WE!;GdY"4r$)..[EA+AdQskP"oYpTJO$#k%`q3,#5aJcFd1
-!oEu#JcEC_"4rl9&F]Z%-toOAi;WoR[s0Ur!!<KtLX52a!8m=]!8$c@!9`me!6=C)"8AF,5k=sY
-#XEX,cg(N5n$dd3#k%`q-s28>nG`LGn\5(Unc&UPn\5(ElMgt\T5['e!!EQmGb<=Trr^T&80I@$
-"!CF$hgtgLrr>=`!!".hs*t~>
-df0;4rVup@JcG*:!6='5!9`8>!6=WE!;GdY"4r$)..[EA+AdQskP"oYpTJO$#k%`q3,#5aJcFd1
-!oEu#JcEC_"4rl9&F]Z%-toOAi;WoR[s0Ur!!<KtLX52a!8m=]!8$c@!9`me!6=C)"8AF,5k=sY
-#XEX,cg(N5n$dd3#k%`q-s28>nG`LGn\5(Unc&UPn\5(ElMgt\T5['e!!EQmGb<=Trr^T&80I@$
-"!CF$hgtgLrr>=`!!".hs*t~>
-df0;4rVup@JcG*:!6='5!9`8>!6=WE!;GdY"4r$)..[EA+AdQskP"oYpTJO$#k%`q3,#5aJcFd1
-!oEu#JcEC_"4rl9&F]Z%-toOAi;WoR[s0Ur!!<KtLX52a!8m=]!8$c@!9`me!6=C)"8AF,5k=sY
-#XEX,cg(N5n$dd3#k%`q-s28>nG`LGn\5(Unc&UPn\5(ElMgt\T5['e!!EQmGb<=Trr^T&80I@$
-"!CF$hgtgLrr>=`!!".hs*t~>
-df0;4rVup@JcC<$qu6ZjrkAHBrdOpOrkAHrli.+F[srluqEP0SIt*g*JcFU,!oEu#JcE7[#04Kn
-O+2X]r'1BmJ"OL=f`)0EYCBA65Tp"*"Y`2,BSXWmrrCCE^B9OHJ!^/L!70R&!RHi+IfNmQ5Ql=]
-O2(FZrrCCE^B9OHJ!^/L!71!2"S]ZlIpi(;"DE:7^[HaR`W#p'rVup@dJn^~>
-df0;4rVup@JcC<$qu6ZjrkAHBrdOpOrkAHrli.+F[srluqEP0SIt*g*JcFU,!oEu#JcE7[#04Kn
-O+2X]r'1BmJ"OL=f`)0EYCBA65Tp"*"Y`2,BSXWmrrCCE^B9OHJ!^/L!70R&!RHi+IfNmQ5Ql=]
-O2(FZrrCCE^B9OHJ!^/L!71!2"S]ZlIpi(;"DE:7^[HaR`W#p'rVup@dJn^~>
-df0;4rVup@JcC<$qu6ZjrkAHBrdOpOrkAHrli.+F[srluqEP0SIt*g*JcFU,!oEu#JcE7[#04Kn
-O+2X]r'1BmJ"OL=f`)0EYCBA65Tp"*"Y`2,BSXWmrrCCE^B9OHJ!^/L!70R&!RHi+IfNmQ5Ql=]
-O2(FZrrCCE^B9OHJ!^/L!71!2"S]ZlIpi(;"DE:7^[HaR`W#p'rVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcDJE!.XhF!8iA-JcF7"!5J@1!2"iBM>mQ@rVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcDJE!.XhF!8iA-JcF7"!5J@1!2"iBM>mQ@rVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcDJE!.XhF!8iA-JcF7"!5J@1!2"iBM>mQ@rVup@dJn^~>
-df0;4rVup@JcGEC!meWRrdXs_!:PL=JcE:\!oEu#JcEmm"4+`sL]2c*T>/.ujSo40q>^NQJcC<$
-eGfN`q>^MfJcCT,!'pM`!$K\hJ,~>
-df0;4rVup@JcGEC!meWRrdXs_!:PL=JcE:\!oEu#JcEmm"4+`sL]2c*T>/.ujSo40q>^NQJcC<$
-eGfN`q>^MfJcCT,!'pM`!$K\hJ,~>
-df0;4rVup@JcGEC!meWRrdXs_!:PL=JcE:\!oEu#JcEmm"4+`sL]2c*T>/.ujSo40q>^NQJcC<$
-eGfN`q>^MfJcCT,!'pM`!$K\hJ,~>
-df0;4rVup@JcGNF!j>]3p](@DO6;)oqu6YWr-n^ml2T\V!;D-G!oEu#JcF$q!nWJuo`,(*=JtWO
-rr@QF!!(p/rr@$75QFo;s7$$gn*7XfpTXYt^\Rp1T7R$!rr>=`!!".hs*t~>
-df0;4rVup@JcGNF!j>]3p](@DO6;)oqu6YWr-n^ml2T\V!;D-G!oEu#JcF$q!nWJuo`,(*=JtWO
-rr@QF!!(p/rr@$75QFo;s7$$gn*7XfpTXYt^\Rp1T7R$!rr>=`!!".hs*t~>
-df0;4rVup@JcGNF!j>]3p](@DO6;)oqu6YWr-n^ml2T\V!;D-G!oEu#JcF$q!nWJuo`,(*=JtWO
-rr@QF!!(p/rr@$75QFo;s7$$gn*7XfpTXYt^\Rp1T7R$!rr>=`!!".hs*t~>
-df0;4rVup@JcGTH!IksW!!,pJJcG]K!!rK&!2&NUhuEc7KDu#1!$HjmdJj:2GUVt[!D&jJrr@QF
-!!(p/rr>=\!!"-ms7$$g^Zke!hm!+\^\Rp1T7R$!rr>=`!!".hs*t~>
-df0;4rVup@JcGTH!IksW!!,pJJcG]K!!rK&!2&NUhuEc7KDu#1!$HjmdJj:2GUVt[!D&jJrr@QF
-!!(p/rr>=\!!"-ms7$$g^Zke!hm!+\^\Rp1T7R$!rr>=`!!".hs*t~>
-df0;4rVup@JcGTH!IksW!!,pJJcG]K!!rK&!2&NUhuEc7KDu#1!$HjmdJj:2GUVt[!D&jJrr@QF
-!!(p/rr>=\!!"-ms7$$g^Zke!hm!+\^\Rp1T7R$!rr>=`!!".hs*t~>
-df0;4rVup@JcGZJ!S9="!!*Y'JcGcM!8%)J!2&NUhuEc7KDu#1!$Hjme,KLDIh:lF!@YGDrr@QF
-!!(p/rr>=\!!".;s8'J1f@Bm$^Zke!hm!+\^\Rp1T7R$!rr>=`!!".hs*t~>
-df0;4rVup@JcGZJ!S9="!!*Y'JcGcM!8%)J!2&NUhuEc7KDu#1!$Hjme,KLDIh:lF!@YGDrr@QF
-!!(p/rr>=\!!".;s8'J1f@Bm$^Zke!hm!+\^\Rp1T7R$!rr>=`!!".hs*t~>
-df0;4rVup@JcGZJ!S9="!!*Y'JcGcM!8%)J!2&NUhuEc7KDu#1!$Hjme,KLDIh:lF!@YGDrr@QF
-!!(p/rr>=\!!".;s8'J1f@Bm$^Zke!hm!+\^\Rp1T7R$!rr>=`!!".hs*t~>
-df0;4rVup@JcG]K!KRNQ!!-L%Jc>_*qZ$Vgl2TZA!8iG/!oEu#JcF7"!N-ds!!,XBmf*9:q>^NQ
-f`(q:q>^L<V#U8k!+=@W!5Ie!!8k$\!5J@1!2"iBM>mQ@rVup@dJn^~>
-df0;4rVup@JcG]K!KRNQ!!-L%Jc>_*qZ$Vgl2TZA!8iG/!oEu#JcF7"!N-ds!!,XBmf*9:q>^NQ
-f`(q:q>^L<V#U8k!+=@W!5Ie!!8k$\!5J@1!2"iBM>mQ@rVup@dJn^~>
-df0;4rVup@JcG]K!KRNQ!!-L%Jc>_*qZ$Vgl2TZA!8iG/!oEu#JcF7"!N-ds!!,XBmf*9:q>^NQ
-f`(q:q>^L<V#U8k!+=@W!5Ie!!8k$\!5J@1!2"iBM>mQ@rVup@dJn^~>
-df0;4rVup@JcG`L!2o&]!)S7H!&49M!2&NUhuEc7KDu#1!$Hjmf)GdF8E'ULTC;d[J,0-Fhq7r/
-5l(H\+Jf&6!!$EWrrBh!!!(o\rrBh1!!&XBs,$aU5lL``+OU4>~>
-df0;4rVup@JcG`L!2o&]!)S7H!&49M!2&NUhuEc7KDu#1!$Hjmf)GdF8E'ULTC;d[J,0-Fhq7r/
-5l(H\+Jf&6!!$EWrrBh!!!(o\rrBh1!!&XBs,$aU5lL``+OU4>~>
-df0;4rVup@JcG`L!2o&]!)S7H!&49M!2&NUhuEc7KDu#1!$Hjmf)GdF8E'ULTC;d[J,0-Fhq7r/
-5l(H\+Jf&6!!$EWrrBh!!!(o\rrBh1!!&XBs,$aU5lL``+OU4>~>
-df0;4rVup@JcGcM!RD&8!!&(4rr@iN!!&YUs53kWhh1q1hZ+dMs4@8Ommu@:!.XM<!.XhF!8lH/
-!'pA\!$J*;q>^M'ec,Wal2UhAYl=^<q>^MfJcCT,!'pM`!$K\hJ,~>
-df0;4rVup@JcGcM!RD&8!!&(4rr@iN!!&YUs53kWhh1q1hZ+dMs4@8Ommu@:!.XM<!.XhF!8lH/
-!'pA\!$J*;q>^M'ec,Wal2UhAYl=^<q>^MfJcCT,!'pM`!$K\hJ,~>
-df0;4rVup@JcGcM!RD&8!!&(4rr@iN!!&YUs53kWhh1q1hZ+dMs4@8Ommu@:!.XM<!.XhF!8lH/
-!'pA\!$J*;q>^M'ec,Wal2UhAYl=^<q>^MfJcCT,!'pM`!$K\hJ,~>
-df0;4rVup@Jc>fOk90O"![)ubrkAJ`@.sX$^P2[gQO*Ef!2&NUhuEc7KDu#1!$Hjmf`)!@0_GDI
-#XDMiIfVegoDel9nc&T=q>^NQf`(q:q>^L<V#U8k!+=@W!71L,!#YP4!$M,'!9^Td!5J@1!2"iB
-M>mQ@rVup@dJn^~>
-df0;4rVup@Jc>fOk90O"![)ubrkAJ`@.sX$^P2[gQO*Ef!2&NUhuEc7KDu#1!$Hjmf`)!@0_GDI
-#XDMiIfVegoDel9nc&T=q>^NQf`(q:q>^L<V#U8k!+=@W!71L,!#YP4!$M,'!9^Td!5J@1!2"iB
-M>mQ@rVup@dJn^~>
-df0;4rVup@Jc>fOk90O"![)ubrkAJ`@.sX$^P2[gQO*Ef!2&NUhuEc7KDu#1!$Hjmf`)!@0_GDI
-#XDMiIfVegoDel9nc&T=q>^NQf`(q:q>^L<V#U8k!+=@W!71L,!#YP4!$M,'!9^Td!5J@1!2"iB
-M>mQ@rVup@dJn^~>
-df0;4rVup@Jc>cNE;9J7(n^X(!T.#T!!*r2M#RLb8GE/bTBZCP!!!;g5QKu"rrV'X+G'RGrrM::
-pAb:,@'B>"rrV)=0_PJHB_)0'J,0-Fhq7r/5l(H\+Jf&6!!$EOrr?I'!!%MIrrBh1!!&XBs,$aU
-5lL``+OU4>~>
-df0;4rVup@Jc>cNE;9J7(n^X(!T.#T!!*r2M#RLb8GE/bTBZCP!!!;g5QKu"rrV'X+G'RGrrM::
-pAb:,@'B>"rrV)=0_PJHB_)0'J,0-Fhq7r/5l(H\+Jf&6!!$EOrr?I'!!%MIrrBh1!!&XBs,$aU
-5lL``+OU4>~>
-df0;4rVup@Jc>cNE;9J7(n^X(!T.#T!!*r2M#RLb8GE/bTBZCP!!!;g5QKu"rrV'X+G'RGrrM::
-pAb:,@'B>"rrV)=0_PJHB_)0'J,0-Fhq7r/5l(H\+Jf&6!!$EOrr?I'!!%MIrrBh1!!&XBs,$aU
-5lL``+OU4>~>
-df0;4rVup@Jc>c6#l4N%+Q)nm!.XeE!0<6A!:Tp%"/gWN&G?)(TBZCP!!"-ms69ObhZ+dMs4RDP
-=SDdr;!7EL!OjKO!!&Y_rr@QF!!(p/rrCCA^Au<Ms7u]q@*S]O@/9j'J#NAI^\Rp1T7R$!rr>=`
-!!".hs*t~>
-df0;4rVup@Jc>c6#l4N%+Q)nm!.XeE!0<6A!:Tp%"/gWN&G?)(TBZCP!!"-ms69ObhZ+dMs4RDP
-=SDdr;!7EL!OjKO!!&Y_rr@QF!!(p/rrCCA^Au<Ms7u]q@*S]O@/9j'J#NAI^\Rp1T7R$!rr>=`
-!!".hs*t~>
-df0;4rVup@Jc>c6#l4N%+Q)nm!.XeE!0<6A!:Tp%"/gWN&G?)(TBZCP!!"-ms69ObhZ+dMs4RDP
-=SDdr;!7EL!OjKO!!&Y_rr@QF!!(p/rrCCA^Au<Ms7u]q@*S]O@/9j'J#NAI^\Rp1T7R$!rr>=`
-!!".hs*t~>
-df0;4rVup@Jc>^hq>^O=ht6pKGkqC?+HZU'^[D.&TBZCP!!"-ms69ObhZ+dMs4[JQVt^5m(q8u6
-!r%0Mq#CF,kOecSJ,0-Fhgtgus7u]q@*S]O@/9j'J#NAI^\Rp1T7R$!rr>=`!!".hs*t~>
-df0;4rVup@Jc>^hq>^O=ht6pKGkqC?+HZU'^[D.&TBZCP!!"-ms69ObhZ+dMs4[JQVt^5m(q8u6
-!r%0Mq#CF,kOecSJ,0-Fhgtgus7u]q@*S]O@/9j'J#NAI^\Rp1T7R$!rr>=`!!".hs*t~>
-df0;4rVup@Jc>^hq>^O=ht6pKGkqC?+HZU'^[D.&TBZCP!!"-ms69ObhZ+dMs4[JQVt^5m(q8u6
-!r%0Mq#CF,kOecSJ,0-Fhgtgus7u]q@*S]O@/9j'J#NAI^\Rp1T7R$!rr>=`!!".hs*t~>
-df0;4rVup@K)Yl7#l4N$YOhbppDE`,!3_Ob!5It&!2&NUq>^L<JcG!7!oEu#JcFL)!Tt$i!!+5"
-m/I*q#l+H#5kP'VJ,0-Fhgtgus7u]q@*S]O@/9j'J#NAI^\Rp1T7R$!rr>=`!!".hs*t~>
-df0;4rVup@K)Yl7#l4N$YOhbppDE`,!3_Ob!5It&!2&NUq>^L<JcG!7!oEu#JcFL)!Tt$i!!+5"
-m/I*q#l+H#5kP'VJ,0-Fhgtgus7u]q@*S]O@/9j'J#NAI^\Rp1T7R$!rr>=`!!".hs*t~>
-df0;4rVup@K)Yl7#l4N$YOhbppDE`,!3_Ob!5It&!2&NUq>^L<JcG!7!oEu#JcFL)!Tt$i!!+5"
-m/I*q#l+H#5kP'VJ,0-Fhgtgus7u]q@*S]O@/9j'J#NAI^\Rp1T7R$!rr>=`!!".hs*t~>
-df0;4rVup@K)Yh#q>^LLnc&T]q>^LTOoGErmf3?[l2US[!$Hjml2LhB!$Hjmg]%7Eq#CF<hs14B
-[g;d0!13BY!.XhF!8iA-o)JOd!+=(O!+>X'!.UsI!5J@1!2"iBM>mQ@rVup@dJn^~>
-df0;4rVup@K)Yh#q>^LLnc&T]q>^LTOoGErmf3?[l2US[!$Hjml2LhB!$Hjmg]%7Eq#CF<hs14B
-[g;d0!13BY!.XhF!8iA-o)JOd!+=(O!+>X'!.UsI!5J@1!2"iBM>mQ@rVup@dJn^~>
-df0;4rVup@K)Yh#q>^LLnc&T]q>^LTOoGErmf3?[l2US[!$Hjml2LhB!$Hjmg]%7Eq#CF<hs14B
-[g;d0!13BY!.XhF!8iA-o)JOd!+=(O!+>X'!.UsI!5J@1!2"iBM>mQ@rVup@dJn^~>
-df0;4rVup@K)Yg9q>^N!nG`J2q>^NYP5bNsmf3?[l2US[!$Hjml2LhB!$Hjmh#@AXq#CF4hrt(?
-Vtg;n#l"&m!.XhF!8iA-o)JOd!+=(O!+>X'!.UsI!5J@1!2"iBM>mQ@rVup@dJn^~>
-df0;4rVup@K)Yg9q>^N!nG`J2q>^NYP5bNsmf3?[l2US[!$Hjml2LhB!$Hjmh#@AXq#CF4hrt(?
-Vtg;n#l"&m!.XhF!8iA-o)JOd!+=(O!+>X'!.UsI!5J@1!2"iBM>mQ@rVup@dJn^~>
-df0;4rVup@K)Yg9q>^N!nG`J2q>^NYP5bNsmf3?[l2US[!$Hjml2LhB!$Hjmh#@AXq#CF4hrt(?
-Vtg;n#l"&m!.XhF!8iA-o)JOd!+=(O!+>X'!.UsI!5J@1!2"iBM>mQ@rVup@dJn^~>
-df0;4rVup@KDtuH#l=T&&GP\o!-n>?!2#GS!5It&!2&NUq>^L<JcG!7!oEu#JcFO*!'p>[!2&ER
-!)WIk!0?jR!.XhF!8iA-o)JOd!+=(O!+>X'!.UsI!5J@1!2"iBM>mQ@rVup@dJn^~>
-df0;4rVup@KDtuH#l=T&&GP\o!-n>?!2#GS!5It&!2&NUq>^L<JcG!7!oEu#JcFO*!'p>[!2&ER
-!)WIk!0?jR!.XhF!8iA-o)JOd!+=(O!+>X'!.UsI!5J@1!2"iBM>mQ@rVup@dJn^~>
-df0;4rVup@KDtuH#l=T&&GP\o!-n>?!2#GS!5It&!2&NUq>^L<JcG!7!oEu#JcFO*!'p>[!2&ER
-!)WIk!0?jR!.XhF!8iA-o)JOd!+=(O!+>X'!.UsI!5J@1!2"iBM>mQ@rVup@dJn^~>
-df0;4rVup@KDtq\q>^Lln,EC&q>^M'P5bO>pO<0>q>^Mfl2US[!$Hjml2LhB!$Hjmh>[K$q#CCK
-jo5A=#l4N$./*Z@J,0-Fht[3VhnQXMJ$6W=aSuP'^V>8JLVLU]h#@B;rP&@$nGi=b!+=(O!+>X'
-!.Wo+#OfF:It+B2kMZ@FcbGfrJ![q%qu6Z2q>^Mfl2M%H^V>8JLVLU]JcDbM!'pM`!$K\hJ,~>
-df0;4rVup@KDtq\q>^Lln,EC&q>^M'P5bO>pO<0>q>^Mfl2US[!$Hjml2LhB!$Hjmh>[K$q#CCK
-jo5A=#l4N$./*Z@J,0-Fht[3VhnQXMJ$6W=aSuP'^V>8JLVLU]h#@B;rP&@$nGi=b!+=(O!+>X'
-!.Wo+#OfF:It+B2kMZ@FcbGfrJ![q%qu6Z2q>^Mfl2M%H^V>8JLVLU]JcDbM!'pM`!$K\hJ,~>
-df0;4rVup@KDtq\q>^Lln,EC&q>^M'P5bO>pO<0>q>^Mfl2US[!$Hjml2LhB!$Hjmh>[K$q#CCK
-jo5A=#l4N$./*Z@J,0-Fht[3VhnQXMJ$6W=aSuP'^V>8JLVLU]h#@B;rP&@$nGi=b!+=(O!+>X'
-!.Wo+#OfF:It+B2kMZ@FcbGfrJ![q%qu6Z2q>^Mfl2M%H^V>8JLVLU]JcDbM!'pM`!$K\hJ,~>
-df0;4rVup@KDtpjq>^Mfmf*7uqZ$U=L]7@Hq>^Mfl2US[!$Hjml2LhB!$Hjmh>[Ioq#CE@jSo4)
-q#CDup\t5Cq>^NQqu6`DE#ABN!\fu0oDeBr!6=L,"7Mja&GQ5-+CLi9jo5D>QVdGW!^M">qYpQa
-r4i(.!(cas!8$!*!+>X'!.XP=!8mXf!;HBj!oK%mq#CIMJ*5to!j>uCq#CU):nRL^s1eC1!2&ZY
-"7Mja&GQ5-+CLi9p&>$TpqQ1q!;H<(!7uf%j8T*ErVup@dJn^~>
-df0;4rVup@KDtpjq>^Mfmf*7uqZ$U=L]7@Hq>^Mfl2US[!$Hjml2LhB!$Hjmh>[Ioq#CE@jSo4)
-q#CDup\t5Cq>^NQqu6`DE#ABN!\fu0oDeBr!6=L,"7Mja&GQ5-+CLi9jo5D>QVdGW!^M">qYpQa
-r4i(.!(cas!8$!*!+>X'!.XP=!8mXf!;HBj!oK%mq#CIMJ*5to!j>uCq#CU):nRL^s1eC1!2&ZY
-"7Mja&GQ5-+CLi9p&>$TpqQ1q!;H<(!7uf%j8T*ErVup@dJn^~>
-df0;4rVup@KDtpjq>^Mfmf*7uqZ$U=L]7@Hq>^Mfl2US[!$Hjml2LhB!$Hjmh>[Ioq#CE@jSo4)
-q#CDup\t5Cq>^NQqu6`DE#ABN!\fu0oDeBr!6=L,"7Mja&GQ5-+CLi9jo5D>QVdGW!^M">qYpQa
-r4i(.!(cas!8$!*!+>X'!.XP=!8mXf!;HBj!oK%mq#CIMJ*5to!j>uCq#CU):nRL^s1eC1!2&ZY
-"7Mja&GQ5-+CLi9p&>$TpqQ1q!;H<(!7uf%j8T*ErVup@dJn^~>
-df0;4rVup@KDtp*q>^NAmf*8Xq>^NQM#RIIq>^Mfl2US[!$Hjml2LhB!$HjmhZ!WF#l4N$8E9^N
-mg/ai!)WFi!.XhF!8mbT!Oj3D!!*@\o`+I^!$Lb1!U!ST!!4!upZhb[pQ$`n!!4!^hu3QT^ZPRs
-@,(\]@/9j'J+<O=J,0-Fhu3QUhamA>!YBkUlMgmG&G#l(#]StAq>^Mfn,EFO=Rc@m(m"FcrrMj:
-q#CD]mJd09q>^O%c[l,Vrr>=`!!".hs*t~>
-df0;4rVup@KDtp*q>^NAmf*8Xq>^NQM#RIIq>^Mfl2US[!$Hjml2LhB!$HjmhZ!WF#l4N$8E9^N
-mg/ai!)WFi!.XhF!8mbT!Oj3D!!*@\o`+I^!$Lb1!U!ST!!4!upZhb[pQ$`n!!4!^hu3QT^ZPRs
-@,(\]@/9j'J+<O=J,0-Fhu3QUhamA>!YBkUlMgmG&G#l(#]StAq>^Mfn,EFO=Rc@m(m"FcrrMj:
-q#CD]mJd09q>^O%c[l,Vrr>=`!!".hs*t~>
-df0;4rVup@KDtp*q>^NAmf*8Xq>^NQM#RIIq>^Mfl2US[!$Hjml2LhB!$HjmhZ!WF#l4N$8E9^N
-mg/ai!)WFi!.XhF!8mbT!Oj3D!!*@\o`+I^!$Lb1!U!ST!!4!upZhb[pQ$`n!!4!^hu3QT^ZPRs
-@,(\]@/9j'J+<O=J,0-Fhu3QUhamA>!YBkUlMgmG&G#l(#]StAq>^Mfn,EFO=Rc@m(m"FcrrMj:
-q#CD]mJd09q>^O%c[l,Vrr>=`!!".hs*t~>
-df0;4rVup@KDtoWq>^Nimf*9+q>^MnM#RIIq>^Mfl2US[!$Hjml2LhB!$HjmhZ!SBq#CDmir9!\
-q#CEPq#:>Dq>^ZUs8UtIn,NJKfCo78!!"/3rrVqE#jqZn(shRK!LFYj!!Gibp]&"k!!$E]rr?I'
-!!%N=rr@QF!!V9[s7^aDnGiSDn*U,Ua#NMf!=26m!!&Y]rrVqE#jqZn(shsV!5J=0!=7lWrrLFO
-q>^MNJcFa0!'pM`!$K\hJ,~>
-df0;4rVup@KDtoWq>^Nimf*9+q>^MnM#RIIq>^Mfl2US[!$Hjml2LhB!$HjmhZ!SBq#CDmir9!\
-q#CEPq#:>Dq>^ZUs8UtIn,NJKfCo78!!"/3rrVqE#jqZn(shRK!LFYj!!Gibp]&"k!!$E]rr?I'
-!!%N=rr@QF!!V9[s7^aDnGiSDn*U,Ua#NMf!=26m!!&Y]rrVqE#jqZn(shsV!5J=0!=7lWrrLFO
-q>^MNJcFa0!'pM`!$K\hJ,~>
-df0;4rVup@KDtoWq>^Nimf*9+q>^MnM#RIIq>^Mfl2US[!$Hjml2LhB!$HjmhZ!SBq#CDmir9!\
-q#CEPq#:>Dq>^ZUs8UtIn,NJKfCo78!!"/3rrVqE#jqZn(shRK!LFYj!!Gibp]&"k!!$E]rr?I'
-!!%N=rr@QF!!V9[s7^aDnGiSDn*U,Ua#NMf!=26m!!&Y]rrVqE#jqZn(shsV!5J=0!=7lWrrLFO
-q>^MNJcFa0!'pM`!$K\hJ,~>
-df0;4rVup@K`;&8q>^L4mJd0Iq>^MFM#RIIq>^Mfl2US[!$Hjml2LhB!$HjmhZ!RXq>^O-pYu2Q
-\+p"(TD8EdJ,0-IhuB#KmJm8!chIJ1!!"/4rrM""lMpqkYODJlf-ok`!\")`k5YKig]%7]q>^MF
-nc&T=q>^WTs3DhU!!+eBn,EBCj8]1Po)AaJ+R9".#d="&!-%`6!(cVZ!V\;E!!#98s5EtX5lL``
-+OU4>~>
-df0;4rVup@K`;&8q>^L4mJd0Iq>^MFM#RIIq>^Mfl2US[!$Hjml2LhB!$HjmhZ!RXq>^O-pYu2Q
-\+p"(TD8EdJ,0-IhuB#KmJm8!chIJ1!!"/4rrM""lMpqkYODJlf-ok`!\")`k5YKig]%7]q>^MF
-nc&T=q>^WTs3DhU!!+eBn,EBCj8]1Po)AaJ+R9".#d="&!-%`6!(cVZ!V\;E!!#98s5EtX5lL``
-+OU4>~>
-df0;4rVup@K`;&8q>^L4mJd0Iq>^MFM#RIIq>^Mfl2US[!$Hjml2LhB!$HjmhZ!RXq>^O-pYu2Q
-\+p"(TD8EdJ,0-IhuB#KmJm8!chIJ1!!"/4rrM""lMpqkYODJlf-ok`!\")`k5YKig]%7]q>^MF
-nc&T=q>^WTs3DhU!!+eBn,EBCj8]1Po)AaJ+R9".#d="&!-%`6!(cVZ!V\;E!!#98s5EtX5lL``
-+OU4>~>
-df0;4rVup@K`;%eq>^L\mJd0qq>^LtM#RIIq>^Mfl2US[!$Hjml2LhB!$HjmhZ!Quq>^M'i;Wco
-q>^M/q#:>Dq>^QJB^5X!(uP,gnc/Y4oD\j;&Ej)oTCMp^^C]T/![.NXk5YKig]%7]q>^MFnc&T=
-q>^TSV[2Vh!(cVZ!.X#/!2&l_!RD>@!!&YdrrMjBq#CDmnc&TEq>^O-hgtgdrr>=`!!".hs*t~>
-df0;4rVup@K`;%eq>^L\mJd0qq>^LtM#RIIq>^Mfl2US[!$Hjml2LhB!$HjmhZ!Quq>^M'i;Wco
-q>^M/q#:>Dq>^QJB^5X!(uP,gnc/Y4oD\j;&Ej)oTCMp^^C]T/![.NXk5YKig]%7]q>^MFnc&T=
-q>^TSV[2Vh!(cVZ!.X#/!2&l_!RD>@!!&YdrrMjBq#CDmnc&TEq>^O-hgtgdrr>=`!!".hs*t~>
-df0;4rVup@K`;%eq>^L\mJd0qq>^LtM#RIIq>^Mfl2US[!$Hjml2LhB!$HjmhZ!Quq>^M'i;Wco
-q>^M/q#:>Dq>^QJB^5X!(uP,gnc/Y4oD\j;&Ej)oTCMp^^C]T/![.NXk5YKig]%7]q>^MFnc&T=
-q>^TSV[2Vh!(cVZ!.X#/!2&l_!RD>@!!&YdrrMjBq#CDmnc&TEq>^O-hgtgdrr>=`!!".hs*t~>
-df0;4rVup@K`;%Eq>^M'mJd1Dq>^LTM#RIIq>^Mfl2US[!$Hjml2LhB!$Hjmhu<]>q#CE(i;Wdr
-q>^LLq#:>Dq>^LDkl:`,n+m"S!!"/6rrKS?p&G1;5X5nS!!*AGoD\ih#j20h+TK4>!!$E]rr?I'
-!!%N=rr@QF!!$-c!!&Y^rr@Q.!!&Y`rrKS?p&G1;5X5nS!!*AGq#:?7q#CF4kO\]Sf*M3Q!2kDJ
-i;WdBrVup@dJn^~>
-df0;4rVup@K`;%Eq>^M'mJd1Dq>^LTM#RIIq>^Mfl2US[!$Hjml2LhB!$Hjmhu<]>q#CE(i;Wdr
-q>^LLq#:>Dq>^LDkl:`,n+m"S!!"/6rrKS?p&G1;5X5nS!!*AGoD\ih#j20h+TK4>!!$E]rr?I'
-!!%N=rr@QF!!$-c!!&Y^rr@Q.!!&Y`rrKS?p&G1;5X5nS!!*AGq#:?7q#CF4kO\]Sf*M3Q!2kDJ
-i;WdBrVup@dJn^~>
-df0;4rVup@K`;%Eq>^M'mJd1Dq>^LTM#RIIq>^Mfl2US[!$Hjml2LhB!$Hjmhu<]>q#CE(i;Wdr
-q>^LLq#:>Dq>^LDkl:`,n+m"S!!"/6rrKS?p&G1;5X5nS!!*AGoD\ih#j20h+TK4>!!$E]rr?I'
-!!%N=rr@QF!!$-c!!&Y^rr@Q.!!&Y`rrKS?p&G1;5X5nS!!*AGq#:?7q#CF4kO\]Sf*M3Q!2kDJ
-i;WdBrVup@dJn^~>
-df0;4rVup@K`;%%q>^M?mJd1Lq>^L4M#RIIq>^Mfl2US[!$Hjml2LhB!$Hjmhu<\[q#CE`i;WeL
-q#CE`q>UGEmf3DK5To_"!-%c6nc/Y4p&>'E#l+H%0TXi_rrU5c)#4.4+Rf"'!QPK?!!j-DIugd_
-=?m/f!!4;C^ZPRs@,(\]@/9j'J+<O=J+*F?#XCX'p&G+)n+?V[\+Te&-s6Iu!a%]1oDel`p&>'E
-#l+H%0TXi_rrU5c)#4.4+Rf+*!.XeE!+>Eu!''fT!+:BXhu<[ArVup@dJn^~>
-df0;4rVup@K`;%%q>^M?mJd1Lq>^L4M#RIIq>^Mfl2US[!$Hjml2LhB!$Hjmhu<\[q#CE`i;WeL
-q#CE`q>UGEmf3DK5To_"!-%c6nc/Y4p&>'E#l+H%0TXi_rrU5c)#4.4+Rf"'!QPK?!!j-DIugd_
-=?m/f!!4;C^ZPRs@,(\]@/9j'J+<O=J+*F?#XCX'p&G+)n+?V[\+Te&-s6Iu!a%]1oDel`p&>'E
-#l+H%0TXi_rrU5c)#4.4+Rf+*!.XeE!+>Eu!''fT!+:BXhu<[ArVup@dJn^~>
-df0;4rVup@K`;%%q>^M?mJd1Lq>^L4M#RIIq>^Mfl2US[!$Hjml2LhB!$Hjmhu<\[q#CE`i;WeL
-q#CE`q>UGEmf3DK5To_"!-%c6nc/Y4p&>'E#l+H%0TXi_rrU5c)#4.4+Rf"'!QPK?!!j-DIugd_
-=?m/f!!4;C^ZPRs@,(\]@/9j'J+<O=J+*F?#XCX'p&G+)n+?V[\+Te&-s6Iu!a%]1oDel`p&>'E
-#l+H%0TXi_rrU5c)#4.4+Rf+*!.XeE!+>Eu!''fT!+:BXhu<[ArVup@dJn^~>
-df0;4rVup@K`;$Sq>^MFm/Qk]!:PdE!2')f!2&NUq>^L<JcG!7!oEu#JcFX-!-%c7!$L2!!71H@
-!4Ve(!.XV@!YAbCqu6]+=SMjs#g`)A!'pD]!$M"8!V\#=!!*@\pAY3gIgGlN!*Jsp!Uh0+!!,'_
-q#:Au=Si'u+Su-7!!$EOrr?I'!!%N=rr@Q?!!-3"qu6]#=SMjrO7iMRmhkg"!GKgSrrK$"pAb2c
-pAY0f./EoE#`&-R!r%0Mq>^Ltq#:Bh0_k\K\+Tb$L\^uO+Ram]hu<[ArVup@dJn^~>
-df0;4rVup@K`;$Sq>^MFm/Qk]!:PdE!2')f!2&NUq>^L<JcG!7!oEu#JcFX-!-%c7!$L2!!71H@
-!4Ve(!.XV@!YAbCqu6]+=SMjs#g`)A!'pD]!$M"8!V\#=!!*@\pAY3gIgGlN!*Jsp!Uh0+!!,'_
-q#:Au=Si'u+Su-7!!$EOrr?I'!!%N=rr@Q?!!-3"qu6]#=SMjrO7iMRmhkg"!GKgSrrK$"pAb2c
-pAY0f./EoE#`&-R!r%0Mq>^Ltq#:Bh0_k\K\+Tb$L\^uO+Ram]hu<[ArVup@dJn^~>
-df0;4rVup@K`;$Sq>^MFm/Qk]!:PdE!2')f!2&NUq>^L<JcG!7!oEu#JcFX-!-%c7!$L2!!71H@
-!4Ve(!.XV@!YAbCqu6]+=SMjs#g`)A!'pD]!$M"8!V\#=!!*@\pAY3gIgGlN!*Jsp!Uh0+!!,'_
-q#:Au=Si'u+Su-7!!$EOrr?I'!!%N=rr@Q?!!-3"qu6]#=SMjrO7iMRmhkg"!GKgSrrK$"pAb2c
-pAY0f./EoE#`&-R!r%0Mq>^Ltq#:Bh0_k\K\+Tb$L\^uO+Ram]hu<[ArVup@dJn^~>
-df0;4rVup@K`;$;q>^M^m/I%sq>^NAM>mRJq>^Mfl2US[!Z8\eqgS[N^X%K2o`#!M!$Hjmhu<[A
-q>^LlhZ!Q]q>^MFq>UGEp&G+)L\C`K^DQbH!)W7d!'pD]!$M"8!+>X'!@Z"[rrKS7qZ$X&kP+uV
-;#((l&;ToX!q1mUrVup@qZ$Bl!+=(O!+>X'!.XP=!.XYA!I3f%rrA\e!!"_Grr?0s!!+Lgo`#!]
-QT4gA!2&ub!+>X'!@Z"[rrKS7qZ$X&kP5&XcNs@I!?h.2rrL^Wq>^N1JcFU,!'pM`!$K\hJ,~>
-df0;4rVup@K`;$;q>^M^m/I%sq>^NAM>mRJq>^Mfl2US[!Z8\eqgS[N^X%K2o`#!M!$Hjmhu<[A
-q>^LlhZ!Q]q>^MFq>UGEp&G+)L\C`K^DQbH!)W7d!'pD]!$M"8!+>X'!@Z"[rrKS7qZ$X&kP+uV
-;#((l&;ToX!q1mUrVup@qZ$Bl!+=(O!+>X'!.XP=!.XYA!I3f%rrA\e!!"_Grr?0s!!+Lgo`#!]
-QT4gA!2&ub!+>X'!@Z"[rrKS7qZ$X&kP5&XcNs@I!?h.2rrL^Wq>^N1JcFU,!'pM`!$K\hJ,~>
-df0;4rVup@K`;$;q>^M^m/I%sq>^NAM>mRJq>^Mfl2US[!Z8\eqgS[N^X%K2o`#!M!$Hjmhu<[A
-q>^LlhZ!Q]q>^MFq>UGEp&G+)L\C`K^DQbH!)W7d!'pD]!$M"8!+>X'!@Z"[rrKS7qZ$X&kP+uV
-;#((l&;ToX!q1mUrVup@qZ$Bl!+=(O!+>X'!.XP=!.XYA!I3f%rrA\e!!"_Grr?0s!!+Lgo`#!]
-QT4gA!2&ub!+>X'!@Z"[rrKS7qZ$X&kP5&XcNs@I!?h.2rrL^Wq>^N1JcFU,!'pM`!$K\hJ,~>
-df0;4rVup@K`;$3q>^Mfm/I&.q>^N1M>mRJq>^Mfl2U,N![qHcJcGNF!oEu#JcFX-!$M+<!/KG2
-!''fT!+>X&!.X_C!D)DGrrM!oq#CEHoD\eUqZ$U=p\t6&q>^Omp[S7`O88hVE;9G5YPA/!&C9nH
-"Qrke!$M.<q>^M'c2RcOq>^MFnc&T=pAb4Rch.5;J,''EchIG>YPA/!0^nQ3!5J@1!2'#c!4Ve)
-!DrO\rrA,V!!%!4rr@iM!!%!4rr>%T!!%7ps5!\T5lL``+OU4>~>
-df0;4rVup@K`;$3q>^Mfm/I&.q>^N1M>mRJq>^Mfl2U,N![qHcJcGNF!oEu#JcFX-!$M+<!/KG2
-!''fT!+>X&!.X_C!D)DGrrM!oq#CEHoD\eUqZ$U=p\t6&q>^Omp[S7`O88hVE;9G5YPA/!&C9nH
-"Qrke!$M.<q>^M'c2RcOq>^MFnc&T=pAb4Rch.5;J,''EchIG>YPA/!0^nQ3!5J@1!2'#c!4Ve)
-!DrO\rrA,V!!%!4rr@iM!!%!4rr>%T!!%7ps5!\T5lL``+OU4>~>
-df0;4rVup@K`;$3q>^Mfm/I&.q>^N1M>mRJq>^Mfl2U,N![qHcJcGNF!oEu#JcFX-!$M+<!/KG2
-!''fT!+>X&!.X_C!D)DGrrM!oq#CEHoD\eUqZ$U=p\t6&q>^Omp[S7`O88hVE;9G5YPA/!&C9nH
-"Qrke!$M.<q>^M'c2RcOq>^MFnc&T=pAb4Rch.5;J,''EchIG>YPA/!0^nQ3!5J@1!2'#c!4Ve)
-!DrO\rrA,V!!%!4rr@iM!!%!4rr>%T!!%7ps5!\T5lL``+OU4>~>
-df0;4rVup@K`;#pq>^N)m/I&Nq>^N1M>mRJq>^Mfl2U#K!Z6F]JcGWI!oEu#JcFX-!"eu,!4Uhb
-!+>X'!)WLk!.XeE!>qI!rrKk?q>^M?oD\eUqZ$U=p\t4IqZ$XFp[J1`pDEc-!=8/irr=bL!!*AO
-mf*?t&0UiLq>^M'c2RcOq>^MFnc&T=p](;Lnc&S3q>^Mfp\t4Yq>^OMn*p>W^\Rp1TD/?c0`(hN
-./362!V[H.!!*Aop\t4Qq#CE8q>UGMq>^OMpOWA#rr>=`!!".hs*t~>
-df0;4rVup@K`;#pq>^N)m/I&Nq>^N1M>mRJq>^Mfl2U#K!Z6F]JcGWI!oEu#JcFX-!"eu,!4Uhb
-!+>X'!)WLk!.XeE!>qI!rrKk?q>^M?oD\eUqZ$U=p\t4IqZ$XFp[J1`pDEc-!=8/irr=bL!!*AO
-mf*?t&0UiLq>^M'c2RcOq>^MFnc&T=p](;Lnc&S3q>^Mfp\t4Yq>^OMn*p>W^\Rp1TD/?c0`(hN
-./362!V[H.!!*Aop\t4Qq#CE8q>UGMq>^OMpOWA#rr>=`!!".hs*t~>
-df0;4rVup@K`;#pq>^N)m/I&Nq>^N1M>mRJq>^Mfl2U#K!Z6F]JcGWI!oEu#JcFX-!"eu,!4Uhb
-!+>X'!)WLk!.XeE!>qI!rrKk?q>^M?oD\eUqZ$U=p\t4IqZ$XFp[J1`pDEc-!=8/irr=bL!!*AO
-mf*?t&0UiLq>^M'c2RcOq>^MFnc&T=p](;Lnc&S3q>^Mfp\t4Yq>^OMn*p>W^\Rp1TD/?c0`(hN
-./362!V[H.!!*Aop\t4Qq#CE8q>UGMq>^OMpOWA#rr>=`!!".hs*t~>
-df0;4rVup@K`;#pq>^N1m/I&Nq>^N!M>mRJq>^Mfl2TrI!@Y^6s8;luhZ+dMs53kP!!'djrr@<?
-!!#:[rr@QF!!-Krn,EB,q>^L<oD\eUqZ$U=q#:??q>^NAmf*9Jq>^N!qYpQ9q#CDUm/I+LB_qc*
-!!$EOrr?I'!!%N=rr@QF!!*qWnG`K<q>^M7q#:??q#CE@n,EC&q>^Mfq#:??q>^NAmf*9Jq>^N!
-p\t9G#l4N%0_bJE!T+1[!!*AWJcFO*!'pM`!$K\hJ,~>
-df0;4rVup@K`;#pq>^N1m/I&Nq>^N!M>mRJq>^Mfl2TrI!@Y^6s8;luhZ+dMs53kP!!'djrr@<?
-!!#:[rr@QF!!-Krn,EB,q>^L<oD\eUqZ$U=q#:??q>^NAmf*9Jq>^N!qYpQ9q#CDUm/I+LB_qc*
-!!$EOrr?I'!!%N=rr@QF!!*qWnG`K<q>^M7q#:??q#CE@n,EC&q>^Mfq#:??q>^NAmf*9Jq>^N!
-p\t9G#l4N%0_bJE!T+1[!!*AWJcFO*!'pM`!$K\hJ,~>
-df0;4rVup@K`;#pq>^N1m/I&Nq>^N!M>mRJq>^Mfl2TrI!@Y^6s8;luhZ+dMs53kP!!'djrr@<?
-!!#:[rr@QF!!-Krn,EB,q>^L<oD\eUqZ$U=q#:??q>^NAmf*9Jq>^N!qYpQ9q#CDUm/I+LB_qc*
-!!$EOrr?I'!!%N=rr@QF!!*qWnG`K<q>^M7q#:??q#CE@n,EC&q>^Mfq#:??q>^NAmf*9Jq>^N!
-p\t9G#l4N%0_bJE!T+1[!!*AWJcFO*!'pM`!$K\hJ,~>
-df0;4rVup@K`;#pq>^N1m/I&Nq>^MfM>mRJq>^Mfl2TlG!,-r`rVlrV!$Hjmi;Wf?q#CE@hZ!S*
-q>^LDq>UGEq>^NQmf*:5q#CE8o`"nVqZ$U=q#:=jqZ$UmmJd4])#F:5E;KS7;#1.l39'u7!!$EO
-rr?I'!!%N=rr@QF!!(X>rrC+9!!#"Rrr?0t!!$^#rrBh1!!&Ydrr>mm!!#j_rrMj2qZ$V8pAY,Z
-q#CDMqu6X]q>^MVJcFL)!'pM`!$K\hJ,~>
-df0;4rVup@K`;#pq>^N1m/I&Nq>^MfM>mRJq>^Mfl2TlG!,-r`rVlrV!$Hjmi;Wf?q#CE@hZ!S*
-q>^LDq>UGEq>^NQmf*:5q#CE8o`"nVqZ$U=q#:=jqZ$UmmJd4])#F:5E;KS7;#1.l39'u7!!$EO
-rr?I'!!%N=rr@QF!!(X>rrC+9!!#"Rrr?0t!!$^#rrBh1!!&Ydrr>mm!!#j_rrMj2qZ$V8pAY,Z
-q#CDMqu6X]q>^MVJcFL)!'pM`!$K\hJ,~>
-df0;4rVup@K`;#pq>^N1m/I&Nq>^MfM>mRJq>^Mfl2TlG!,-r`rVlrV!$Hjmi;Wf?q#CE@hZ!S*
-q>^LDq>UGEq>^NQmf*:5q#CE8o`"nVqZ$U=q#:=jqZ$UmmJd4])#F:5E;KS7;#1.l39'u7!!$EO
-rr?I'!!%N=rr@QF!!(X>rrC+9!!#"Rrr?0t!!$^#rrBh1!!&Ydrr>mm!!#j_rrMj2qZ$V8pAY,Z
-q#CDMqu6X]q>^MVJcFL)!'pM`!$K\hJ,~>
-df0;4rVup@K`CiJ!5In#!'pA\!2#,J!2')f!2&NUjT#9gJcG`L!oEu#JcF[.!8mSP!8lZ5!0?sV
-!$M+;!.XhF!8m2D!(cqd!/L4H!'pD]!$M+;!9a1Y!6=I+!,260!&4<M!:T^`!6=+!q>^M'c2RcO
-q>^MFnc&T=q>^NQn,ECVq>^L<q>UKa#l=T&#j:XU!5J@1!2')e!9a1Y!6=I+!,260!&4*G!'pA\
-!=7<UrrAD^!!#Q@s4[JQ5lL``+OU4>~>
-df0;4rVup@K`CiJ!5In#!'pA\!2#,J!2')f!2&NUjT#9gJcG`L!oEu#JcF[.!8mSP!8lZ5!0?sV
-!$M+;!.XhF!8m2D!(cqd!/L4H!'pD]!$M+;!9a1Y!6=I+!,260!&4<M!:T^`!6=+!q>^M'c2RcO
-q>^MFnc&T=q>^NQn,ECVq>^L<q>UKa#l=T&#j:XU!5J@1!2')e!9a1Y!6=I+!,260!&4*G!'pA\
-!=7<UrrAD^!!#Q@s4[JQ5lL``+OU4>~>
-df0;4rVup@K`CiJ!5In#!'pA\!2#,J!2')f!2&NUjT#9gJcG`L!oEu#JcF[.!8mSP!8lZ5!0?sV
-!$M+;!.XhF!8m2D!(cqd!/L4H!'pD]!$M+;!9a1Y!6=I+!,260!&4<M!:T^`!6=+!q>^M'c2RcO
-q>^MFnc&T=q>^NQn,ECVq>^L<q>UKa#l=T&#j:XU!5J@1!2')e!9a1Y!6=I+!,260!&4*G!'pA\
-!=7<UrrAD^!!#Q@s4[JQ5lL``+OU4>~>
-df0;4rVup@K`CiJ!5In#!'pA\!/HF2!2')f!2&NUj8]0fJcGcM!oEu#JcF[.!5J=0!9`5=!2'&e
-q>UGEq>^NQmJd0Iq>^Lto`"nVqZ$U=q>UGeqZ$X&p[%n[Qhg[^n,31cYPJ5!.,k4&!!$EOrr?I'
-!!%N=rr@QF!!(pErr=2=!!!l3rrB8!!!#j_rrBh1!!&YerrA\g!!*B"m/I'Pq>^NapAY0N&GcA,
-5lUcah[')Z!>t!Ns4[JQ5lL``+OU4>~>
-df0;4rVup@K`CiJ!5In#!'pA\!/HF2!2')f!2&NUj8]0fJcGcM!oEu#JcF[.!5J=0!9`5=!2'&e
-q>UGEq>^NQmJd0Iq>^Lto`"nVqZ$U=q>UGeqZ$X&p[%n[Qhg[^n,31cYPJ5!.,k4&!!$EOrr?I'
-!!%N=rr@QF!!(pErr=2=!!!l3rrB8!!!#j_rrBh1!!&YerrA\g!!*B"m/I'Pq>^NapAY0N&GcA,
-5lUcah[')Z!>t!Ns4[JQ5lL``+OU4>~>
-df0;4rVup@K`CiJ!5In#!'pA\!/HF2!2')f!2&NUj8]0fJcGcM!oEu#JcF[.!5J=0!9`5=!2'&e
-q>UGEq>^NQmJd0Iq>^Lto`"nVqZ$U=q>UGeqZ$X&p[%n[Qhg[^n,31cYPJ5!.,k4&!!$EOrr?I'
-!!%N=rr@QF!!(pErr=2=!!!l3rrB8!!!#j_rrBh1!!&YerrA\g!!*B"m/I'Pq>^NapAY0N&GcA,
-5lUcah[')Z!>t!Ns4[JQ5lL``+OU4>~>
-df0;4rVup@K`CiJ!5In#!'pA\!.Tk*!2')f!2&NUquHa^!(d*="h1+RE'Q\\!!&(2rr`;Y!$Hjm
-i;Wedq#K7N!2'&eq>UGEq>^NQmJd14q>^LLo`"nVqZ$U=q>UG.qZ$U]li-t2q>^N1r;Qb9q>^MV
-iW&`S!+=(O!+>X'!.XP=!.XhF!8m5E!&46Lq>UG6q>^MnmJd1$q>^Mfq>UG.qZ$U]li-t2q>^N1
-p&>#aq#CM`s8P@\!!'3Rs4RDP5lL``+OU4>~>
-df0;4rVup@K`CiJ!5In#!'pA\!.Tk*!2')f!2&NUquHa^!(d*="h1+RE'Q\\!!&(2rr`;Y!$Hjm
-i;Wedq#K7N!2'&eq>UGEq>^NQmJd14q>^LLo`"nVqZ$U=q>UG.qZ$U]li-t2q>^N1r;Qb9q>^MV
-iW&`S!+=(O!+>X'!.XP=!.XhF!8m5E!&46Lq>UG6q>^MnmJd1$q>^Mfq>UG.qZ$U]li-t2q>^N1
-p&>#aq#CM`s8P@\!!'3Rs4RDP5lL``+OU4>~>
-df0;4rVup@K`CiJ!5In#!'pA\!.Tk*!2')f!2&NUquHa^!(d*="h1+RE'Q\\!!&(2rr`;Y!$Hjm
-i;Wedq#K7N!2'&eq>UGEq>^NQmJd14q>^LLo`"nVqZ$U=q>UG.qZ$U]li-t2q>^N1r;Qb9q>^MV
-iW&`S!+=(O!+>X'!.XP=!.XhF!8m5E!&46Lq>UG6q>^MnmJd1$q>^Mfq>UG.qZ$U]li-t2q>^N1
-p&>#aq#CM`s8P@\!!'3Rs4RDP5lL``+OU4>~>
-df0;4rVup@K`CiJ!5In#!'pA\!.X)0!/K&heGfN@q>^Mfl2Li^J%sn4rrTZ;#l"B##j6d=!oEu#
-JcF[.!5J=0h>[JIq#L6j!.XhF!8m/C!"eu,!;H0d!'pD]!$M+;!&49M!-mi0!8mVQ!5JI3!&46L
-!8lc8q>^M'c2RcOq>^MFnc&T=q>^NQmf*8Pq>g?k!&46L!;Gm\!5J@1!2')e!&49M!-mi0!8mVQ
-!5J1+!)WLl!YFO]q>^M'JcFC&!'pM`!$K\hJ,~>
-df0;4rVup@K`CiJ!5In#!'pA\!.X)0!/K&heGfN@q>^Mfl2Li^J%sn4rrTZ;#l"B##j6d=!oEu#
-JcF[.!5J=0h>[JIq#L6j!.XhF!8m/C!"eu,!;H0d!'pD]!$M+;!&49M!-mi0!8mVQ!5JI3!&46L
-!8lc8q>^M'c2RcOq>^MFnc&T=q>^NQmf*8Pq>g?k!&46L!;Gm\!5J@1!2')e!&49M!-mi0!8mVQ
-!5J1+!)WLl!YFO]q>^M'JcFC&!'pM`!$K\hJ,~>
-df0;4rVup@K`CiJ!5In#!'pA\!.X)0!/K&heGfN@q>^Mfl2Li^J%sn4rrTZ;#l"B##j6d=!oEu#
-JcF[.!5J=0h>[JIq#L6j!.XhF!8m/C!"eu,!;H0d!'pD]!$M+;!&49M!-mi0!8mVQ!5JI3!&46L
-!8lc8q>^M'c2RcOq>^MFnc&T=q>^NQmf*8Pq>g?k!&46L!;Gm\!5J@1!2')e!&49M!-mi0!8mVQ
-!5J1+!)WLl!YFO]q>^M'JcFC&!'pM`!$K\hJ,~>
-df0;4rVup@K`CiJ!5In#!'pA\!12dH!+=:VeGfN@q>^Mfec,[%3;<IR=FpJRhZ+dMs5<nW^\Ij0
-hqnA5TDANf#l4K#J,0-FhsC@C3;NUTch7;<5l1N]+Su*<n+m"aYNl/a!!&YirrDNa!!!Sgs7u]q
-@*S]O@/9j'J+<O=J,0-FhsULE5l(KWrrDNa!!"_>rrBh1!!&YfrrDNa!!'4fs7u]qTCi-ak8=$q
-!C-qf!!+5:JcFC&!'pM`!$K\hJ,~>
-df0;4rVup@K`CiJ!5In#!'pA\!12dH!+=:VeGfN@q>^Mfec,[%3;<IR=FpJRhZ+dMs5<nW^\Ij0
-hqnA5TDANf#l4K#J,0-FhsC@C3;NUTch7;<5l1N]+Su*<n+m"aYNl/a!!&YirrDNa!!!Sgs7u]q
-@*S]O@/9j'J+<O=J,0-FhsULE5l(KWrrDNa!!"_>rrBh1!!&YfrrDNa!!'4fs7u]qTCi-ak8=$q
-!C-qf!!+5:JcFC&!'pM`!$K\hJ,~>
-df0;4rVup@K`CiJ!5In#!'pA\!12dH!+=:VeGfN@q>^Mfec,[%3;<IR=FpJRhZ+dMs5<nW^\Ij0
-hqnA5TDANf#l4K#J,0-FhsC@C3;NUTch7;<5l1N]+Su*<n+m"aYNl/a!!&YirrDNa!!!Sgs7u]q
-@*S]O@/9j'J+<O=J,0-FhsULE5l(KWrrDNa!!"_>rrBh1!!&YfrrDNa!!'4fs7u]qTCi-ak8=$q
-!C-qf!!+5:JcFC&!'pM`!$K\hJ,~>
-df0;4rVup@K`CiJ!5In#!'pA\!2&?P!+=:VeGfN@q>^MfeGfRD8GE/bhh(k0hZ+dMs5<nWht[6P
-hqnA5J,0-F+Sl$;J,0-FhsC@C=S`!t^\.U,5l1N]+Su*<^\Rp139id*!!&YirrBh1!!#RJs7u]q
-@*S]O@/9j'J+<O=J,0-FhsULE@/9m"rrBh1!!$-frrBh1!!&YfrrBh1!!#"D5l(H\TC`'_Vt'ff
-a+=9Brr>=`!!".hs*t~>
-df0;4rVup@K`CiJ!5In#!'pA\!2&?P!+=:VeGfN@q>^MfeGfRD8GE/bhh(k0hZ+dMs5<nWht[6P
-hqnA5J,0-F+Sl$;J,0-FhsC@C=S`!t^\.U,5l1N]+Su*<^\Rp139id*!!&YirrBh1!!#RJs7u]q
-@*S]O@/9j'J+<O=J,0-FhsULE@/9m"rrBh1!!$-frrBh1!!&YfrrBh1!!#"D5l(H\TC`'_Vt'ff
-a+=9Brr>=`!!".hs*t~>
-df0;4rVup@K`CiJ!5In#!'pA\!2&?P!+=:VeGfN@q>^MfeGfRD8GE/bhh(k0hZ+dMs5<nWht[6P
-hqnA5J,0-F+Sl$;J,0-FhsC@C=S`!t^\.U,5l1N]+Su*<^\Rp139id*!!&YirrBh1!!#RJs7u]q
-@*S]O@/9j'J+<O=J,0-FhsULE@/9m"rrBh1!!$-frrBh1!!&YfrrBh1!!#"D5l(H\TC`'_Vt'ff
-a+=9Brr>=`!!".hs*t~>
-df0;4rVup@K`;#pq>^N1m/I&Nq>^MfjSo3fe,\"u!2')f!2%a?!V\kT!!&@;rrV'X+G'RNrrCsP
-!!('rrr@QF!!"GCrr@QF!!(pCrr@QF!!'e,rr>=]!!"/<rrAtO!!%NIrrB8!!!%9%s7u]q@*S]O
-@/9j'J+<O=J,0-FhsULE@/9m"rrA\f!!&)HrrBh1!!&YfrrAtO!!%N>rr?I!!!%M"s472M5lL``
-+OU4>~>
-df0;4rVup@K`;#pq>^N1m/I&Nq>^MfjSo3fe,\"u!2')f!2%a?!V\kT!!&@;rrV'X+G'RNrrCsP
-!!('rrr@QF!!"GCrr@QF!!(pCrr@QF!!'e,rr>=]!!"/<rrAtO!!%NIrrB8!!!%9%s7u]q@*S]O
-@/9j'J+<O=J,0-FhsULE@/9m"rrA\f!!&)HrrBh1!!&YfrrAtO!!%N>rr?I!!!%M"s472M5lL``
-+OU4>~>
-df0;4rVup@K`;#pq>^N1m/I&Nq>^MfjSo3fe,\"u!2')f!2%a?!V\kT!!&@;rrV'X+G'RNrrCsP
-!!('rrr@QF!!"GCrr@QF!!(pCrr@QF!!'e,rr>=]!!"/<rrAtO!!%NIrrB8!!!%9%s7u]q@*S]O
-@/9j'J+<O=J,0-FhsULE@/9m"rrA\f!!&)HrrBh1!!&YfrrAtO!!%N>rr?I!!!%M"s472M5lL``
-+OU4>~>
-df0;4rVup@K`;#pq>^N1m/I&Nq>^N!jSo3fe,\"u!2')f!2%^>!S7VR!!#QArrV'X+G'RMs7lWp
-^Y\tjB_h]/5l(E[J,0-FhsC@CJ,0-FTCr3a5l1N]+Su*<TA'>GJ,TBITDANfO5U'7!!$EOrr?I'
-!!%N=rr@QF!!(pErr?I'!;c]qTDANfTBuRX^\Rp1TDJQfTA'>GJ+EU?mhk`u!BBh)s472M5lL``
-+OU4>~>
-df0;4rVup@K`;#pq>^N1m/I&Nq>^N!jSo3fe,\"u!2')f!2%^>!S7VR!!#QArrV'X+G'RMs7lWp
-^Y\tjB_h]/5l(E[J,0-FhsC@CJ,0-FTCr3a5l1N]+Su*<TA'>GJ,TBITDANfO5U'7!!$EOrr?I'
-!!%N=rr@QF!!(pErr?I'!;c]qTDANfTBuRX^\Rp1TDJQfTA'>GJ+EU?mhk`u!BBh)s472M5lL``
-+OU4>~>
-df0;4rVup@K`;#pq>^N1m/I&Nq>^N!jSo3fe,\"u!2')f!2%^>!S7VR!!#QArrV'X+G'RMs7lWp
-^Y\tjB_h]/5l(E[J,0-FhsC@CJ,0-FTCr3a5l1N]+Su*<TA'>GJ,TBITDANfO5U'7!!$EOrr?I'
-!!%N=rr@QF!!(pErr?I'!;c]qTDANfTBuRX^\Rp1TDJQfTA'>GJ+EU?mhk`u!BBh)s472M5lL``
-+OU4>~>
-df0;4rVup@K`;#pq>^N)m/I&Fq>^N1jSo3fe,\"u!2')f!2%[=!,23/!=8FPrrV'X+G'RMs7lWp
-YMT9Z=S`!t8GW8cJ,0-FhsC@CQhg[^TCr3a5l1N]+Su*<J(jr'J,TBIJ,0-FTA]bG!!$EOrr?I'
-!!%N=rr@QF!!(pErr?I'!;c]qJ,0-FTBuRX^\Rp1TDJQfJ(jr'J+<O=\+]k'#iC45ec,V7rVup@
-dJn^~>
-df0;4rVup@K`;#pq>^N)m/I&Fq>^N1jSo3fe,\"u!2')f!2%[=!,23/!=8FPrrV'X+G'RMs7lWp
-YMT9Z=S`!t8GW8cJ,0-FhsC@CQhg[^TCr3a5l1N]+Su*<J(jr'J,TBIJ,0-FTA]bG!!$EOrr?I'
-!!%N=rr@QF!!(pErr?I'!;c]qJ,0-FTBuRX^\Rp1TDJQfJ(jr'J+<O=\+]k'#iC45ec,V7rVup@
-dJn^~>
-df0;4rVup@K`;#pq>^N)m/I&Fq>^N1jSo3fe,\"u!2')f!2%[=!,23/!=8FPrrV'X+G'RMs7lWp
-YMT9Z=S`!t8GW8cJ,0-FhsC@CQhg[^TCr3a5l1N]+Su*<J(jr'J,TBIJ,0-FTA]bG!!$EOrr?I'
-!!%N=rr@QF!!(pErr?I'!;c]qJ,0-FTBuRX^\Rp1TDJQfJ(jr'J+<O=\+]k'#iC45ec,V7rVup@
-dJn^~>
-df0;4rVup@K`;$;q>^Mfm/I&.q>^N1jSo48e3MO`!2')f!2%[=!3c1u!7-;t!oEu#JcFX-!$M+<
-!-mB#!&46L!+>X&!.XhF!8m/C!2')f!2&ra!'pD]!$M.<!-m5u!.XtI!-n>?!3b>\q>^M'c2RcO
-q>^MFnc&T=q>^NQmf*8pq>gBl!-n>?!4V=p!5J@1!2',f!-m5u!.XM<!,2--!2"iBeGfM6rVup@
-dJn^~>
-df0;4rVup@K`;$;q>^Mfm/I&.q>^N1jSo48e3MO`!2')f!2%[=!3c1u!7-;t!oEu#JcFX-!$M+<
-!-mB#!&46L!+>X&!.XhF!8m/C!2')f!2&ra!'pD]!$M.<!-m5u!.XtI!-n>?!3b>\q>^M'c2RcO
-q>^MFnc&T=q>^NQmf*8pq>gBl!-n>?!4V=p!5J@1!2',f!-m5u!.XM<!,2--!2"iBeGfM6rVup@
-dJn^~>
-df0;4rVup@K`;$;q>^Mfm/I&.q>^N1jSo48e3MO`!2')f!2%[=!3c1u!7-;t!oEu#JcFX-!$M+<
-!-mB#!&46L!+>X&!.XhF!8m/C!2')f!2&ra!'pD]!$M.<!-m5u!.XtI!-n>?!3b>\q>^M'c2RcO
-q>^MFnc&T=q>^NQmf*8pq>gBl!-n>?!4V=p!5J@1!2',f!-m5u!.XM<!,2--!2"iBeGfM6rVup@
-dJn^~>
-df0;4rVup@K`;$Cq>^Mfm/I%kq>^NAM>mRJq>^MfdJj48q#CE0KDu#1!$Hjmhu<[Aq>^Llhu<]N
-q#CDEq>UGEq>^NQm/I'Xq>^Mfp&>"WqZ$U=qYpP'gAh5'rVlk*q>^N1i;`WR!+=(O!+>X'!.XP=
-!.XhF!8m5E!+>X'qYpP'q>^N1m/I(#q>^MfqYpP'gAh5'nG`OX#l+H#[t4S/rr>=`!!".hs*t~>
-df0;4rVup@K`;$Cq>^Mfm/I%kq>^NAM>mRJq>^MfdJj48q#CE0KDu#1!$Hjmhu<[Aq>^Llhu<]N
-q#CDEq>UGEq>^NQm/I'Xq>^Mfp&>"WqZ$U=qYpP'gAh5'rVlk*q>^N1i;`WR!+=(O!+>X'!.XP=
-!.XhF!8m5E!+>X'qYpP'q>^N1m/I(#q>^MfqYpP'gAh5'nG`OX#l+H#[t4S/rr>=`!!".hs*t~>
-df0;4rVup@K`;$Cq>^Mfm/I%kq>^NAM>mRJq>^MfdJj48q#CE0KDu#1!$Hjmhu<[Aq>^Llhu<]N
-q#CDEq>UGEq>^NQm/I'Xq>^Mfp&>"WqZ$U=qYpP'gAh5'rVlk*q>^N1i;`WR!+=(O!+>X'!.XP=
-!.XhF!8m5E!+>X'qYpP'q>^N1m/I(#q>^MfqYpP'gAh5'nG`OX#l+H#[t4S/rr>=`!!".hs*t~>
-df0;4rVup@K`;$cq>^MFm/Qk]!;D?M!2')f!2%X<!$M+<!2"oD!oEu#JcFX-!-n>?!#XVn!71H@
-!5J@0!.XhF!8m/C!13N^!2oMi!'pD]!$M.<!-%c7!2nkl!8mbT!-%c7!3b>\q>^M'c2RcOq>^MF
-nc&T=q>^NQmf*8pq>gBl!,23/!5In#!5J@1!2',f!-%c7!2nkl!8m;G!-n8=!>t!Ns4.,L5lL``
-+OU4>~>
-df0;4rVup@K`;$cq>^MFm/Qk]!;D?M!2')f!2%X<!$M+<!2"oD!oEu#JcFX-!-n>?!#XVn!71H@
-!5J@0!.XhF!8m/C!13N^!2oMi!'pD]!$M.<!-%c7!2nkl!8mbT!-%c7!3b>\q>^M'c2RcOq>^MF
-nc&T=q>^NQmf*8pq>gBl!,23/!5In#!5J@1!2',f!-%c7!2nkl!8m;G!-n8=!>t!Ns4.,L5lL``
-+OU4>~>
-df0;4rVup@K`;$cq>^MFm/Qk]!;D?M!2')f!2%X<!$M+<!2"oD!oEu#JcFX-!-n>?!#XVn!71H@
-!5J@0!.XhF!8m/C!13N^!2oMi!'pD]!$M.<!-%c7!2nkl!8mbT!-%c7!3b>\q>^M'c2RcOq>^MF
-nc&T=q>^NQmf*8pq>gBl!,23/!5In#!5J@1!2',f!-%c7!2nkl!8m;G!-n8=!>t!Ns4.,L5lL``
-+OU4>~>
-df0;4rVup@K`;%-q>^MFmJd1Dq>^L4M#RIIq>^Mfd/O)*q>^MVKDu#1!$Hjmhu<\[q#CE`i;WeD
-q>^O%p\FghJ,0-FhsC@CJ,0-F^\.U,5l1N]+Su*<J,0-F^Y\tjJ,0-FTA]bG!!$EOrr?I'!!%N=
-rr@QF!!(pErr?I'!;c]qJ,0-FYO)8h^\Rp1TDJQfJ,0-F^XE,^^\.X-=FpM&rr>=`!!".hs*t~>
-df0;4rVup@K`;%-q>^MFmJd1Dq>^L4M#RIIq>^Mfd/O)*q>^MVKDu#1!$Hjmhu<\[q#CE`i;WeD
-q>^O%p\FghJ,0-FhsC@CJ,0-F^\.U,5l1N]+Su*<J,0-F^Y\tjJ,0-FTA]bG!!$EOrr?I'!!%N=
-rr@QF!!(pErr?I'!;c]qJ,0-FYO)8h^\Rp1TDJQfJ,0-F^XE,^^\.X-=FpM&rr>=`!!".hs*t~>
-df0;4rVup@K`;%-q>^MFmJd1Dq>^L4M#RIIq>^Mfd/O)*q>^MVKDu#1!$Hjmhu<\[q#CE`i;WeD
-q>^O%p\FghJ,0-FhsC@CJ,0-F^\.U,5l1N]+Su*<J,0-F^Y\tjJ,0-FTA]bG!!$EOrr?I'!!%N=
-rr@QF!!(pErr?I'!;c]qJ,0-FYO)8h^\Rp1TDJQfJ,0-F^XE,^^\.X-=FpM&rr>=`!!".hs*t~>
-df0;4rVup@K`;%Uq>^M7mJd14q>^LTM#RIIq>^Mfd/O)2q>^MFKDu#1!$Hjmhu<]>q#CDui;Wdb
-q>^LLq#:>Dq>^NQm/I'8q>^N9p&>"WqZ$U=qYpP^q>^N1hZ!SBq>^MNi;`WR!+=(O!+>X'!.XP=
-!.XhF!8m5E!+>X'qYpPFq>^Mfm/I(#q>^MfqYpP^q>^N1e,KI;+S>^7Vh+m!rr>=`!!".hs*t~>
-df0;4rVup@K`;%Uq>^M7mJd14q>^LTM#RIIq>^Mfd/O)2q>^MFKDu#1!$Hjmhu<]>q#CDui;Wdb
-q>^LLq#:>Dq>^NQm/I'8q>^N9p&>"WqZ$U=qYpP^q>^N1hZ!SBq>^MNi;`WR!+=(O!+>X'!.XP=
-!.XhF!8m5E!+>X'qYpPFq>^Mfm/I(#q>^MfqYpP^q>^N1e,KI;+S>^7Vh+m!rr>=`!!".hs*t~>
-df0;4rVup@K`;%Uq>^M7mJd14q>^LTM#RIIq>^Mfd/O)2q>^MFKDu#1!$Hjmhu<]>q#CDui;Wdb
-q>^LLq#:>Dq>^NQm/I'8q>^N9p&>"WqZ$U=qYpP^q>^N1hZ!SBq>^MNi;`WR!+=(O!+>X'!.XP=
-!.XhF!8m5E!+>X'qYpPFq>^Mfm/I(#q>^MfqYpP^q>^N1e,KI;+S>^7Vh+m!rr>=`!!".hs*t~>
-df0;4rVup@K`;%uq>^LdmJd0iq>^LtM#RIIq>^Mfd/O)2q>^MFKDu#1!$HjmhZ!Quq>^LtiVrrQ
-&GcA,E;9G5J,0-FhsC@CE;BP7ht@!L5l1N]+Su*<TDANfTAKSJTDANfE8^cm!!$EOrr?I'!!%N=
-rr@QF!!(pErr?I'!;c]qTDANfQgF_P^\Rp1TDJQfTDANfT@<f?@.XF"&EeWEfDbh9rVup@dJn^~>
-df0;4rVup@K`;%uq>^LdmJd0iq>^LtM#RIIq>^Mfd/O)2q>^MFKDu#1!$HjmhZ!Quq>^LtiVrrQ
-&GcA,E;9G5J,0-FhsC@CE;BP7ht@!L5l1N]+Su*<TDANfTAKSJTDANfE8^cm!!$EOrr?I'!!%N=
-rr@QF!!(pErr?I'!;c]qTDANfQgF_P^\Rp1TDJQfTDANfT@<f?@.XF"&EeWEfDbh9rVup@dJn^~>
-df0;4rVup@K`;%uq>^LdmJd0iq>^LtM#RIIq>^Mfd/O)2q>^MFKDu#1!$HjmhZ!Quq>^LtiVrrQ
-&GcA,E;9G5J,0-FhsC@CE;BP7ht@!L5l1N]+Su*<TDANfTAKSJTDANfE8^cm!!$EOrr?I'!!%N=
-rr@QF!!(pErr?I'!;c]qTDANfQgF_P^\Rp1TDJQfTDANfT@<f?@.XF"&EeWEfDbh9rVup@dJn^~>
-df0;4rVup@K`;&@q>^L<mJd0Aq>^MFM#RIIq>^Mfd/O)*q>^M^KDu#1!$HjmhZ!RXq>^O%n)F?I
-Vtg;mYPA+tJ,0-FhsC@C5l1N^#l"#l!'pD]!$M.<!5J@1!.Wl*!4Ve)!(c&Jq>^M'c2RcOq>^MF
-nc&T=q>^NQmf*8pq>gBl!2')f!-%<)!5J@1!2',f!5J@1!.WMu!2oAf!(_\@fDbh9rVup@dJn^~>
-df0;4rVup@K`;&@q>^L<mJd0Aq>^MFM#RIIq>^Mfd/O)*q>^M^KDu#1!$HjmhZ!RXq>^O%n)F?I
-Vtg;mYPA+tJ,0-FhsC@C5l1N^#l"#l!'pD]!$M.<!5J@1!.Wl*!4Ve)!(c&Jq>^M'c2RcOq>^MF
-nc&T=q>^NQmf*8pq>gBl!2')f!-%<)!5J@1!2',f!5J@1!.WMu!2oAf!(_\@fDbh9rVup@dJn^~>
-df0;4rVup@K`;&@q>^L<mJd0Aq>^MFM#RIIq>^Mfd/O)*q>^M^KDu#1!$HjmhZ!RXq>^O%n)F?I
-Vtg;mYPA+tJ,0-FhsC@C5l1N^#l"#l!'pD]!$M.<!5J@1!.Wl*!4Ve)!(c&Jq>^M'c2RcOq>^MF
-nc&T=q>^NQmf*8pq>gBl!2')f!-%<)!5J@1!2',f!5J@1!.WMu!2oAf!(_\@fDbh9rVup@dJn^~>
-df0;4rVup@KDtogq>^Nimf*9#q>^MfM#RIIq>^Mfd/O(gq>^MnKDu#1!$HjmhZ!SRq#CD]ir9!L
-q>^O%n+cn_J,0-FhsC@C&GlG-0_GAF5l1N]+Su*<htd<Q5i2M@htd<Q&E*Tb!!$EOrr?I'!!%N=
-rr@QF!!(pErr?I'!;c]q^\Rp1;!e2^^\Rp1TDJQfhtd<Q5h5l8k7ILj!>q1!!!&@:s4I>O5lL``
-+OU4>~>
-df0;4rVup@KDtogq>^Nimf*9#q>^MfM#RIIq>^Mfd/O(gq>^MnKDu#1!$HjmhZ!SRq#CD]ir9!L
-q>^O%n+cn_J,0-FhsC@C&GlG-0_GAF5l1N]+Su*<htd<Q5i2M@htd<Q&E*Tb!!$EOrr?I'!!%N=
-rr@QF!!(pErr?I'!;c]q^\Rp1;!e2^^\Rp1TDJQfhtd<Q5h5l8k7ILj!>q1!!!&@:s4I>O5lL``
-+OU4>~>
-df0;4rVup@KDtogq>^Nimf*9#q>^MfM#RIIq>^Mfd/O(gq>^MnKDu#1!$HjmhZ!SRq#CD]ir9!L
-q>^O%n+cn_J,0-FhsC@C&GlG-0_GAF5l1N]+Su*<htd<Q5i2M@htd<Q&E*Tb!!$EOrr?I'!!%N=
-rr@QF!!(pErr?I'!;c]q^\Rp1;!e2^^\Rp1TDJQfhtd<Q5h5l8k7ILj!>q1!!!&@:s4I>O5lL``
-+OU4>~>
-df0;4rVup@KDtpJq>^NAmf*8Hq>^NAM#RIIq>^MfdJj48q#CE0KDu#1!$HjmhZ!WN)#=440]W05
-ht[6PB_VN,J,0-FhsLFDkP>/YE:j/15l1N]+Sl$;+Su-=#i5L\+Sl'<hr4V3!!$EOrr?I'!!%N=
-rr@QF!!(pErr?I'!;c]qn+m"a+RK+.^\Rp1TDAKe+Su-=#hAqT5l(H^\,T;$!!*A_JcFF'!'pM`
-!$K\hJ,~>
-df0;4rVup@KDtpJq>^NAmf*8Hq>^NAM#RIIq>^MfdJj48q#CE0KDu#1!$HjmhZ!WN)#=440]W05
-ht[6PB_VN,J,0-FhsLFDkP>/YE:j/15l1N]+Sl$;+Su-=#i5L\+Sl'<hr4V3!!$EOrr?I'!!%N=
-rr@QF!!(pErr?I'!;c]qn+m"a+RK+.^\Rp1TDAKe+Su-=#hAqT5l(H^\,T;$!!*A_JcFF'!'pM`
-!$K\hJ,~>
-df0;4rVup@KDtpJq>^NAmf*8Hq>^NAM#RIIq>^MfdJj48q#CE0KDu#1!$HjmhZ!WN)#=440]W05
-ht[6PB_VN,J,0-FhsLFDkP>/YE:j/15l1N]+Sl$;+Su-=#i5L\+Sl'<hr4V3!!$EOrr?I'!!%N=
-rr@QF!!(pErr?I'!;c]qn+m"a+RK+.^\Rp1TDAKe+Su-=#hAqT5l(H^\,T;$!!*A_JcFF'!'pM`
-!$K\hJ,~>
-df0;4rVup@KDtq4q>^MFn,EFW#l=T%+G]ssTDANfT@*Z=YPA.umt:WAhZ+dMs5!\TJ,''EQfS/H
-8GN5cchIG>J,0-FhsLFDTDANfTCi-`5l1N]+Sl$;@/9j'\).,b@/9j'LZ/:0!!$EOrr?I'!!%N=
-rr@QF!!(pErr?I'!;ZWp+Sl'<hsLFD^\Rp1TDAKe@/9j'\(CW[O88hZ@/p8i&GcA,5_8sgrr>=`
-!!".hs*t~>
-df0;4rVup@KDtq4q>^MFn,EFW#l=T%+G]ssTDANfT@*Z=YPA.umt:WAhZ+dMs5!\TJ,''EQfS/H
-8GN5cchIG>J,0-FhsLFDTDANfTCi-`5l1N]+Sl$;@/9j'\).,b@/9j'LZ/:0!!$EOrr?I'!!%N=
-rr@QF!!(pErr?I'!;ZWp+Sl'<hsLFD^\Rp1TDAKe@/9j'\(CW[O88hZ@/p8i&GcA,5_8sgrr>=`
-!!".hs*t~>
-df0;4rVup@KDtq4q>^MFn,EFW#l=T%+G]ssTDANfT@*Z=YPA.umt:WAhZ+dMs5!\TJ,''EQfS/H
-8GN5cchIG>J,0-FhsLFDTDANfTCi-`5l1N]+Sl$;@/9j'\).,b@/9j'LZ/:0!!$EOrr?I'!!%N=
-rr@QF!!(pErr?I'!;ZWp+Sl'<hsLFD^\Rp1TDAKe@/9j'\(CW[O88hZ@/p8i&GcA,5_8sgrr>=`
-!!".hs*t~>
-df0;4rVup@KDtr/q>^L\n,EBcq>^M'L]7@Hq>^MfdJj2[q>^LLK)Yo0!$Hjmh>[N=#l4N%&Ei3U
-!2oVm!'p8X!.XhF!8m2D!(cqd!8$lC!'pD]!$M+;!2')f!)VPP!2')f!$L8#q>^Ltc2RcOq>^MF
-nc&T=q>^NQmf*8pq>g?k!)WLl!13*Q!5J@1!2')e!2')f!)V>J!S7VS!!*r*rr2tjq#CDMJcFI(
-!'pM`!$K\hJ,~>
-df0;4rVup@KDtr/q>^L\n,EBcq>^M'L]7@Hq>^MfdJj2[q>^LLK)Yo0!$Hjmh>[N=#l4N%&Ei3U
-!2oVm!'p8X!.XhF!8m2D!(cqd!8$lC!'pD]!$M+;!2')f!)VPP!2')f!$L8#q>^Ltc2RcOq>^MF
-nc&T=q>^NQmf*8pq>g?k!)WLl!13*Q!5J@1!2')e!2')f!)V>J!S7VS!!*r*rr2tjq#CDMJcFI(
-!'pM`!$K\hJ,~>
-df0;4rVup@KDtr/q>^L\n,EBcq>^M'L]7@Hq>^MfdJj2[q>^LLK)Yo0!$Hjmh>[N=#l4N%&Ei3U
-!2oVm!'p8X!.XhF!8m2D!(cqd!8$lC!'pD]!$M+;!2')f!)VPP!2')f!$L8#q>^Ltc2RcOq>^MF
-nc&T=q>^NQmf*8pq>g?k!)WLl!13*Q!5J@1!2')e!2')f!)V>J!S7VS!!*r*rr2tjq#CDMJcFI(
-!'pM`!$K\hJ,~>
-df0;4rVup@K)Yfnq>^NanG`Jrq>^MfL]7@Hq>^Mfdf0@2#l4N$ItI\%hZ+dMs4mVS=SVps=Qf\b
-mhkj#!3c+r!.XhF!8m5E!9a1Y!&4$E!'pD]!$M+;!8mSP!8l]6!8%#H!3bD^!"f#-!'ng/!+>X'
-!.XP=!.XhF!8m5E!+>X'q>UGEq>^LdmJd1$q>^Mfq>UHPq#CEPgA_3J./EoD\,?7+5l(H]#hOY-
-g]%7=rVup@dJn^~>
-df0;4rVup@K)Yfnq>^NanG`Jrq>^MfL]7@Hq>^Mfdf0@2#l4N$ItI\%hZ+dMs4mVS=SVps=Qf\b
-mhkj#!3c+r!.XhF!8m5E!9a1Y!&4$E!'pD]!$M+;!8mSP!8l]6!8%#H!3bD^!"f#-!'ng/!+>X'
-!.XP=!.XhF!8m5E!+>X'q>UGEq>^LdmJd1$q>^Mfq>UHPq#CEPgA_3J./EoD\,?7+5l(H]#hOY-
-g]%7=rVup@dJn^~>
-df0;4rVup@K)Yfnq>^NanG`Jrq>^MfL]7@Hq>^Mfdf0@2#l4N$ItI\%hZ+dMs4mVS=SVps=Qf\b
-mhkj#!3c+r!.XhF!8m5E!9a1Y!&4$E!'pD]!$M+;!8mSP!8l]6!8%#H!3bD^!"f#-!'ng/!+>X'
-!.XP=!.XhF!8m5E!+>X'q>UGEq>^LdmJd1$q>^Mfq>UHPq#CEPgA_3J./EoD\,?7+5l(H]#hOY-
-g]%7=rVup@dJn^~>
-df0;4rVup@K)YgYq>^MVnc&XQ#l4N$hhV43TDANfT@3`>;#((k^OlIehZ+dMs4mVSchIJ?TBZ@V
-pIP)[!$Lt7!.XhF!8m5E!,23/!13<W!'pD]!$M(:!)WLl!'oE@!&46L!@[^&rr=2=!!".drr?I'
-!!%N=rr@QF!!(pErr?I'!;ZWpchRP@cgLf5^\Rp1TD8Ed;#1.l5hc5<E;BP7@/Ks)h['&Y!AO8!
-s4mVS5lL``+OU4>~>
-df0;4rVup@K)YgYq>^MVnc&XQ#l4N$hhV43TDANfT@3`>;#((k^OlIehZ+dMs4mVSchIJ?TBZ@V
-pIP)[!$Lt7!.XhF!8m5E!,23/!13<W!'pD]!$M(:!)WLl!'oE@!&46L!@[^&rr=2=!!".drr?I'
-!!%N=rr@QF!!(pErr?I'!;ZWpchRP@cgLf5^\Rp1TD8Ed;#1.l5hc5<E;BP7@/Ks)h['&Y!AO8!
-s4mVS5lL``+OU4>~>
-df0;4rVup@K)YgYq>^MVnc&XQ#l4N$hhV43TDANfT@3`>;#((k^OlIehZ+dMs4mVSchIJ?TBZ@V
-pIP)[!$Lt7!.XhF!8m5E!,23/!13<W!'pD]!$M(:!)WLl!'oE@!&46L!@[^&rr=2=!!".drr?I'
-!!%N=rr@QF!!(pErr?I'!;ZWpchRP@cgLf5^\Rp1TD8Ed;#1.l5hc5<E;BP7@/Ks)h['&Y!AO8!
-s4mVS5lL``+OU4>~>
-df0;4rVup@K)YhSq>^O5p[\=aE;BP70S]T-TDANfTBuRZ[rCg%rrCC@!!"^(rrV'X+G'RIrr@<=
-!!&YWrrMjbp](<7p&>#Aq>^NQn,EC6q>^O%p[eCb5l1N]+Sbs:^\Ij0J*Ht7pMaO:rrB7u!!%f@
-rrK#OqYpODq>^NQcMmlPq>^MFnc&T=q>^NQmf*8pq>g<j!&46L!)W.a!T,m5!!&YdrrBh0!!%N5
-rrVq6@/'[$^\Rp2)"7>$!/L@M!.TS"h#@@>rVup@dJn^~>
-df0;4rVup@K)YhSq>^O5p[\=aE;BP70S]T-TDANfTBuRZ[rCg%rrCC@!!"^(rrV'X+G'RIrr@<=
-!!&YWrrMjbp](<7p&>#Aq>^NQn,EC6q>^O%p[eCb5l1N]+Sbs:^\Ij0J*Ht7pMaO:rrB7u!!%f@
-rrK#OqYpODq>^NQcMmlPq>^MFnc&T=q>^NQmf*8pq>g<j!&46L!)W.a!T,m5!!&YdrrBh0!!%N5
-rrVq6@/'[$^\Rp2)"7>$!/L@M!.TS"h#@@>rVup@dJn^~>
-df0;4rVup@K)YhSq>^O5p[\=aE;BP70S]T-TDANfTBuRZ[rCg%rrCC@!!"^(rrV'X+G'RIrr@<=
-!!&YWrrMjbp](<7p&>#Aq>^NQn,EC6q>^O%p[eCb5l1N]+Sbs:^\Ij0J*Ht7pMaO:rrB7u!!%f@
-rrK#OqYpODq>^NQcMmlPq>^MFnc&T=q>^NQmf*8pq>g<j!&46L!)W.a!T,m5!!&YdrrBh0!!%N5
-rrVq6@/'[$^\Rp2)"7>$!/L@M!.TS"h#@@>rVup@dJn^~>
-df0;4rVup@Jc>^(q>^MVoD\jS#l4N$YD3&WTDANfTBuR[T)]^pmJd4]5ktB[O+I<4hZ+dMs4dPS
-pF,e:!2&ZY!V].[!!%99rr@QF!!(pGrrMR:q>^M7o)A\TqZ$U=p\t4Iq#CD]li.(--idZNrr<o4
-!!*A7mf*?-!$M.<!+>X'!2%R:!+>X'!.XP=!.XhF!8m5E!+>X'q#:>Tq#CDmnc&Wn&GZ;+TD/?c
-0_k\KQg=YRa!^pqq#:B`)#=44\+ot'0_tbM#fhMrh>[I?rVup@dJn^~>
-df0;4rVup@Jc>^(q>^MVoD\jS#l4N$YD3&WTDANfTBuR[T)]^pmJd4]5ktB[O+I<4hZ+dMs4dPS
-pF,e:!2&ZY!V].[!!%99rr@QF!!(pGrrMR:q>^M7o)A\TqZ$U=p\t4Iq#CD]li.(--idZNrr<o4
-!!*A7mf*?-!$M.<!+>X'!2%R:!+>X'!.XP=!.XhF!8m5E!+>X'q#:>Tq#CDmnc&Wn&GZ;+TD/?c
-0_k\KQg=YRa!^pqq#:B`)#=44\+ot'0_tbM#fhMrh>[I?rVup@dJn^~>
-df0;4rVup@Jc>^(q>^MVoD\jS#l4N$YD3&WTDANfTBuR[T)]^pmJd4]5ktB[O+I<4hZ+dMs4dPS
-pF,e:!2&ZY!V].[!!%99rr@QF!!(pGrrMR:q>^M7o)A\TqZ$U=p\t4Iq#CD]li.(--idZNrr<o4
-!!*A7mf*?-!$M.<!+>X'!2%R:!+>X'!.XP=!.XhF!8m5E!+>X'q#:>Tq#CDmnc&Wn&GZ;+TD/?c
-0_k\KQg=YRa!^pqq#:B`)#=44\+ot'0_tbM#fhMrh>[I?rVup@dJn^~>
-df0;4rVup@Jc>_Rq>^O%\+Tb%pIP,\!&0-,!2')f!2&WX!2'5j![*Qmnc&Xa8GN5d)#&U]!oEu#
-JcFI(!QPK@!!,pZnG`O0./3cC0_b5>!.XhF!8$c@!Uh`=!!*Yoo)A\TqZ$U=p\t6&p](;5mf*=6
-;#UFp@/9g&O8/bV#e0@("MZVj!$M.<!0?sV!(bE8!+>X'!.XP=!.XhF!8m5E!+>X'q#:?Wq#CF$
-a7TB4hba%I!2'#c!4V_'!-%B+!RFUA!!$F%rr?0t!!$F$rrLFOq>^OEpOWA$rr>=`!!".hs*t~>
-df0;4rVup@Jc>_Rq>^O%\+Tb%pIP,\!&0-,!2')f!2&WX!2'5j![*Qmnc&Xa8GN5d)#&U]!oEu#
-JcFI(!QPK@!!,pZnG`O0./3cC0_b5>!.XhF!8$c@!Uh`=!!*Yoo)A\TqZ$U=p\t6&p](;5mf*=6
-;#UFp@/9g&O8/bV#e0@("MZVj!$M.<!0?sV!(bE8!+>X'!.XP=!.XhF!8m5E!+>X'q#:?Wq#CF$
-a7TB4hba%I!2'#c!4V_'!-%B+!RFUA!!$F%rr?0t!!$F$rrLFOq>^OEpOWA$rr>=`!!".hs*t~>
-df0;4rVup@Jc>_Rq>^O%\+Tb%pIP,\!&0-,!2')f!2&WX!2'5j![*Qmnc&Xa8GN5d)#&U]!oEu#
-JcFI(!QPK@!!,pZnG`O0./3cC0_b5>!.XhF!8$c@!Uh`=!!*Yoo)A\TqZ$U=p\t6&p](;5mf*=6
-;#UFp@/9g&O8/bV#e0@("MZVj!$M.<!0?sV!(bE8!+>X'!.XP=!.XhF!8m5E!+>X'q#:?Wq#CF$
-a7TB4hba%I!2'#c!4V_'!-%B+!RFUA!!$F%rr?0t!!$F$rrLFOq>^OEpOWA$rr>=`!!".hs*t~>
-df0;4rVup@Jc>cN+Sl'=&C:+N!V].\!!&@>rrA\f!!&YXrrA\h!!3F>^\%O,^Gtug!2"iB"976Y
-+G'RGrr@QC!!*XtoD\j[B_MK-#hS\J!.XhF!XNJko`"s$./<iCTCMp]5l1N]+SPg8E;0D60X(*J
-!r&Thqu?_)q>UKi3;EOU#^H+:rrLG:r;Zg?qYpQAq#CDMp\t9gfA$<*@/9j'J+<O=J,0-FhsULE
-@/9ltrr@$5!!%NCrrL_jo`+uapAY,3p](=KYOhbqpSUjc!!$F&rrA\f!!*r*pAY,;q#CD6JcFU,
-!'pM`!$K\hJ,~>
-df0;4rVup@Jc>cN+Sl'=&C:+N!V].\!!&@>rrA\f!!&YXrrA\h!!3F>^\%O,^Gtug!2"iB"976Y
-+G'RGrr@QC!!*XtoD\j[B_MK-#hS\J!.XhF!XNJko`"s$./<iCTCMp]5l1N]+SPg8E;0D60X(*J
-!r&Thqu?_)q>UKi3;EOU#^H+:rrLG:r;Zg?qYpQAq#CDMp\t9gfA$<*@/9j'J+<O=J,0-FhsULE
-@/9ltrr@$5!!%NCrrL_jo`+uapAY,3p](=KYOhbqpSUjc!!$F&rrA\f!!*r*pAY,;q#CD6JcFU,
-!'pM`!$K\hJ,~>
-df0;4rVup@Jc>cN+Sl'=&C:+N!V].\!!&@>rrA\f!!&YXrrA\h!!3F>^\%O,^Gtug!2"iB"976Y
-+G'RGrr@QC!!*XtoD\j[B_MK-#hS\J!.XhF!XNJko`"s$./<iCTCMp]5l1N]+SPg8E;0D60X(*J
-!r&Thqu?_)q>UKi3;EOU#^H+:rrLG:r;Zg?qYpQAq#CDMp\t9gfA$<*@/9j'J+<O=J,0-FhsULE
-@/9ltrr@$5!!%NCrrL_jo`+uapAY,3p](=KYOhbqpSUjc!!$F&rrA\f!!*r*pAY,;q#CD6JcFU,
-!'pM`!$K\hJ,~>
-df0;4rVup@Jc>cNQhUO]@,Lh\!M:M1!!+5:OT,=LpV-]Qq>^M?pV-_&p\t5cq#CL.=JsLBrrVAM
-5kb6Y@"J@XrrV'X+G'RFrr?I#!!3^>YPJ2"n"3GM!!*A7o)A]>pAb7KO3d\&!r&lpp](:bnG`JR
-qZ$U=pAY0f3;3CS302\drrTB3#l4N$@/0a&h[oP_!Z7!UqYpWSO"gG2!$M+;!&43K!_BNhrVm#X
-[qHUdj8T,JqS*#$q>^M'qS*%)q>UGEq>^NQmf*8pq>g9i!Ugm#!!sKU^XrMccbFrXo)Jc_pAY0f
-3;3CS302\drrTB3#l4N$@/Bm(h[oVa!4VY$!V\#<!!'cbs53hV5lL``+OU4>~>
-df0;4rVup@Jc>cNQhUO]@,Lh\!M:M1!!+5:OT,=LpV-]Qq>^M?pV-_&p\t5cq#CL.=JsLBrrVAM
-5kb6Y@"J@XrrV'X+G'RFrr?I#!!3^>YPJ2"n"3GM!!*A7o)A]>pAb7KO3d\&!r&lpp](:bnG`JR
-qZ$U=pAY0f3;3CS302\drrTB3#l4N$@/0a&h[oP_!Z7!UqYpWSO"gG2!$M+;!&43K!_BNhrVm#X
-[qHUdj8T,JqS*#$q>^M'qS*%)q>UGEq>^NQmf*8pq>g9i!Ugm#!!sKU^XrMccbFrXo)Jc_pAY0f
-3;3CS302\drrTB3#l4N$@/Bm(h[oVa!4VY$!V\#<!!'cbs53hV5lL``+OU4>~>
-df0;4rVup@Jc>cNQhUO]@,Lh\!M:M1!!+5:OT,=LpV-]Qq>^M?pV-_&p\t5cq#CL.=JsLBrrVAM
-5kb6Y@"J@XrrV'X+G'RFrr?I#!!3^>YPJ2"n"3GM!!*A7o)A]>pAb7KO3d\&!r&lpp](:bnG`JR
-qZ$U=pAY0f3;3CS302\drrTB3#l4N$@/0a&h[oP_!Z7!UqYpWSO"gG2!$M+;!&43K!_BNhrVm#X
-[qHUdj8T,JqS*#$q>^M'qS*%)q>UGEq>^NQmf*8pq>g9i!Ugm#!!sKU^XrMccbFrXo)Jc_pAY0f
-3;3CS302\drrTB3#l4N$@/Bm(h[oVa!4VY$!V\#<!!'cbs53hV5lL``+OU4>~>
-df0;4rVup@JcGcM!*Jsq#!b_/IrIXqp](=#c]A)+^Z5@phtR-NTCW$b0L.l/o`,"@pOWAErrV'X
-+G'RErr@$0!!!T.5k=sV&ARc8!.XS?"rKU-E'QYopAb4*kOAKO5l1N]+SGa8k8<jl"s?/rE+hKj
-o`+u"p\t5so`,1M5ZiM$5T'7r!$M+;!0?gR!['`fqu?_)j8T+ol2UhAq>UGEq>^NQmf*8pq>g6h
-!2&0L!2&ra!Tt<m!!XQ25]CC%0_GDG@/Bm'5l(H\=S)Om^\Ij1+SUHei;WdBrVup@dJn^~>
-df0;4rVup@JcGcM!*Jsq#!b_/IrIXqp](=#c]A)+^Z5@phtR-NTCW$b0L.l/o`,"@pOWAErrV'X
-+G'RErr@$0!!!T.5k=sV&ARc8!.XS?"rKU-E'QYopAb4*kOAKO5l1N]+SGa8k8<jl"s?/rE+hKj
-o`+u"p\t5so`,1M5ZiM$5T'7r!$M+;!0?gR!['`fqu?_)j8T+ol2UhAq>UGEq>^NQmf*8pq>g6h
-!2&0L!2&ra!Tt<m!!XQ25]CC%0_GDG@/Bm'5l(H\=S)Om^\Ij1+SUHei;WdBrVup@dJn^~>
-df0;4rVup@JcGcM!*Jsq#!b_/IrIXqp](=#c]A)+^Z5@phtR-NTCW$b0L.l/o`,"@pOWAErrV'X
-+G'RErr@$0!!!T.5k=sV&ARc8!.XS?"rKU-E'QYopAb4*kOAKO5l1N]+SGa8k8<jl"s?/rE+hKj
-o`+u"p\t5so`,1M5ZiM$5T'7r!$M+;!0?gR!['`fqu?_)j8T+ol2UhAq>UGEq>^NQmf*8pq>g6h
-!2&0L!2&ra!Tt<m!!XQ25]CC%0_GDG@/Bm'5l(H\=S)Om^\Ij1+SUHei;WdBrVup@dJn^~>
-df0;4rVup@JcGcM!V\#+!!&pWrrBgp!!(pNrrA\P!!*qgJcG`L!oEu#JcF=$!.Wr-!>*THrr@Q/
-!!*YWn,EAQqZ$U=o`"sD+QEG%@.sU#O6-EB+Sl$<pE8o)!+=je!5Ie!!8mVP!.XhF!8m5E!+>X'
-p&>"_kl:]Kq>^Mfo`"sD+QEG%@/Ks(L\^uO)!CJi!,20.!+:BXi;WdBrVup@dJn^~>
-df0;4rVup@JcGcM!V\#+!!&pWrrBgp!!(pNrrA\P!!*qgJcG`L!oEu#JcF=$!.Wr-!>*THrr@Q/
-!!*YWn,EAQqZ$U=o`"sD+QEG%@.sU#O6-EB+Sl$<pE8o)!+=je!5Ie!!8mVP!.XhF!8m5E!+>X'
-p&>"_kl:]Kq>^Mfo`"sD+QEG%@/Ks(L\^uO)!CJi!,20.!+:BXi;WdBrVup@dJn^~>
-df0;4rVup@JcGcM!V\#+!!&pWrrBgp!!(pNrrA\P!!*qgJcG`L!oEu#JcF=$!.Wr-!>*THrr@Q/
-!!*YWn,EAQqZ$U=o`"sD+QEG%@.sU#O6-EB+Sl$<pE8o)!+=je!5Ie!!8mVP!.XhF!8m5E!+>X'
-p&>"_kl:]Kq>^Mfo`"sD+QEG%@/Ks(L\^uO)!CJi!,20.!+:BXi;WdBrVup@dJn^~>
-df0;4rVup@JcG`L!S7nJ!!%8'rrBgp!!(pNrrA\Q!!+e2JcG]K!oEu#JcF:#!M9qa!!+M*n,EB;
-j8]2lcgLf55l1N]+S5U6mm,q6!+>L"!O!'u!!"/:rrL.Gn,NGrj8T+ol2UhAq>UGEq>^NQmf*8p
-q>g3g!V].O!!3G(^\Rp1TC`'`mm,q6!+>a)!RD&J!!&qerrMj2q#CE(JcF^/!'pM`!$K\hJ,~>
-df0;4rVup@JcG`L!S7nJ!!%8'rrBgp!!(pNrrA\Q!!+e2JcG]K!oEu#JcF:#!M9qa!!+M*n,EB;
-j8]2lcgLf55l1N]+S5U6mm,q6!+>L"!O!'u!!"/:rrL.Gn,NGrj8T+ol2UhAq>UGEq>^NQmf*8p
-q>g3g!V].O!!3G(^\Rp1TC`'`mm,q6!+>a)!RD&J!!&qerrMj2q#CE(JcF^/!'pM`!$K\hJ,~>
-df0;4rVup@JcG`L!S7nJ!!%8'rrBgp!!(pNrrA\Q!!+e2JcG]K!oEu#JcF:#!M9qa!!+M*n,EB;
-j8]2lcgLf55l1N]+S5U6mm,q6!+>L"!O!'u!!"/:rrL.Gn,NGrj8T+ol2UhAq>UGEq>^NQmf*8p
-q>g3g!V].O!!3G(^\Rp1TC`'`mm,q6!+>a)!RD&J!!&qerrMj2q#CE(JcF^/!'pM`!$K\hJ,~>
-df0;4rVup@JcG]K!S9$m!!*@\N;immj8]2;p\t5kjo>EYpOWABrrV'X+G'RBrrM:rk5YPpO8&)B
-!.X)1!@Z:]rr>=]!!"/3rr@$#!!-3Bo`"s<+R/q-#]TP<!130T!+=je!5Ie!!8mVP!.XhF!8m5E
-!+>X'o`"s\0^\oC+OC)&q>^Mfnc&T.jo>Eaa8Q#=pF,k<!*J^i!4Vb(!>t!Ns5O%Y5lL``+OU4>~>
-df0;4rVup@JcG]K!S9$m!!*@\N;immj8]2;p\t5kjo>EYpOWABrrV'X+G'RBrrM:rk5YPpO8&)B
-!.X)1!@Z:]rr>=]!!"/3rr@$#!!-3Bo`"s<+R/q-#]TP<!130T!+=je!5Ie!!8mVP!.XhF!8m5E
-!+>X'o`"s\0^\oC+OC)&q>^Mfnc&T.jo>Eaa8Q#=pF,k<!*J^i!4Vb(!>t!Ns5O%Y5lL``+OU4>~>
-df0;4rVup@JcG]K!S9$m!!*@\N;immj8]2;p\t5kjo>EYpOWABrrV'X+G'RBrrM:rk5YPpO8&)B
-!.X)1!@Z:]rr>=]!!"/3rr@$#!!-3Bo`"s<+R/q-#]TP<!130T!+=je!5Ie!!8mVP!.XhF!8m5E
-!+>X'o`"s\0^\oC+OC)&q>^Mfnc&T.jo>Eaa8Q#=pF,k<!*J^i!4Vb(!>t!Ns5O%Y5lL``+OU4>~>
-df0;4rVup@JcGZJ!V^j-!!+LoMuNdlj8]2;pAY3??jQ&u!AM!6s8)`shZ+dMs3goJcTpdr!XO&>
-m/I'8qZ$^(f4YHZ!!.?=m/I&NqZ$U=nG`RIE!Ye1![rienc&[bNu79b!Z61Fp&>'-&Fof$@,q7e
-^Zke!htd9PJ,0-FhsULE@/9lprrMk=nGi^uGjk\4^\Rp1TCDj^hf&kf!!4R(kPP8ZE;BP8)!C>e
-!*K$s!*FgPir9!DrVup@dJn^~>
-df0;4rVup@JcGZJ!V^j-!!+LoMuNdlj8]2;pAY3??jQ&u!AM!6s8)`shZ+dMs3goJcTpdr!XO&>
-m/I'8qZ$^(f4YHZ!!.?=m/I&NqZ$U=nG`RIE!Ye1![rienc&[bNu79b!Z61Fp&>'-&Fof$@,q7e
-^Zke!htd9PJ,0-FhsULE@/9lprrMk=nGi^uGjk\4^\Rp1TCDj^hf&kf!!4R(kPP8ZE;BP8)!C>e
-!*K$s!*FgPir9!DrVup@dJn^~>
-df0;4rVup@JcGZJ!V^j-!!+LoMuNdlj8]2;pAY3??jQ&u!AM!6s8)`shZ+dMs3goJcTpdr!XO&>
-m/I'8qZ$^(f4YHZ!!.?=m/I&NqZ$U=nG`RIE!Ye1![rienc&[bNu79b!Z61Fp&>'-&Fof$@,q7e
-^Zke!htd9PJ,0-FhsULE@/9lprrMk=nGi^uGjk\4^\Rp1TCDj^hf&kf!!4R(kPP8ZE;BP8)!C>e
-!*K$s!*FgPir9!DrVup@dJn^~>
-df0;4rVup@JcGTH!l%hCoDeq@L\H]+!5IRp!8mGK"6Z"Q&F]Z#0W0L%q#:EQ!$Hjmd/O0fE%(2U
-!_AC8lMgj6qZ$dbs8V8$&G,r'5f`0i!'pD]!$L_0!p=e^nGiV5E6mnN!r%a8o)Jgt=Kh8p!q1UM
-o`,"8LZAC7^Zke!htd9PJ,0-FhsULE@/9lnrrL/"oDenohu3QT^\Rp1TC2^\kBJ]N!!49^ch[S@
-^\Ij0VsXKbk8=!p!2kDJj8T*ErVup@dJn^~>
-df0;4rVup@JcGTH!l%hCoDeq@L\H]+!5IRp!8mGK"6Z"Q&F]Z#0W0L%q#:EQ!$Hjmd/O0fE%(2U
-!_AC8lMgj6qZ$dbs8V8$&G,r'5f`0i!'pD]!$L_0!p=e^nGiV5E6mnN!r%a8o)Jgt=Kh8p!q1UM
-o`,"8LZAC7^Zke!htd9PJ,0-FhsULE@/9lnrrL/"oDenohu3QT^\Rp1TC2^\kBJ]N!!49^ch[S@
-^\Ij0VsXKbk8=!p!2kDJj8T*ErVup@dJn^~>
-df0;4rVup@JcGTH!l%hCoDeq@L\H]+!5IRp!8mGK"6Z"Q&F]Z#0W0L%q#:EQ!$Hjmd/O0fE%(2U
-!_AC8lMgj6qZ$dbs8V8$&G,r'5f`0i!'pD]!$L_0!p=e^nGiV5E6mnN!r%a8o)Jgt=Kh8p!q1UM
-o`,"8LZAC7^Zke!htd9PJ,0-FhsULE@/9lnrrL/"oDenohu3QT^\Rp1TC2^\kBJ]N!!49^ch[S@
-^\Ij0VsXKbk8=!p!2kDJj8T*ErVup@dJn^~>
-df0;4rVup@JcGNF"8AEa0`(hP&3t3dJcF@%"NQRB5T':s!sh_qkCN[,rrV'X+G'R;rr^l683ltN
-";jC;YP6fO"7M:I)#F:8#XFa>kl1WJqZ$U=li..WYAc`l+T)3B(dN&DkN;dJpTJO$5S3ko"!C-i
-a6Wa5^OJL6+:(4t=F[gKMZ3b8Ijk-n!]ZP8h#@QHYAc`l+T)3B(dN&DkCNZ:rr>=`!!".hs*t~>
-df0;4rVup@JcGNF"8AEa0`(hP&3t3dJcF@%"NQRB5T':s!sh_qkCN[,rrV'X+G'R;rr^l683ltN
-";jC;YP6fO"7M:I)#F:8#XFa>kl1WJqZ$U=li..WYAc`l+T)3B(dN&DkN;dJpTJO$5S3ko"!C-i
-a6Wa5^OJL6+:(4t=F[gKMZ3b8Ijk-n!]ZP8h#@QHYAc`l+T)3B(dN&DkCNZ:rr>=`!!".hs*t~>
-df0;4rVup@JcGNF"8AEa0`(hP&3t3dJcF@%"NQRB5T':s!sh_qkCN[,rrV'X+G'R;rr^l683ltN
-";jC;YP6fO"7M:I)#F:8#XFa>kl1WJqZ$U=li..WYAc`l+T)3B(dN&DkN;dJpTJO$5S3ko"!C-i
-a6Wa5^OJL6+:(4t=F[gKMZ3b8Ijk-n!]ZP8h#@QHYAc`l+T)3B(dN&DkCNZ:rr>=`!!".hs*t~>
-df0;4rVup@JcG<@!lr(=JcEpn"4+`sa+=9[rrV'X+G'R5rr`#1^X(7+"4+`sfAll2+Su-=+G'QW
-s8Th6hgtfYs7QBl5lL``+OU4>~>
-df0;4rVup@JcG<@!lr(=JcEpn"4+`sa+=9[rrV'X+G'R5rr`#1^X(7+"4+`sfAll2+Su-=+G'QW
-s8Th6hgtfYs7QBl5lL``+OU4>~>
-df0;4rVup@JcG<@!lr(=JcEpn"4+`sa+=9[rrV'X+G'R5rr`#1^X(7+"4+`sfAll2+Su-=+G'QW
-s8Th6hgtfYs7QBl5lL``+OU4>~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$n,E@nqZ$UUJcC<$JcCH(!'pM`!$K\hJ,~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$n,E@nqZ$UUJcC<$JcCH(!'pM`!$K\hJ,~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$n,E@nqZ$UUJcC<$JcCH(!'pM`!$K\hJ,~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$nG`LWq>^L\JcC<$JcCH(!'pM`!$K\hJ,~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$nG`LWq>^L\JcC<$JcCH(!'pM`!$K\hJ,~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$nG`LWq>^L\JcC<$JcCH(!'pM`!$K\hJ,~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$nG`L'q>^M'JcC<$JcCH(!'pM`!$K\hJ,~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$nG`L'q>^M'JcC<$JcCH(!'pM`!$K\hJ,~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$nG`L'q>^M'JcC<$JcCH(!'pM`!$K\hJ,~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$nG`KDq>^MFJcC<$JcCH(!'pM`!$K\hJ,~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$nG`KDq>^MFJcC<$JcCH(!'pM`!$K\hJ,~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$nG`KDq>^MFJcC<$JcCH(!'pM`!$K\hJ,~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$nG`J2q>^N1JcC<$JcCH(!'pM`!$K\hJ,~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$nG`J2q>^N1JcC<$JcCH(!'pM`!$K\hJ,~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$nG`J2q>^N1JcC<$JcCH(!'pM`!$K\hJ,~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$nc&TUq>^O%pOW?qs+13(rr>=`!!".hs*t~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$nc&TUq>^O%pOW?qs+13(rr>=`!!".hs*t~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$nc&TUq>^O%pOW?qs+13(rr>=`!!".hs*t~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$o)A]Vq#CCkJcC<$JcCE'!'pM`!$K\hJ,~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$o)A]Vq#CCkJcC<$JcCE'!'pM`!$K\hJ,~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$o)A]Vq#CCkJcC<$JcCE'!'pM`!$K\hJ,~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$rVllTq>UK)8GE/bc[l+Is+13'rr>=`!!".hs*t~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$rVllTq>UK)8GE/bc[l+Is+13'rr>=`!!".hs*t~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$rVllTq>UK)8GE/bc[l+Is+13'rr>=`!!".hs*t~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$rVm*f!'!5gE'Q\^!!#iHs+13$s+C=O5lL``+OU4>~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$rVm*f!'!5gE'Q\^!!#iHs+13$s+C=O5lL``+OU4>~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$rVm*f!'!5gE'Q\^!!#iHs+13$s+C=O5lL``+OU4>~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$rVlj_n,NJ+kCNYas+13&rr>=`!!".hs*t~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$rVlj_n,NJ+kCNYas+13&rr>=`!!".hs*t~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$rVlj_n,NJ+kCNYas+13&rr>=`!!".hs*t~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$rVlj_nGiRqa+=8As+13%rr>=`!!".hs*t~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$rVlj_nGiRqa+=8As+13%rr>=`!!".hs*t~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$rVlj_nGiRqa+=8As+13%rr>=`!!".hs*t~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$rVlj_nc/\%^OcE9s+13$rr>=`!!".hs*t~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$rVlj_nc/\%^OcE9s+13$rr>=`!!".hs*t~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$rVlj_nc/\%^OcE9s+13$rr>=`!!".hs*t~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$rVlj_o)JeNhgtfYs+13$rrN-brVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$rVlj_o)JeNhgtfYs+13$rrN-brVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$rVlj_o)JeNhgtfYs+13$rrN-brVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$rVlj_o`,"HYCZ_)s+13$s8N#u5lL``+OU4>~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$rVlj_o`,"HYCZ_)s+13$s8N#u5lL``+OU4>~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$rVlj_o`,"HYCZ_)s+13$s8N#u5lL``+OU4>~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$rVln;3;EOU5_$h*s+13$s+14Jrr>=`!!".hs*t~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$rVln;3;EOU5_$h*s+13$s+14Jrr>=`!!".hs*t~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$rVln;3;EOU5_$h*s+13$s+14Jrr>=`!!".hs*t~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$q>UQk^VBMos+13$s+14Err>=`!!".hs*t~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$q>UQk^VBMos+13$s+14Err>=`!!".hs*t~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$q>UQk^VBMos+13$s+14Err>=`!!".hs*t~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcF*s!5J@1!2"iBJcDSH!'pM`!$K\hJ,~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcF*s!5J@1!2"iBJcDSH!'pM`!$K\hJ,~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcF*s!5J@1!2"iBJcDSH!'pM`!$K\hJ,~>
-df0;4rVup@JcF'r#ku*KQ[bpJ^Yb:Us1\PprI4m0^YdoJ!lr'Br-nd/^\<E]!oEu#JcC<$JcF*s
-!5J@1!2"iBJcDSH!'pM`!$K\hJ,~>
-df0;4rVup@JcF'r#ku*KQ[bpJ^Yb:Us1\PprI4m0^YdoJ!lr'Br-nd/^\<E]!oEu#JcC<$JcF*s
-!5J@1!2"iBJcDSH!'pM`!$K\hJ,~>
-df0;4rVup@JcF'r#ku*KQ[bpJ^Yb:Us1\PprI4m0^YdoJ!lr'Br-nd/^\<E]!oEu#JcC<$JcF*s
-!5J@1!2"iBJcDSH!'pM`!$K\hJ,~>
-df0;4rVup@Jc>_2r-n^mg]%BEQUhtf!!*X5S,WTJO'j[8!!49NVrn!]c\GUVo`,%ABZGo.!oEu#
-JcC<$cMmmbpV-^[lMgkQqS*%!YQ"U;q>^MfJcC<$V>gN\rVup@dJn^~>
-df0;4rVup@Jc>_2r-n^mg]%BEQUhtf!!*X5S,WTJO'j[8!!49NVrn!]c\GUVo`,%ABZGo.!oEu#
-JcC<$cMmmbpV-^[lMgkQqS*%!YQ"U;q>^MfJcC<$V>gN\rVup@dJn^~>
-df0;4rVup@Jc>_2r-n^mg]%BEQUhtf!!*X5S,WTJO'j[8!!49NVrn!]c\GUVo`,%ABZGo.!oEu#
-JcC<$cMmmbpV-^[lMgkQqS*%!YQ"U;q>^MfJcC<$V>gN\rVup@dJn^~>
-df0;4rVup@Jc>]Uqu?_hhZ!ZGT2>(Y!$Im5!mc*>mf3D3QhTkH!j?8SmJm81Q\k_DhZ+dMs+13q
-rr=29!!*r2li-t"q>^N1YQ"U;q>^MfJcC<$V>gN\rVup@dJn^~>
-df0;4rVup@Jc>]Uqu?_hhZ!ZGT2>(Y!$Im5!mc*>mf3D3QhTkH!j?8SmJm81Q\k_DhZ+dMs+13q
-rr=29!!*r2li-t"q>^N1YQ"U;q>^MfJcC<$V>gN\rVup@dJn^~>
-df0;4rVup@Jc>]Uqu?_hhZ!ZGT2>(Y!$Im5!mc*>mf3D3QhTkH!j?8SmJm81Q\k_DhZ+dMs+13q
-rr=29!!*r2li-t"q>^N1YQ"U;q>^MfJcC<$V>gN\rVup@dJn^~>
-df0;4rVup@K)Yi&qZ$Vgi;WiPGjbV4+JJf:n!>Hf!!+4_nG`RYO!*Ze!AM9HrrV'X+G'QDs3CWE
-+SGd8O6cfG^\Rp1^T[Y;^\Rp1T7R#ns/#_q5lL``+OU4>~>
-df0;4rVup@K)Yi&qZ$Vgi;WiPGjbV4+JJf:n!>Hf!!+4_nG`RYO!*Ze!AM9HrrV'X+G'QDs3CWE
-+SGd8O6cfG^\Rp1^T[Y;^\Rp1T7R#ns/#_q5lL``+OU4>~>
-df0;4rVup@K)Yi&qZ$Vgi;WiPGjbV4+JJf:n!>Hf!!+4_nG`RYO!*Ze!AM9HrrV'X+G'QDs3CWE
-+SGd8O6cfG^\Rp1^T[Y;^\Rp1T7R#ns/#_q5lL``+OU4>~>
-df0;4rVup@K)Yh+qZ$VgiVrr!...'8+JJf85j&+J#`nNU!$LA'!2#5M!oEu#JcC<$cMmkep&G+1
-p[%n[^\Rp1^T[Y;^\Rp1T7R#ns/#_q5lL``+OU4>~>
-df0;4rVup@K)Yh+qZ$VgiVrr!...'8+JJf85j&+J#`nNU!$LA'!2#5M!oEu#JcC<$cMmkep&G+1
-p[%n[^\Rp1^T[Y;^\Rp1T7R#ns/#_q5lL``+OU4>~>
-df0;4rVup@K)Yh+qZ$VgiVrr!...'8+JJf85j&+J#`nNU!$LA'!2#5M!oEu#JcC<$cMmkep&G+1
-p[%n[^\Rp1^T[Y;^\Rp1T7R#ns/#_q5lL``+OU4>~>
-df0;4rVup@K)Yg)qZ$Vgj8T/SGjGD1+JJf85ihtGL[tHF+QNM&T8ijPhZ+dMs+13qrr=27!!&)H
-rrBh1!!'d;rrBh1!!&XBs+13Hrr>=`!!".hs*t~>
-df0;4rVup@K)Yg)qZ$Vgj8T/SGjGD1+JJf85ihtGL[tHF+QNM&T8ijPhZ+dMs+13qrr=27!!&)H
-rrBh1!!'d;rrBh1!!&XBs+13Hrr>=`!!".hs*t~>
-df0;4rVup@K)Yg)qZ$Vgj8T/SGjGD1+JJf85ihtGL[tHF+QNM&T8ijPhZ+dMs+13qrr=27!!&)H
-rrBh1!!'d;rrBh1!!&XBs+13Hrr>=`!!".hs*t~>
-df0;4rVup@KDtq,q>^MfjSo8L0^A]=+JJf85i_nFVt9og+QEG%[uUIihZ+dMs+13qrr=27!!*r2
-mJd1$q>^N1YQ"U;q>^MfJcC<$V>gN\rVup@dJn^~>
-df0;4rVup@KDtq,q>^MfjSo8L0^A]=+JJf85i_nFVt9og+QEG%[uUIihZ+dMs+13qrr=27!!*r2
-mJd1$q>^N1YQ"U;q>^MfJcC<$V>gN\rVup@dJn^~>
-df0;4rVup@KDtq,q>^MfjSo8L0^A]=+JJf85i_nFVt9og+QEG%[uUIihZ+dMs+13qrr=27!!*r2
-mJd1$q>^N1YQ"U;q>^MfJcC<$V>gN\rVup@dJn^~>
-df0;4rVup@K`;(>#l4N$TB6(RpFu7?#<4tVIt(!S)#aL8+JJf85kb6_&3s?IIonu/!!*AOo`"n6
-pAb7C5Zn#8!`2-)p&G+1muRJMhZ+dMs+13qrr=26!!&)IrrBh1!!'d;rrBh1!!&XBs+13Hrr>=`
-!!".hs*t~>
-df0;4rVup@K`;(>#l4N$TB6(RpFu7?#<4tVIt(!S)#aL8+JJf85kb6_&3s?IIonu/!!*AOo`"n6
-pAb7C5Zn#8!`2-)p&G+1muRJMhZ+dMs+13qrr=26!!&)IrrBh1!!'d;rrBh1!!&XBs+13Hrr>=`
-!!".hs*t~>
-df0;4rVup@K`;(>#l4N$TB6(RpFu7?#<4tVIt(!S)#aL8+JJf85kb6_&3s?IIonu/!!*AOo`"n6
-pAb7C5Zn#8!`2-)p&G+1muRJMhZ+dMs+13qrr=26!!&)IrrBh1!!'d;rrBh1!!&XBs+13Hrr>=`
-!!".hs*t~>
-df0;4rVup@LAq:`8GE/bTB?.SpIP#Y!a))`q>UQkVcY(8rr>=]!!<L'TBH%M!P^Vg!!#jfrr=2<
-!!5uhn+cn`cWKoA!-"#!!oEu#JcC<$cMmkeoDen/p[8%]^\Rp1^T[Y;^\Rp1T7R#ns/#_q5lL``
-+OU4>~>
-df0;4rVup@LAq:`8GE/bTB?.SpIP#Y!a))`q>UQkVcY(8rr>=]!!<L'TBH%M!P^Vg!!#jfrr=2<
-!!5uhn+cn`cWKoA!-"#!!oEu#JcC<$cMmkeoDen/p[8%]^\Rp1^T[Y;^\Rp1T7R#ns/#_q5lL``
-+OU4>~>
-df0;4rVup@LAq:`8GE/bTB?.SpIP#Y!a))`q>UQkVcY(8rr>=]!!<L'TBH%M!P^Vg!!#jfrr=2<
-!!5uhn+cn`cWKoA!-"#!!oEu#JcC<$cMmkeoDen/p[8%]^\Rp1^T[Y;^\Rp1T7R#ns/#_q5lL``
-+OU4>~>
-df0;4rVup@NrK+JrkAQ5Iom9U!!&YRrr>mj!!,XBP5bMIr;ZmQVt]i`!O!X@!!(@<rr=2?!!4:8
-n+6P[`sDJ@!>,!errV'X+G'QDs3CWE+S,R5O7*#J^\Rp1^T[Y;^\Rp1T7R#ns/#_q5lL``+OU4>~>
-df0;4rVup@NrK+JrkAQ5Iom9U!!&YRrr>mj!!,XBP5bMIr;ZmQVt]i`!O!X@!!(@<rr=2?!!4:8
-n+6P[`sDJ@!>,!errV'X+G'QDs3CWE+S,R5O7*#J^\Rp1^T[Y;^\Rp1T7R#ns/#_q5lL``+OU4>~>
-df0;4rVup@NrK+JrkAQ5Iom9U!!&YRrr>mj!!,XBP5bMIr;ZmQVt]i`!O!X@!!(@<rr=2?!!4:8
-n+6P[`sDJ@!>,!errV'X+G'QDs3CWE+S,R5O7*#J^\Rp1^T[Y;^\Rp1T7R#ns/#_q5lL``+OU4>~>
-df0;4rVup@NrK*omf3?[kPkO,q#CF,^QAHu5QCd,Vss]eh[oS`!+>L""<[[E(m".c!4V_'!2kqY
-!oEu#JcC<$cMmkeqZ$Xf#l=T&)#*M!!5J@1!5G`;!5J@1!2"iBJcDSH!'pM`!$K\hJ,~>
-df0;4rVup@NrK*omf3?[kPkO,q#CF,^QAHu5QCd,Vss]eh[oS`!+>L""<[[E(m".c!4V_'!2kqY
-!oEu#JcC<$cMmkeqZ$Xf#l=T&)#*M!!5J@1!5G`;!5J@1!2"iBJcDSH!'pM`!$K\hJ,~>
-df0;4rVup@NrK*omf3?[kPkO,q#CF,^QAHu5QCd,Vss]eh[oS`!+>L""<[[E(m".c!4V_'!2kqY
-!oEu#JcC<$cMmkeqZ$Xf#l=T&)#*M!!5J@1!5G`;!5J@1!2"iBJcDSH!'pM`!$K\hJ,~>
-df0;4rVup@NrK*omf3?[kl1\H#l4N%+O?,K!^I$HmJd0Yq#CC+p&>+:#^H+2rrAD]!!$,_rrV'X
-+G'QDs3CWE+Su->?uYrB!0?UK!5J@1!5G`;!5J@1!2"iBJcDSH!'pM`!$K\hJ,~>
-df0;4rVup@NrK*omf3?[kl1\H#l4N%+O?,K!^I$HmJd0Yq#CC+p&>+:#^H+2rrAD]!!$,_rrV'X
-+G'QDs3CWE+Su->?uYrB!0?UK!5J@1!5G`;!5J@1!2"iBJcDSH!'pM`!$K\hJ,~>
-df0;4rVup@NrK*omf3?[kl1\H#l4N%+O?,K!^I$HmJd0Yq#CC+p&>+:#^H+2rrAD]!!$,_rrV'X
-+G'QDs3CWE+Su->?uYrB!0?UK!5J@1!5G`;!5J@1!2"iBJcDSH!'pM`!$K\hJ,~>
-df0;4rVup@NrK*omf3?[kl1WZq>^OEhi@^;T@`E/!*K$s!71B=!GL*Mrr=JD!!#9GrrV'X+G'QD
-s3CWE+Su-?@-7gm!!*r2nG`L'q>^N1YQ"U;q>^MfJcC<$V>gN\rVup@dJn^~>
-df0;4rVup@NrK*omf3?[kl1WZq>^OEhi@^;T@`E/!*K$s!71B=!GL*Mrr=JD!!#9GrrV'X+G'QD
-s3CWE+Su-?@-7gm!!*r2nG`L'q>^N1YQ"U;q>^MfJcC<$V>gN\rVup@dJn^~>
-df0;4rVup@NrK*omf3?[kl1WZq>^OEhi@^;T@`E/!*K$s!71B=!GL*Mrr=JD!!#9GrrV'X+G'QD
-s3CWE+Su-?@-7gm!!*r2nG`L'q>^N1YQ"U;q>^MfJcC<$V>gN\rVup@dJn^~>
-df0;4rVup@NrK*omf3?[l2Lb(q>^O%a+=9`rrC+8!!&)9rr@QF!!".'rrV'X+G'QDs3CWE+Su-?
-@/k3B!!%fDrrBh1!!'d;rrBh1!!&XBs+13Hrr>=`!!".hs*t~>
-df0;4rVup@NrK*omf3?[l2Lb(q>^O%a+=9`rrC+8!!&)9rr@QF!!".'rrV'X+G'QDs3CWE+Su-?
-@/k3B!!%fDrrBh1!!'d;rrBh1!!&XBs+13Hrr>=`!!".hs*t~>
-df0;4rVup@NrK*omf3?[l2Lb(q>^O%a+=9`rrC+8!!&)9rr@QF!!".'rrV'X+G'QDs3CWE+Su-?
-@/k3B!!%fDrrBh1!!'d;rrBh1!!&XBs+13Hrr>=`!!".hs*t~>
-df0;4rVup@NrK*omf3?[l2L`;q>^MVJcGBB!:T^`!.Wi)!2oYn!!n\d!oEu#JcC<$cMmkeqZ$_+
-s5s[b!!*Agnc&U(q>^N1YQ"U;q>^MfJcC<$V>gN\rVup@dJn^~>
-df0;4rVup@NrK*omf3?[l2L`;q>^MVJcGBB!:T^`!.Wi)!2oYn!!n\d!oEu#JcC<$cMmkeqZ$_+
-s5s[b!!*Agnc&U(q>^N1YQ"U;q>^MfJcC<$V>gN\rVup@dJn^~>
-df0;4rVup@NrK*omf3?[l2L`;q>^MVJcGBB!:T^`!.Wi)!2oYn!!n\d!oEu#JcC<$cMmkeqZ$_+
-s5s[b!!*Agnc&U(q>^N1YQ"U;q>^MfJcC<$V>gN\rVup@dJn^~>
-df0;4rVup@NrK+:pO<0>q>^MflMgj^q>^LdJcG<@!#YP4!+=X_!5J@1!!n\d!oEu#JcC<$cMmke
-qZ$_+s8R'7!!%!.rrBh1!!'e!rs6rc^P@;g^V@hFrs-lbQ[aLO^XrA_!5J@1!2&NU#iED3It*6g
-^YaVBJcEai!'pM`!$K\hJ,~>
-df0;4rVup@NrK+:pO<0>q>^MflMgj^q>^LdJcG<@!#YP4!+=X_!5J@1!!n\d!oEu#JcC<$cMmke
-qZ$_+s8R'7!!%!.rrBh1!!'e!rs6rc^P@;g^V@hFrs-lbQ[aLO^XrA_!5J@1!2&NU#iED3It*6g
-^YaVBJcEai!'pM`!$K\hJ,~>
-df0;4rVup@NrK+:pO<0>q>^MflMgj^q>^LdJcG<@!#YP4!+=X_!5J@1!!n\d!oEu#JcC<$cMmke
-qZ$_+s8R'7!!%!.rrBh1!!'e!rs6rc^P@;g^V@hFrs-lbQ[aLO^XrA_!5J@1!2&NU#iED3It*6g
-^YaVBJcEai!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^MflMgiTq>^N)JcG<@!(cqd!(brG!5J@1!$IC'!oEu#JcC<$cMmkeqZ$b,
-s8V6fqZ$X&kOSWQ^\Rp1^[D+(pTJ6Ip](C-=JtWKrrTB3&GZ;1#Z./fs8Tk1!!&YYrr__^=:k6-
-"!D!DpOW?qs2t?A5lL``+OU4>~>
-df0;4rVup@KDtqDq>^MflMgiTq>^N)JcG<@!(cqd!(brG!5J@1!$IC'!oEu#JcC<$cMmkeqZ$b,
-s8V6fqZ$X&kOSWQ^\Rp1^[D+(pTJ6Ip](C-=JtWKrrTB3&GZ;1#Z./fs8Tk1!!&YYrr__^=:k6-
-"!D!DpOW?qs2t?A5lL``+OU4>~>
-df0;4rVup@KDtqDq>^MflMgiTq>^N)JcG<@!(cqd!(brG!5J@1!$IC'!oEu#JcC<$cMmkeqZ$b,
-s8V6fqZ$X&kOSWQ^\Rp1^[D+(pTJ6Ip](C-=JtWKrrTB3&GZ;1#Z./fs8Tk1!!&YYrr__^=:k6-
-"!D!DpOW?qs2t?A5lL``+OU4>~>
-df0;4rVup@KDtqDq>^Mfli."S#l=T%0S08orr?I'!!#:?rrAtn!!#9GrrV'X+G'QDs3CWE+Su-=
-@/g0+E;BP7E:X#/^\Rp1^[V7)pP0=N!!3FNn*'cPNtCm_!sil/^\Rp1TC;d\k?.6S!Z7!mJcC<$
-bl7Z.rVup@dJn^~>
-df0;4rVup@KDtqDq>^Mfli."S#l=T%0S08orr?I'!!#:?rrAtn!!#9GrrV'X+G'QDs3CWE+Su-=
-@/g0+E;BP7E:X#/^\Rp1^[V7)pP0=N!!3FNn*'cPNtCm_!sil/^\Rp1TC;d\k?.6S!Z7!mJcC<$
-bl7Z.rVup@dJn^~>
-df0;4rVup@KDtqDq>^Mfli."S#l=T%0S08orr?I'!!#:?rrAtn!!#9GrrV'X+G'QDs3CWE+Su-=
-@/g0+E;BP7E:X#/^\Rp1^[V7)pP0=N!!3FNn*'cPNtCm_!sil/^\Rp1TC;d\k?.6S!Z7!mJcC<$
-bl7Z.rVup@dJn^~>
-df0;4rVup@KDtqDq>^Mfli-sOq>^N!JcG9?!)WLl!+=X_!.XhF!.U+1!oEu#JcC<$cMmkeqZ$V(
-rr3#^#l=T&#j:gZ!5J@1!5J((!N-e&!!*Xlli."+3:?hJ#Y=dl!2&f]!r%0MmJm8)c[l+Is3:QD
-5lL``+OU4>~>
-df0;4rVup@KDtqDq>^Mfli-sOq>^N!JcG9?!)WLl!+=X_!.XhF!.U+1!oEu#JcC<$cMmkeqZ$V(
-rr3#^#l=T&#j:gZ!5J@1!5J((!N-e&!!*Xlli."+3:?hJ#Y=dl!2&f]!r%0MmJm8)c[l+Is3:QD
-5lL``+OU4>~>
-df0;4rVup@KDtqDq>^Mfli-sOq>^N!JcG9?!)WLl!+=X_!.XhF!.U+1!oEu#JcC<$cMmkeqZ$V(
-rr3#^#l=T&#j:gZ!5J@1!5J((!N-e&!!*Xlli."+3:?hJ#Y=dl!2&f]!r%0MmJm8)c[l+Is3:QD
-5lL``+OU4>~>
-df0;4rVup@KDtqDq>^Mfli-rMqZ$X.pOWA7rr=JD!!$uorr=JD!!('$rrV'X+G'QDs3CWE+Su-=
-@/^**E;BP7E:a)0^\Rp1^[qI+pL*7d!D)\Irr@i8!!&Y^rrM""lMpqkYCZ_)s3CWE5lL``+OU4>~>
-df0;4rVup@KDtqDq>^Mfli-rMqZ$X.pOWA7rr=JD!!$uorr=JD!!('$rrV'X+G'QDs3CWE+Su-=
-@/^**E;BP7E:a)0^\Rp1^[qI+pL*7d!D)\Irr@i8!!&Y^rrM""lMpqkYCZ_)s3CWE5lL``+OU4>~>
-df0;4rVup@KDtqDq>^Mfli-rMqZ$X.pOWA7rr=JD!!$uorr=JD!!('$rrV'X+G'QDs3CWE+Su-=
-@/^**E;BP7E:a)0^\Rp1^[qI+pL*7d!D)\Irr@i8!!&Y^rrM""lMpqkYCZ_)s3CWE5lL``+OU4>~>
-df0;4rVup@KDtqDq>^Mfm/I(Kq>^LlJcG6>!!rE$!/KG2!5J@1!&0K6!oEu#JcC<$cMmkeqZ$V(
-rVlo])#F:6#j:j[!5J@1!5J1+!V].K!!+eBnG`K<irB(OoD\j;&Ej)oT7R#ns3L]F5lL``+OU4>~>
-df0;4rVup@KDtqDq>^Mfm/I(Kq>^LlJcG6>!!rE$!/KG2!5J@1!&0K6!oEu#JcC<$cMmkeqZ$V(
-rVlo])#F:6#j:j[!5J@1!5J1+!V].K!!+eBnG`K<irB(OoD\j;&Ej)oT7R#ns3L]F5lL``+OU4>~>
-df0;4rVup@KDtqDq>^Mfm/I(Kq>^LlJcG6>!!rE$!/KG2!5J@1!&0K6!oEu#JcC<$cMmkeqZ$V(
-rVlo])#F:6#j:j[!5J@1!5J1+!V].K!!+eBnG`K<irB(OoD\j;&Ej)oT7R#ns3L]F5lL``+OU4>~>
-df0;4rVup@KDtqDq>^Mfm/I'Xq>^M^JcG9?!9a.X!4Ukc!V\;E!!'3`rrV'X+G'QDs3CWE+Su-=
-@/U$)O88hVE:j/1^\Rp1^\.U-mkEl(!?g:jrr@Q.!!&Y`rrKS?p&G1;5X5nS!!*AGJcC<$d/O)2
-rVup@dJn^~>
-df0;4rVup@KDtqDq>^Mfm/I'Xq>^M^JcG9?!9a.X!4Ukc!V\;E!!'3`rrV'X+G'QDs3CWE+Su-=
-@/U$)O88hVE:j/1^\Rp1^\.U-mkEl(!?g:jrr@Q.!!&Y`rrKS?p&G1;5X5nS!!*AGJcC<$d/O)2
-rVup@dJn^~>
-df0;4rVup@KDtqDq>^Mfm/I'Xq>^M^JcG9?!9a.X!4Ukc!V\;E!!'3`rrV'X+G'QDs3CWE+Su-=
-@/U$)O88hVE:j/1^\Rp1^\.U-mkEl(!?g:jrr@Q.!!&Y`rrKS?p&G1;5X5nS!!*AGJcC<$d/O)2
-rVup@dJn^~>
-df0;4rVup@KDtqDq>^Mfm/I')q>^NQJcG9?!3c1u!:SkG!V].]!!$DerrV'X+G'QDs3CWE+Su-=
-@/U$*pDEc-!=7l]rrBh1!!'e,rr?0q!!lDn^W6B#^Rn?s!!#:UrrBP%!!+KMrdOuO5To\!!2&ra
-!S7VQ!!4j8fDGRLa*8Hs!!+52JcC<$dJj23rVup@dJn^~>
-df0;4rVup@KDtqDq>^Mfm/I')q>^NQJcG9?!3c1u!:SkG!V].]!!$DerrV'X+G'QDs3CWE+Su-=
-@/U$*pDEc-!=7l]rrBh1!!'e,rr?0q!!lDn^W6B#^Rn?s!!#:UrrBP%!!+KMrdOuO5To\!!2&ra
-!S7VQ!!4j8fDGRLa*8Hs!!+52JcC<$dJj23rVup@dJn^~>
-df0;4rVup@KDtqDq>^Mfm/I')q>^NQJcG9?!3c1u!:SkG!V].]!!$DerrV'X+G'QDs3CWE+Su-=
-@/U$*pDEc-!=7l]rrBh1!!'e,rr?0q!!lDn^W6B#^Rn?s!!#:UrrBP%!!+KMrdOuO5To\!!2&ra
-!S7VQ!!4j8fDGRLa*8Hs!!+52JcC<$dJj23rVup@dJn^~>
-df0;4rVup@KDtqDq>^Mfm/I&FqZ$U-q>^K0!/LQ'!k5r5Jc>^Hq>^L<i;Wi(5l(H]+Rb?j!oEu#
-JcC<$cMmkeqZ$V(qu6YWq>^M7p&>$,q>^N1pAY,bp](>.n+cn`ms+U-!/L7I!Ugm#!!-cZq#:E!
-BFsq=!2&ub!V\#=!!*@\pAY3gIgGlN!*FgPJcF-t!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^Mfm/I&FqZ$U-q>^K0!/LQ'!k5r5Jc>^Hq>^L<i;Wi(5l(H]+Rb?j!oEu#
-JcC<$cMmkeqZ$V(qu6YWq>^M7p&>$,q>^N1pAY,bp](>.n+cn`ms+U-!/L7I!Ugm#!!-cZq#:E!
-BFsq=!2&ub!V\#=!!*@\pAY3gIgGlN!*FgPJcF-t!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^Mfm/I&FqZ$U-q>^K0!/LQ'!k5r5Jc>^Hq>^L<i;Wi(5l(H]+Rb?j!oEu#
-JcC<$cMmkeqZ$V(qu6YWq>^M7p&>$,q>^N1pAY,bp](>.n+cn`ms+U-!/L7I!Ugm#!!-cZq#:E!
-BFsq=!2&ub!V\#=!!*@\pAY3gIgGlN!*FgPJcF-t!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^Mfm/I%sqZ$UUrVlrVLHtS6!YAb[L&V/9q#CDEir9&*;#((l3:Dk,!oEu#
-JcC<$cMmkeqZ$V(qu6]k)#F:6#j:p]!5J@1!5J:.!T+Ib!!*YOo`"s<+Sl'=#g`5E!*K$s!@Z"\
-rrVqe3;NUTTD&9b@/9j(.*(rZ!Oi@3!!*AgJcC<$df0;4rVup@dJn^~>
-df0;4rVup@KDtqDq>^Mfm/I%sqZ$UUrVlrVLHtS6!YAb[L&V/9q#CDEir9&*;#((l3:Dk,!oEu#
-JcC<$cMmkeqZ$V(qu6]k)#F:6#j:p]!5J@1!5J:.!T+Ib!!*YOo`"s<+Sl'=#g`5E!*K$s!@Z"\
-rrVqe3;NUTTD&9b@/9j(.*(rZ!Oi@3!!*AgJcC<$df0;4rVup@dJn^~>
-df0;4rVup@KDtqDq>^Mfm/I%sqZ$UUrVlrVLHtS6!YAb[L&V/9q#CDEir9&*;#((l3:Dk,!oEu#
-JcC<$cMmkeqZ$V(qu6]k)#F:6#j:p]!5J@1!5J:.!T+Ib!!*YOo`"s<+Sl'=#g`5E!*K$s!@Z"\
-rrVqe3;NUTTD&9b@/9j(.*(rZ!Oi@3!!*AgJcC<$df0;4rVup@dJn^~>
-df0;4rVup@KDtqDq>^MfmJd1Lq>^Y#s8U,AnGiS<[tjt`J,''EkNDmF^]/c`3;<IS=SIdS!oEu#
-JcC<$cMmkeqZ$V(qYpPVq>^M7pAY--q>^N1p\t4iq>^O-cgq):f+@cY!'p;Y!3c1u!AO!4rrBh1
-!!&YcrrBP)!!,pjnc&TMq>^M7JcC<$df0;4rVup@dJn^~>
-df0;4rVup@KDtqDq>^MfmJd1Lq>^Y#s8U,AnGiS<[tjt`J,''EkNDmF^]/c`3;<IS=SIdS!oEu#
-JcC<$cMmkeqZ$V(qYpPVq>^M7pAY--q>^N1p\t4iq>^O-cgq):f+@cY!'p;Y!3c1u!AO!4rrBh1
-!!&YcrrBP)!!,pjnc&TMq>^M7JcC<$df0;4rVup@dJn^~>
-df0;4rVup@KDtqDq>^MfmJd1Lq>^Y#s8U,AnGiS<[tjt`J,''EkNDmF^]/c`3;<IS=SIdS!oEu#
-JcC<$cMmkeqZ$V(qYpPVq>^M7pAY--q>^N1p\t4iq>^O-cgq):f+@cY!'p;Y!3c1u!AO!4rrBh1
-!!&YcrrBP)!!,pjnc&TMq>^M7JcC<$df0;4rVup@dJn^~>
-df0;4rVup@KDtqDq>^MfmJd0qq>^SPk?.*O!FY)JrrMj2q>^LllMgk!nGiQ=MZ3b8!$HjmJcF$q
-!$M.=!+>['!V[H.!!*Agp\t6.q>^N1q#:?Oq#CE(nG`L/q#CE@q#:=Zq>^OMn*p>W^\Rp1TD/?c
-0`(hN./362!V[H.!!*AoJcC<$e,KD5rVup@dJn^~>
-df0;4rVup@KDtqDq>^MfmJd0qq>^SPk?.*O!FY)JrrMj2q>^LllMgk!nGiQ=MZ3b8!$HjmJcF$q
-!$M.=!+>['!V[H.!!*Agp\t6.q>^N1q#:?Oq#CE(nG`L/q#CE@q#:=Zq>^OMn*p>W^\Rp1TD/?c
-0`(hN./362!V[H.!!*AoJcC<$e,KD5rVup@dJn^~>
-df0;4rVup@KDtqDq>^MfmJd0qq>^SPk?.*O!FY)JrrMj2q>^LllMgk!nGiQ=MZ3b8!$HjmJcF$q
-!$M.=!+>['!V[H.!!*Agp\t6.q>^N1q#:?Oq#CE(nG`L/q#CE@q#:=Zq>^OMn*p>W^\Rp1TD/?c
-0`(hN./362!V[H.!!*AoJcC<$e,KD5rVup@dJn^~>
-df0;4rVup@KDtqDq>^MfmJd0Aq>^Oe&F0;s&C6:7!/L@M!4V7n!5J.+![*9]M>mY7!$HjmJcF$q
-!$M.=!+>X&!0?sV!-%]4!5J@1!5J=/!-%c7!)W+`!*K't!,23.!71H@!71-6!5J@1!2'&d!71KA
-!71*5!0?sV!3^tRJcF4!!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^MfmJd0Aq>^Oe&F0;s&C6:7!/L@M!4V7n!5J.+![*9]M>mY7!$HjmJcF$q
-!$M.=!+>X&!0?sV!-%]4!5J@1!5J=/!-%c7!)W+`!*K't!,23.!71H@!71-6!5J@1!2'&d!71KA
-!71*5!0?sV!3^tRJcF4!!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^MfmJd0Aq>^Oe&F0;s&C6:7!/L@M!4V7n!5J.+![*9]M>mY7!$HjmJcF$q
-!$M.=!+>X&!0?sV!-%]4!5J@1!5J=/!-%c7!)W+`!*K't!,23.!71H@!71-6!5J@1!2'&d!71KA
-!71*5!0?sV!3^tRJcF4!!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^MfmJd/oi;`lic].r*h['&Y!$LP+!5J4-!>)_prrV'X+G'QDs3CWE+Su-=
-@/9g'pDEc-!=7l`rrBh1!!'e0rrMj2q>^NAmf*=N#l=T&#j;'a!*K't!,1g#!5J@1!2'&d!)WOm
-!)W(_!V[H.!!$ths+14!rr>=`!!".hs*t~>
-df0;4rVup@KDtqDq>^MfmJd/oi;`lic].r*h['&Y!$LP+!5J4-!>)_prrV'X+G'QDs3CWE+Su-=
-@/9g'pDEc-!=7l`rrBh1!!'e0rrMj2q>^NAmf*=N#l=T&#j;'a!*K't!,1g#!5J@1!2'&d!)WOm
-!)W(_!V[H.!!$ths+14!rr>=`!!".hs*t~>
-df0;4rVup@KDtqDq>^MfmJd/oi;`lic].r*h['&Y!$LP+!5J4-!>)_prrV'X+G'QDs3CWE+Su-=
-@/9g'pDEc-!=7l`rrBh1!!'e0rrMj2q>^NAmf*=N#l=T&#j;'a!*K't!,1g#!5J@1!2'&d!)WOm
-!)W(_!V[H.!!$ths+14!rr>=`!!".hs*t~>
-df0;4rVup@KDtqDq>^MfmJd/ohuEchc]8#*5ktB[TBZ@U^\%R.5`afYrrV'X+G'QDs3CWE+Su-=
-@/0a%O88hV@/0a%^\Rp1^\Rm0TDANf5j\LN8GW;dQi$d`mg/dj!=7lVrrBh1!!&YerrD6Y!!((+
-rr?a0!!"^(s+14!rr>=`!!".hs*t~>
-df0;4rVup@KDtqDq>^MfmJd/ohuEchc]8#*5ktB[TBZ@U^\%R.5`afYrrV'X+G'QDs3CWE+Su-=
-@/0a%O88hV@/0a%^\Rp1^\Rm0TDANf5j\LN8GW;dQi$d`mg/dj!=7lVrrBh1!!&YerrD6Y!!((+
-rr?a0!!"^(s+14!rr>=`!!".hs*t~>
-df0;4rVup@KDtqDq>^MfmJd/ohuEchc]8#*5ktB[TBZ@U^\%R.5`afYrrV'X+G'QDs3CWE+Su-=
-@/0a%O88hV@/0a%^\Rp1^\Rm0TDANf5j\LN8GW;dQi$d`mg/dj!=7lVrrBh1!!&YerrD6Y!!((+
-rr?a0!!"^(s+14!rr>=`!!".hs*t~>
-df0;4rVup@KDtqDq>^MfmJd/WoDenWJ,I%`[sqcspAb4BpQ5CTJ,''E=Qobb^[_@*.(>*6!oEu#
-JcC<$cMmkeqZ$V(q#:Bh+Sl'<ch[S@^\Rp1^\Rm0E;BP7TBuRXTDANf@/Ks(YPJ5!;!n8_^\Rp1
-TDAKeTDJTh#l!]c!13N^!:PL=JcF7"!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^MfmJd/WoDenWJ,I%`[sqcspAb4BpQ5CTJ,''E=Qobb^[_@*.(>*6!oEu#
-JcC<$cMmkeqZ$V(q#:Bh+Sl'<ch[S@^\Rp1^\Rm0E;BP7TBuRXTDANf@/Ks(YPJ5!;!n8_^\Rp1
-TDAKeTDJTh#l!]c!13N^!:PL=JcF7"!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^MfmJd/WoDenWJ,I%`[sqcspAb4BpQ5CTJ,''E=Qobb^[_@*.(>*6!oEu#
-JcC<$cMmkeqZ$V(q#:Bh+Sl'<ch[S@^\Rp1^\Rm0E;BP7TBuRXTDANf@/Ks(YPJ5!;!n8_^\Rp1
-TDAKeTDJTh#l!]c!13N^!:PL=JcF7"!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^MfmJd/OpAb73J+*+2!KRfe!!&(BrrL.Gq>^O5n*'cO^[M4(@-<LK!oEu#
-JcC<$cMmkeqZ$V(p\t5sq>^Llq>UH0q>^N1q>UFKqZ$X&n*L&Tmg/dj!%@aE!-%c7!2o5a!5J@1
-!2')e!,260!'olM!71KA!5F*bJcF7"!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^MfmJd/OpAb73J+*+2!KRfe!!&(BrrL.Gq>^O5n*'cO^[M4(@-<LK!oEu#
-JcC<$cMmkeqZ$V(p\t5sq>^Llq>UH0q>^N1q>UFKqZ$X&n*L&Tmg/dj!%@aE!-%c7!2o5a!5J@1
-!2')e!,260!'olM!71KA!5F*bJcF7"!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^MfmJd/OpAb73J+*+2!KRfe!!&(BrrL.Gq>^O5n*'cO^[M4(@-<LK!oEu#
-JcC<$cMmkeqZ$V(p\t5sq>^Llq>UH0q>^N1q>UFKqZ$X&n*L&Tmg/dj!%@aE!-%c7!2o5a!5J@1
-!2')e!,260!'olM!71KA!5F*bJcF7"!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^MfmJd/7q#CI=QhU+O!T,$q!!*Aghu<[!lN#0/!Uh0,!!'dsrrCCC5QDYo
-!!*Y'NW0(;!$HjmJcF$q!$M.=!+>O#!&46L!71NA!5J@1!5JC1!:Taa!&3^<!&46L!:Tjc!&46L
-!;Gm\!5J@1!2')e!&49M!-mi0!8mVQ!5F*bJcF7"!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^MfmJd/7q#CI=QhU+O!T,$q!!*Aghu<[!lN#0/!Uh0,!!'dsrrCCC5QDYo
-!!*Y'NW0(;!$HjmJcF$q!$M.=!+>O#!&46L!71NA!5J@1!5JC1!:Taa!&3^<!&46L!:Tjc!&46L
-!;Gm\!5J@1!2')e!&49M!-mi0!8mVQ!5F*bJcF7"!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^MfmJd/7q#CI=QhU+O!T,$q!!*Aghu<[!lN#0/!Uh0,!!'dsrrCCC5QDYo
-!!*Y'NW0(;!$HjmJcF$q!$M.=!+>O#!&46L!71NA!5J@1!5JC1!:Taa!&3^<!&46L!:Tjc!&46L
-!;Gm\!5J@1!2')e!&49M!-mi0!8mVQ!5F*bJcF7"!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^MfmJd//q>^MFn,EFG+Sc!;E8UZq+R9$PrrMjZq#CD6h>[Ps?jQN-!0<0?
-!oEu#JcC<$cMmkeqZ$V(pAY,rq>^LlqYpQ1q>^N1qYpQ1q>^LtlMgidq>^N)rVlldq>^LLm/I(#
-q>^MfqYpQaq>^N!lMp\\!2"iBJcF7"!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^MfmJd//q>^MFn,EFG+Sc!;E8UZq+R9$PrrMjZq#CD6h>[Ps?jQN-!0<0?
-!oEu#JcC<$cMmkeqZ$V(pAY,rq>^LlqYpQ1q>^N1qYpQ1q>^LtlMgidq>^N)rVlldq>^LLm/I(#
-q>^MfqYpQaq>^N!lMp\\!2"iBJcF7"!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^MfmJd//q>^MFn,EFG+Sc!;E8UZq+R9$PrrMjZq#CD6h>[Ps?jQN-!0<0?
-!oEu#JcC<$cMmkeqZ$V(pAY,rq>^LlqYpQ1q>^N1qYpQ1q>^LtlMgidq>^N)rVlldq>^LLm/I(#
-q>^MfqYpQaq>^N!lMp\\!2"iBJcF7"!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^MfmJd.tq>^N1mf*:5q#CC;hu<[!lN#30!,20.!AO9&rrVYM+Sc!;YE/\b
-hZ+dMs+13qrr=2=!!$F"rr=bL!!(@BrrBh1!!'e1rrA\f!!&)FrrA,V!!&YirrBh1!!$-frrBh1
-!!&YfrrBh1!!#"D5l(H\T7R#ns4%&K5lL``+OU4>~>
-df0;4rVup@KDtqDq>^MfmJd.tq>^N1mf*:5q#CC;hu<[!lN#30!,20.!AO9&rrVYM+Sc!;YE/\b
-hZ+dMs+13qrr=2=!!$F"rr=bL!!(@BrrBh1!!'e1rrA\f!!&)FrrA,V!!&YirrBh1!!$-frrBh1
-!!&YfrrBh1!!#"D5l(H\T7R#ns4%&K5lL``+OU4>~>
-df0;4rVup@KDtqDq>^MfmJd.tq>^N1mf*:5q#CC;hu<[!lN#30!,20.!AO9&rrVYM+Sc!;YE/\b
-hZ+dMs+13qrr=2=!!$F"rr=bL!!(@BrrBh1!!'e1rrA\f!!&)FrrA,V!!&YirrBh1!!$-frrBh1
-!!&YfrrBh1!!#"D5l(H\T7R#ns4%&K5lL``+OU4>~>
-df0;4rVup@KDtqDq>^MfmJlt^!8$W<!-%`6!8$0/!$LS-cMmm*q#CF<kLfe8mkFS<!>tQmrrV'X
-+G'QDs3CWE+Su-=@.jO"YPJ5!;#C7m^\Rp1^\[s1J,0-F\*Etn\,$()J,TBITDANfO6llH^\Rp1
-TDJQfVqV1OIt@WNs4%&K5lL``+OU4>~>
-df0;4rVup@KDtqDq>^MfmJlt^!8$W<!-%`6!8$0/!$LS-cMmm*q#CF<kLfe8mkFS<!>tQmrrV'X
-+G'QDs3CWE+Su-=@.jO"YPJ5!;#C7m^\Rp1^\[s1J,0-F\*Etn\,$()J,TBITDANfO6llH^\Rp1
-TDJQfVqV1OIt@WNs4%&K5lL``+OU4>~>
-df0;4rVup@KDtqDq>^MfmJlt^!8$W<!-%`6!8$0/!$LS-cMmm*q#CF<kLfe8mkFS<!>tQmrrV'X
-+G'QDs3CWE+Su-=@.jO"YPJ5!;#C7m^\Rp1^\[s1J,0-F\*Etn\,$()J,TBITDANfO6llH^\Rp1
-TDJQfVqV1OIt@WNs4%&K5lL``+OU4>~>
-df0;4rVup@KDtqDq>^MfmJd.tq>^NQmJd1Lq#CDUi;Wd"lN#92!4Vb(!>*l6rrMR*q>^M?OT,C>
-!$HjmJcF$q!$M.=!+>I!!&46L!71TC!5J@1!5JC1!.XhF!5Ih!!5J@1!-nJB!2')f!2&WX!5J@1
-!2',f!2&!G!.TS"JcF7"!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^MfmJd.tq>^NQmJd1Lq#CDUi;Wd"lN#92!4Vb(!>*l6rrMR*q>^M?OT,C>
-!$HjmJcF$q!$M.=!+>I!!&46L!71TC!5J@1!5JC1!.XhF!5Ih!!5J@1!-nJB!2')f!2&WX!5J@1
-!2',f!2&!G!.TS"JcF7"!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^MfmJd.tq>^NQmJd1Lq#CDUi;Wd"lN#92!4Vb(!>*l6rrMR*q>^M?OT,C>
-!$HjmJcF$q!$M.=!+>I!!&46L!71TC!5J@1!5JC1!.XhF!5Ih!!5J@1!-nJB!2')f!2&WX!5J@1
-!2',f!2&!G!.TS"JcF7"!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^MfmJd//q>^N9m/I&>q>^Lli;Wd"lN#<3!RD&J!!*A7eGfN@q>^O%pQ>IW
-hZ+dMs+13qrr=2=!!$F!rrB8!!!#jnrrBh1!!'e1rr?a/!!'e!rrBh1!!$F*rr@QF!!&YXrrBh1
-!!&Yfrr@Q'!!%M"s+14"rr>=`!!".hs*t~>
-df0;4rVup@KDtqDq>^MfmJd//q>^N9m/I&>q>^Lli;Wd"lN#<3!RD&J!!*A7eGfN@q>^O%pQ>IW
-hZ+dMs+13qrr=2=!!$F!rrB8!!!#jnrrBh1!!'e1rr?a/!!'e!rrBh1!!$F*rr@QF!!&YXrrBh1
-!!&Yfrr@Q'!!%M"s+14"rr>=`!!".hs*t~>
-df0;4rVup@KDtqDq>^MfmJd//q>^N9m/I&>q>^Lli;Wd"lN#<3!RD&J!!*A7eGfN@q>^O%pQ>IW
-hZ+dMs+13qrr=2=!!$F!rrB8!!!#jnrrBh1!!'e1rr?a/!!'e!rrBh1!!$F*rr@QF!!&YXrrBh1
-!!&Yfrr@Q'!!%M"s+14"rr>=`!!".hs*t~>
-df0;4rVup@KDtqDq>^MfmJd/7q>^N1m/I'1q>^LDi;Wd"lN#?4!T,$q!!&Y>rr=2<!!'3brrV'X
-+G'QDs3CWE+Su-=@.XBu0_tbLci*kD^\Rp1^\[s1@/9j'hs14Ahtd<Q;#UCoGkqC?\*X+p^\Rp1
-TDJQfGhW2uIt@WNs4%&K5lL``+OU4>~>
-df0;4rVup@KDtqDq>^MfmJd/7q>^N1m/I'1q>^LDi;Wd"lN#?4!T,$q!!&Y>rr=2<!!'3brrV'X
-+G'QDs3CWE+Su-=@.XBu0_tbLci*kD^\Rp1^\[s1@/9j'hs14Ahtd<Q;#UCoGkqC?\*X+p^\Rp1
-TDJQfGhW2uIt@WNs4%&K5lL``+OU4>~>
-df0;4rVup@KDtqDq>^MfmJd/7q>^N1m/I'1q>^LDi;Wd"lN#?4!T,$q!!&Y>rr=2<!!'3brrV'X
-+G'QDs3CWE+Su-=@.XBu0_tbLci*kD^\Rp1^\[s1@/9j'hs14Ahtd<Q;#UCoGkqC?\*X+p^\Rp1
-TDJQfGhW2uIt@WNs4%&K5lL``+OU4>~>
-df0;4rVup@KDtqDq>^MfmJd/Oq>^N!m/I'pq>^L4i;WetlbCmJ!Uh`<!!%Mrrr?I'!!$\prrV'X
-+G'QDs3CWE+Su-=@.XBuYPJ5!;#UCo^\Rp1^\[s1=S`!ths14Ahtd<Q5lL]_@/9j'^[1t#^\Rp1
-TDJQf@+tY]It@WNs4%&K5lL``+OU4>~>
-df0;4rVup@KDtqDq>^MfmJd/Oq>^N!m/I'pq>^L4i;WetlbCmJ!Uh`<!!%Mrrr?I'!!$\prrV'X
-+G'QDs3CWE+Su-=@.XBuYPJ5!;#UCo^\Rp1^\[s1=S`!ths14Ahtd<Q5lL]_@/9j'^[1t#^\Rp1
-TDJQf@+tY]It@WNs4%&K5lL``+OU4>~>
-df0;4rVup@KDtqDq>^MfmJd/Oq>^N!m/I'pq>^L4i;WetlbCmJ!Uh`<!!%Mrrr?I'!!$\prrV'X
-+G'QDs3CWE+Su-=@.XBuYPJ5!;#UCo^\Rp1^\[s1=S`!ths14Ahtd<Q5lL]_@/9j'^[1t#^\Rp1
-TDJQf@+tY]It@WNs4%&K5lL``+OU4>~>
-df0;4rVup@KDtqDq>^MfmJd/Wq>^Mfm/I(#q#Hoa!Uh`<!!%8jrrB8!!!"F0rrV'X+G'QDs3CWE
-+Su-=@.O<t0_tbLci3qE^\Rp1^\[s1@/9j'fBWA9fD5II=T/7"B_h]/^[1t#^\Rp1TDJQfE;BP7
-VrPMlhgtfYs4%&K5lL``+OU4>~>
-df0;4rVup@KDtqDq>^MfmJd/Wq>^Mfm/I(#q#Hoa!Uh`<!!%8jrrB8!!!"F0rrV'X+G'QDs3CWE
-+Su-=@.O<t0_tbLci3qE^\Rp1^\[s1@/9j'fBWA9fD5II=T/7"B_h]/^[1t#^\Rp1TDJQfE;BP7
-VrPMlhgtfYs4%&K5lL``+OU4>~>
-df0;4rVup@KDtqDq>^MfmJd/Wq>^Mfm/I(#q#Hoa!Uh`<!!%8jrrB8!!!"F0rrV'X+G'QDs3CWE
-+Su-=@.O<t0_tbLci3qE^\Rp1^\[s1@/9j'fBWA9fD5II=T/7"B_h]/^[1t#^\Rp1TDJQfE;BP7
-VrPMlhgtfYs4%&K5lL``+OU4>~>
-df0;4rVup@KDtqDq>^MfmJd/oq>^M^m/I(Cq#CEPSc8`Z0_k\K@*eiQ^\Rp1#a,,ghZ+dMs+13q
-rr=2=!!$EtrrC+9!!#jprrBh1!!'e1rr@$7!!'e!rrBh1!!$F*rr@QF!!'4hrrBh1!!&Yfrr@QF
-!!'cbs+13Xrr>=`!!".hs*t~>
-df0;4rVup@KDtqDq>^MfmJd/oq>^M^m/I(Cq#CEPSc8`Z0_k\K@*eiQ^\Rp1#a,,ghZ+dMs+13q
-rr=2=!!$EtrrC+9!!#jprrBh1!!'e1rr@$7!!'e!rrBh1!!$F*rr@QF!!'4hrrBh1!!&Yfrr@QF
-!!'cbs+13Xrr>=`!!".hs*t~>
-df0;4rVup@KDtqDq>^MfmJd/oq>^M^m/I(Cq#CEPSc8`Z0_k\K@*eiQ^\Rp1#a,,ghZ+dMs+13q
-rr=2=!!$EtrrC+9!!#jprrBh1!!'e1rr@$7!!'e!rrBh1!!$F*rr@QF!!'4hrrBh1!!&Yfrr@QF
-!!'cbs+13Xrr>=`!!".hs*t~>
-df0;4rVup@KDtqDq>^MfmJd/oq>^MFm/I(Cq#CEPT)Sic0_k\K@*\cPht[6PpQGOXhZ+dMs+13q
-rr=2=!!$Esrr>ml!!CRIs1eC1!5JC1!.XhF!5Ih!!5J@1!.XtI!.XhF!2&WX!5J@1!2',f!13N^
-!5F*bJcE.X!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^MfmJd/oq>^MFm/I(Cq#CEPT)Sic0_k\K@*\cPht[6PpQGOXhZ+dMs+13q
-rr=2=!!$Esrr>ml!!CRIs1eC1!5JC1!.XhF!5Ih!!5J@1!.XtI!.XhF!2&WX!5J@1!2',f!13N^
-!5F*bJcE.X!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^MfmJd/oq>^MFm/I(Cq#CEPT)Sic0_k\K@*\cPht[6PpQGOXhZ+dMs+13q
-rr=2=!!$Esrr>ml!!CRIs1eC1!5JC1!.XhF!5Ih!!5J@1!.XtI!.XhF!2&WX!5J@1!2',f!13N^
-!5F*bJcE.X!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^MfmJd0Iq>^M/m/I(Cq#CEPTDnrd8GN5c@*S]Oht[6Phie!@hZ+dMs+13q
-rr=2=!!$EsrrCCA!!?'ts1eC1!5JC1!0?sV!3b\f!3c5!!/LOQ!2')f!13'P!5J@1!2',f!2')f
-!2"iBJcE.X!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^MfmJd0Iq>^M/m/I(Cq#CEPTDnrd8GN5c@*S]Oht[6Phie!@hZ+dMs+13q
-rr=2=!!$EsrrCCA!!?'ts1eC1!5JC1!0?sV!3b\f!3c5!!/LOQ!2')f!13'P!5J@1!2',f!2')f
-!2"iBJcE.X!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^MfmJd0Iq>^M/m/I(Cq#CEPTDnrd8GN5c@*S]Oht[6Phie!@hZ+dMs+13q
-rr=2=!!$EsrrCCA!!?'ts1eC1!5JC1!0?sV!3b\f!3c5!!/LOQ!2')f!13'P!5J@1!2',f!2')f
-!2"iBJcE.X!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^MfmJd1,q>^LLm/I(Cq#I&e!V].\!!$ENrrCsP!!(o>rrV'X+G'QDs3CWE
-+Su-=@.=0r;#1.nci:cV!!'e1rrA\f!!%9/rr@QF!!&YirrA\f!!%!)rrBh1!!&YfrrBh1!!%M"
-s+13Xrr>=`!!".hs*t~>
-df0;4rVup@KDtqDq>^MfmJd1,q>^LLm/I(Cq#I&e!V].\!!$ENrrCsP!!(o>rrV'X+G'QDs3CWE
-+Su-=@.=0r;#1.nci:cV!!'e1rrA\f!!%9/rr@QF!!&YirrA\f!!%!)rrBh1!!&YfrrBh1!!%M"
-s+13Xrr>=`!!".hs*t~>
-df0;4rVup@KDtqDq>^MfmJd1,q>^LLm/I(Cq#I&e!V].\!!$ENrrCsP!!(o>rrV'X+G'QDs3CWE
-+Su-=@.=0r;#1.nci:cV!!'e1rrA\f!!%9/rr@QF!!&YirrA\f!!%!)rrBh1!!&YfrrBh1!!%M"
-s+13Xrr>=`!!".hs*t~>
-df0;4rVup@KDtqDq>^MfmJd4]#l=T&#l!`d!5J@1!"bh'!V].\!!$EMrrCC@!!)JNrrV'X+G'QD
-s3CWE+Su-=@.=0rch[VC5l\Uq!!'e1rrCCA!!#j\rr>ml!!((<rrBh1!!#j^rrBh1!!&YfrrCsQ
-!!#98s+13Xrr>=`!!".hs*t~>
-df0;4rVup@KDtqDq>^MfmJd4]#l=T&#l!`d!5J@1!"bh'!V].\!!$EMrrCC@!!)JNrrV'X+G'QD
-s3CWE+Su-=@.=0rch[VC5l\Uq!!'e1rrCCA!!#j\rr>ml!!((<rrBh1!!#j^rrBh1!!&YfrrCsQ
-!!#98s+13Xrr>=`!!".hs*t~>
-df0;4rVup@KDtqDq>^MfmJd4]#l=T&#l!`d!5J@1!"bh'!V].\!!$EMrrCC@!!)JNrrV'X+G'QD
-s3CWE+Su-=@.=0rch[VC5l\Uq!!'e1rrCCA!!#j\rr>ml!!((<rrBh1!!#j^rrBh1!!&YfrrCsQ
-!!#98s+13Xrr>=`!!".hs*t~>
-df0;4rVup@KDtqDq>^Mfm/I&>q>^NAmJd0aq>^L<U&P/f8GN5c@*8KL\,$()#a,,ghZ+dMs+13q
-rr=2=!!$Eqrr>ml!!0:<q>^N1q>UF+qZ$UElMgi4qZ$X&p\k*ln+m"a+RK+.^\Rp1TDAKe+Su->
-#kroMJcE1Y!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^Mfm/I&>q>^NAmJd0aq>^L<U&P/f8GN5c@*8KL\,$()#a,,ghZ+dMs+13q
-rr=2=!!$Eqrr>ml!!0:<q>^N1q>UF+qZ$UElMgi4qZ$X&p\k*ln+m"a+RK+.^\Rp1TDAKe+Su->
-#kroMJcE1Y!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^Mfm/I&>q>^NAmJd0aq>^L<U&P/f8GN5c@*8KL\,$()#a,,ghZ+dMs+13q
-rr=2=!!$Eqrr>ml!!0:<q>^N1q>UF+qZ$UElMgi4qZ$X&p\k*ln+m"a+RK+.^\Rp1TDAKe+Su->
-#kroMJcE1Y!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^Mfm/I')q>^MNmJd0*q>^M'UAk8g8GN5c@*/EKJ,0-F+Hc[*hZ+dMs+13q
-rr=2=!!$EqrrCCA!!+dgq>^N1q>UFkq>^NIm/I(Cq>^LLqu6X=q>^NQmJd1$q>^Mfq>UG&q>^N!
-JcC<$[f6=mrVup@dJn^~>
-df0;4rVup@KDtqDq>^Mfm/I')q>^MNmJd0*q>^M'UAk8g8GN5c@*/EKJ,0-F+Hc[*hZ+dMs+13q
-rr=2=!!$EqrrCCA!!+dgq>^N1q>UFkq>^NIm/I(Cq>^LLqu6X=q>^NQmJd1$q>^Mfq>UG&q>^N!
-JcC<$[f6=mrVup@dJn^~>
-df0;4rVup@KDtqDq>^Mfm/I')q>^MNmJd0*q>^M'UAk8g8GN5c@*/EKJ,0-F+Hc[*hZ+dMs+13q
-rr=2=!!$EqrrCCA!!+dgq>^N1q>UFkq>^NIm/I(Cq>^LLqu6X=q>^NQmJd1$q>^Mfq>UG&q>^N!
-JcC<$[f6=mrVup@dJn^~>
-df0;4rVup@KDtqDq>^Mfm/I'Xq>^LDmJd/Oq>^MfU]1Ah8GN5c@*&?J5l(H\=HWUbhZ+dMs+13q
-rr=2=!!$Eprr>ml!!%!7!!'e0rr@QF!!%N8rr@iN!!%!8rr>ml!!&AQrrBh1!!&YerrA\f!!#iH
-s+13Yrr>=`!!".hs*t~>
-df0;4rVup@KDtqDq>^Mfm/I'Xq>^LDmJd/Oq>^MfU]1Ah8GN5c@*&?J5l(H\=HWUbhZ+dMs+13q
-rr=2=!!$Eprr>ml!!%!7!!'e0rr@QF!!%N8rr@iN!!%!8rr>ml!!&AQrrBh1!!&YerrA\f!!#iH
-s+13Yrr>=`!!".hs*t~>
-df0;4rVup@KDtqDq>^Mfm/I'Xq>^LDmJd/Oq>^MfU]1Ah8GN5c@*&?J5l(H\=HWUbhZ+dMs+13q
-rr=2=!!$Eprr>ml!!%!7!!'e0rr@QF!!%N8rr@iN!!%!8rr>ml!!&AQrrBh1!!&YerrA\f!!#iH
-s+13Yrr>=`!!".hs*t~>
-df0;4rVup@KDtqDq>^Mfm/I+L#l4N$YODJlk6Una!:Q``!V].\!!$uZrrCC@!!&XRrrV'X+G'QD
-s3CWE+Su-=@.+$pch[VA#l4N$^\Rm0ch[VA+RK+.3;NUTTDSWgJ,0-F8F?EW^\Rp1TDAKeht[6P
-hgtfYs0r".5lL``+OU4>~>
-df0;4rVup@KDtqDq>^Mfm/I+L#l4N$YODJlk6Una!:Q``!V].\!!$uZrrCC@!!&XRrrV'X+G'QD
-s3CWE+Su-=@.+$pch[VA#l4N$^\Rm0ch[VA+RK+.3;NUTTDSWgJ,0-F8F?EW^\Rp1TDAKeht[6P
-hgtfYs0r".5lL``+OU4>~>
-df0;4rVup@KDtqDq>^Mfm/I+L#l4N$YODJlk6Una!:Q``!V].\!!$uZrrCC@!!&XRrrV'X+G'QD
-s3CWE+Su-=@.+$pch[VA#l4N$^\Rm0ch[VA+RK+.3;NUTTDSWgJ,0-F8F?EW^\Rp1TDAKeht[6P
-hgtfYs0r".5lL``+OU4>~>
-df0;4rVup@KDtqDq>^Mfli-ruq>^Lln,EBCq>^LTV#LJa0_k\KJ&hQh;#((kkE5cGhZ+dMs+13q
-rr=2=!!$Eorr>me!!'e/rr=bL!!&qbrrBP)!!*r2qu6ZBq#CE@mf*:%q>^Mfq#:=jq>^L\JcC<$
-\,QFnrVup@dJn^~>
-df0;4rVup@KDtqDq>^Mfli-ruq>^Lln,EBCq>^LTV#LJa0_k\KJ&hQh;#((kkE5cGhZ+dMs+13q
-rr=2=!!$Eorr>me!!'e/rr=bL!!&qbrrBP)!!*r2qu6ZBq#CE@mf*:%q>^Mfq#:=jq>^L\JcC<$
-\,QFnrVup@dJn^~>
-df0;4rVup@KDtqDq>^Mfli-ruq>^Lln,EBCq>^LTV#LJa0_k\KJ&hQh;#((kkE5cGhZ+dMs+13q
-rr=2=!!$Eorr>me!!'e/rr=bL!!&qbrrBP)!!*r2qu6ZBq#CE@mf*:%q>^Mfq#:=jq>^L\JcC<$
-\,QFnrVup@dJn^~>
-df0;4rVup@KDtqDq>^Mfli-t2q#CE(nc&Xa)#=44O/;jWmkFP;!.Wu-!e3bmlMgjfq#CCSOT,C>
-!$HjmJcF$q!$M.=!+>3o!S7VL!!'e/rrAD^!!*r2nG`O`0_tbLGkq@>0_tbL;"+Dbh`1H4!2'&d
-!71H@!.X85!r$YAJcC<$e,KD5rVup@dJn^~>
-df0;4rVup@KDtqDq>^Mfli-t2q#CE(nc&Xa)#=44O/;jWmkFP;!.Wu-!e3bmlMgjfq#CCSOT,C>
-!$HjmJcF$q!$M.=!+>3o!S7VL!!'e/rrAD^!!*r2nG`O`0_tbLGkq@>0_tbL;"+Dbh`1H4!2'&d
-!71H@!.X85!r$YAJcC<$e,KD5rVup@dJn^~>
-df0;4rVup@KDtqDq>^Mfli-t2q#CE(nc&Xa)#=44O/;jWmkFP;!.Wu-!e3bmlMgjfq#CCSOT,C>
-!$HjmJcF$q!$M.=!+>3o!S7VL!!'e/rrAD^!!*r2nG`O`0_tbLGkq@>0_tbL;"+Dbh`1H4!2'&d
-!71H@!.X85!r$YAJcC<$e,KD5rVup@dJn^~>
-df0;4rVup@KDtqDq>^MflMgiDq>^O5n+-JYB_h]0)#'p-!Uh`<!!&YLrrdfO#^Gh*rrM!gq#CDu
-OT,C>!$HjmJcF$q!$M.=!+>0n!-%Q1!5J=/!V[0%!!%95rr@<>!!)3XrrA,U!!&qerrK;7q#CDe
-p\t4Iq#CD]li.(--idY+s+14!rr>=`!!".hs*t~>
-df0;4rVup@KDtqDq>^MflMgiDq>^O5n+-JYB_h]0)#'p-!Uh`<!!&YLrrdfO#^Gh*rrM!gq#CDu
-OT,C>!$HjmJcF$q!$M.=!+>0n!-%Q1!5J=/!V[0%!!%95rr@<>!!)3XrrA,U!!&qerrK;7q#CDe
-p\t4Iq#CD]li.(--idY+s+14!rr>=`!!".hs*t~>
-df0;4rVup@KDtqDq>^MflMgiDq>^O5n+-JYB_h]0)#'p-!Uh`<!!&YLrrdfO#^Gh*rrM!gq#CDu
-OT,C>!$HjmJcF$q!$M.=!+>0n!-%Q1!5J=/!V[0%!!%95rr@<>!!)3XrrA,U!!&qerrK;7q#CDe
-p\t4Iq#CD]li.(--idY+s+14!rr>=`!!".hs*t~>
-df0;4rVup@KDtqDq>^MflMgjfq#CFdp[nIcTD8HeO/;jV0_tbM#d<.c!.XtJ!YBV>nG`O0)#4.3
-0TZ58hZ+dMs+13qrr=2=!!$EnrrM9go`,!,p\t5<q#CDUo)A]Vq#CCkq#:?Wq#CF$a7TB4hba%I
-!2'#c!4V_'!-%B+!RFUA!!$DXs+14!rr>=`!!".hs*t~>
-df0;4rVup@KDtqDq>^MflMgjfq#CFdp[nIcTD8HeO/;jV0_tbM#d<.c!.XtJ!YBV>nG`O0)#4.3
-0TZ58hZ+dMs+13qrr=2=!!$EnrrM9go`,!,p\t5<q#CDUo)A]Vq#CCkq#:?Wq#CF$a7TB4hba%I
-!2'#c!4V_'!-%B+!RFUA!!$DXs+14!rr>=`!!".hs*t~>
-df0;4rVup@KDtqDq>^MflMgjfq#CFdp[nIcTD8HeO/;jV0_tbM#d<.c!.XtJ!YBV>nG`O0)#4.3
-0TZ58hZ+dMs+13qrr=2=!!$EnrrM9go`,!,p\t5<q#CDUo)A]Vq#CCkq#:?Wq#CF$a7TB4hba%I
-!2'#c!4V_'!-%B+!RFUA!!$DXs+14!rr>=`!!".hs*t~>
-df0;4rVup@KDtqDq>^Mfl2L`Kq#CFTn+Qb]Gkh=?+SV`4q>^O-^Y\tjJ,93H@(5e.!r%`]p](;t
-O8f:=!$HjmJcF$q!$M.=!+>-m!-%T2!5J:.!V\#<!!.?=pAY0fGkh=?)!CYn!-%]5!.XbC!S;;`
-!!&Ybrr@$5!!+dWoD\mdVbm9k!+:BXJcF4!!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^Mfl2L`Kq#CFTn+Qb]Gkh=?+SV`4q>^O-^Y\tjJ,93H@(5e.!r%`]p](;t
-O8f:=!$HjmJcF$q!$M.=!+>-m!-%T2!5J:.!V\#<!!.?=pAY0fGkh=?)!CYn!-%]5!.XbC!S;;`
-!!&Ybrr@$5!!+dWoD\mdVbm9k!+:BXJcF4!!'pM`!$K\hJ,~>
-df0;4rVup@KDtqDq>^Mfl2L`Kq#CFTn+Qb]Gkh=?+SV`4q>^O-^Y\tjJ,93H@(5e.!r%`]p](;t
-O8f:=!$HjmJcF$q!$M.=!+>-m!-%T2!5J:.!V\#<!!.?=pAY0fGkh=?)!CYn!-%]5!.XbC!S;;`
-!!&Ybrr@$5!!+dWoD\mdVbm9k!+:BXJcF4!!'pM`!$K\hJ,~>
-df0;4rVup@NrK+JpV-]Qq>^M?pV-_&o`"sT)#4.4&<HYe!P^>a!!*AGV#T3M!5JF2!.XeE!sh_i
-a8>l=^Sc#^pAb2,NrK1<!$HjmJcF$q!$M.=!+>-m!Tsa^!!'e-rrC+7!!+LOq#:Au./3cBVtU,k
-mhkg"#oI?jfDkls^OI['!!&YbrrMjRpAb7SO4X1,!j>u;q>^M'JcC<$e,KD5rVup@dJn^~>
-df0;4rVup@NrK+JpV-]Qq>^M?pV-_&o`"sT)#4.4&<HYe!P^>a!!*AGV#T3M!5JF2!.XeE!sh_i
-a8>l=^Sc#^pAb2,NrK1<!$HjmJcF$q!$M.=!+>-m!Tsa^!!'e-rrC+7!!+LOq#:Au./3cBVtU,k
-mhkg"#oI?jfDkls^OI['!!&YbrrMjRpAb7SO4X1,!j>u;q>^M'JcC<$e,KD5rVup@dJn^~>
-df0;4rVup@NrK+JpV-]Qq>^M?pV-_&o`"sT)#4.4&<HYe!P^>a!!*AGV#T3M!5JF2!.XeE!sh_i
-a8>l=^Sc#^pAb2,NrK1<!$HjmJcF$q!$M.=!+>-m!Tsa^!!'e-rrC+7!!+LOq#:Au./3cBVtU,k
-mhkg"#oI?jfDkls^OI['!!&YbrrMjRpAb7SO4X1,!j>u;q>^M'JcC<$e,KD5rVup@dJn^~>
-df0;4rVup@NrK*oj8]2;oD\g"pAbF(=F[6HIqT\n!!&Xds4dSS^\e$2J+EXA0L-KH!!,@ZNrK1<
-!$HjmJcF$q!$M.=!+>*l!-%W3!5J4,!-%Z4#S:BnLVJn"?kE&4!+>I!!2&0L!2&ra!Tt<m!!XQ2
-5]CC%0_GDG@"J?/s3puJ5lL``+OU4>~>
-df0;4rVup@NrK*oj8]2;oD\g"pAbF(=F[6HIqT\n!!&Xds4dSS^\e$2J+EXA0L-KH!!,@ZNrK1<
-!$HjmJcF$q!$M.=!+>*l!-%W3!5J4,!-%Z4#S:BnLVJn"?kE&4!+>I!!2&0L!2&ra!Tt<m!!XQ2
-5]CC%0_GDG@"J?/s3puJ5lL``+OU4>~>
-df0;4rVup@NrK*oj8]2;oD\g"pAbF(=F[6HIqT\n!!&Xds4dSS^\e$2J+EXA0L-KH!!,@ZNrK1<
-!$HjmJcF$q!$M.=!+>*l!-%W3!5J4,!-%Z4#S:BnLVJn"?kE&4!+>I!!2&0L!2&ra!Tt<m!!XQ2
-5]CC%0_GDG@"J?/s3puJ5lL``+OU4>~>
-df0;4rVup@NrK*oj8]2;o)A]/k5YKqUAs!K!5JF2!.X#/!?gQbrrV'X+G'QDs3CWE+Su-=@-[am
-k6Ue^!5J1+!+=ph!D)tVrr>US!!#:\!!&Y`rrL^oirB'eJcC<$e,KD5rVup@dJn^~>
-df0;4rVup@NrK*oj8]2;o)A]/k5YKqUAs!K!5JF2!.X#/!?gQbrrV'X+G'QDs3CWE+Su-=@-[am
-k6Ue^!5J1+!+=ph!D)tVrr>US!!#:\!!&Y`rrL^oirB'eJcC<$e,KD5rVup@dJn^~>
-df0;4rVup@NrK*oj8]2;o)A]/k5YKqUAs!K!5JF2!.X#/!?gQbrrV'X+G'QDs3CWE+Su-=@-[am
-k6Ue^!5J1+!+=ph!D)tVrr>US!!#:\!!&Y`rrL^oirB'eJcC<$e,KD5rVup@dJn^~>
-df0;4rVup@NrK*oj8]2;nc&T6kl:^=U&WmJ!5JF2!.X&0!BBP,rrV'X+G'QDs3CWE+Su-=@-R[k
-E;'>4^[qI*@-@Rk@/'6l!V].O!!3G(^\Rp1TC`'`mm,q6!+:BXJcF4!!'pM`!$K\hJ,~>
-df0;4rVup@NrK*oj8]2;nc&T6kl:^=U&WmJ!5JF2!.X&0!BBP,rrV'X+G'QDs3CWE+Su-=@-R[k
-E;'>4^[qI*@-@Rk@/'6l!V].O!!3G(^\Rp1TC`'`mm,q6!+:BXJcF4!!'pM`!$K\hJ,~>
-df0;4rVup@NrK*oj8]2;nc&T6kl:^=U&WmJ!5JF2!.X&0!BBP,rrV'X+G'QDs3CWE+Su-=@-R[k
-E;'>4^[qI*@-@Rk@/'6l!V].O!!3G(^\Rp1TC`'`mm,q6!+:BXJcF4!!'pM`!$K\hJ,~>
-df0;4rVup@NrK*oj8]2;nG`N]#jhTm#d9p$g].>hqu6\p&EWrn=SIaR!oEu#JcC<$cMmkeqZ$V(
-l2LeI#l"B"^[hC)E9[E'J+*C<mkF/0"!Gqi^\Rp1TCMp]E97-$=N?!mJcF4!!'pM`!$K\hJ,~>
-df0;4rVup@NrK*oj8]2;nG`N]#jhTm#d9p$g].>hqu6\p&EWrn=SIaR!oEu#JcC<$cMmkeqZ$V(
-l2LeI#l"B"^[hC)E9[E'J+*C<mkF/0"!Gqi^\Rp1TCMp]E97-$=N?!mJcF4!!'pM`!$K\hJ,~>
-df0;4rVup@NrK*oj8]2;nG`N]#jhTm#d9p$g].>hqu6\p&EWrn=SIaR!oEu#JcC<$cMmkeqZ$V(
-l2LeI#l"B"^[hC)E9[E'J+*C<mkF/0"!Gqi^\Rp1TCMp]E97-$=N?!mJcF4!!'pM`!$K\hJ,~>
-df0;4rVup@NrK*oj8]2;n,EF/5jn[R:u@oFg].>hqYpWkQRM,!!AL^6rrV'X+G'QDs3CWE+Su-=
-@-IUjE;0D5^[_=)cTpmu!C4uurrMk=nGi^uGjk\4^\Rp1TCDj^hf&kf!!4R(kCNYas3^iH5lL``
-+OU4>~>
-df0;4rVup@NrK*oj8]2;n,EF/5jn[R:u@oFg].>hqYpWkQRM,!!AL^6rrV'X+G'QDs3CWE+Su-=
-@-IUjE;0D5^[_=)cTpmu!C4uurrMk=nGi^uGjk\4^\Rp1TCDj^hf&kf!!4R(kCNYas3^iH5lL``
-+OU4>~>
-df0;4rVup@NrK*oj8]2;n,EF/5jn[R:u@oFg].>hqYpWkQRM,!!AL^6rrV'X+G'QDs3CWE+Su-=
-@-IUjE;0D5^[_=)cTpmu!C4uurrMk=nGi^uGjk\4^\Rp1TCDj^hf&kf!!4R(kCNYas3^iH5lL``
-+OU4>~>
-df0;4rVup@NrK*oj8]2;mJd3j..[E>5eilig].>hp\t<@LH+`&!AL^4rrV'X+G'QDs3CWE+Su-=
-@-IUkk6Uk`!5J"&!O"3J!!,'gl2Le)3:m1O=Ps)W!5J@1!2&]Z!p=e^nGiV5E6j+8JcF$q!'pM`
-!$K\hJ,~>
-df0;4rVup@NrK*oj8]2;mJd3j..[E>5eilig].>hp\t<@LH+`&!AL^4rrV'X+G'QDs3CWE+Su-=
-@-IUkk6Uk`!5J"&!O"3J!!,'gl2Le)3:m1O=Ps)W!5J@1!2&]Z!p=e^nGiV5E6j+8JcF$q!'pM`
-!$K\hJ,~>
-df0;4rVup@NrK*oj8]2;mJd3j..[E>5eilig].>hp\t<@LH+`&!AL^4rrV'X+G'QDs3CWE+Su-=
-@-IUkk6Uk`!5J"&!O"3J!!,'gl2Le)3:m1O=Ps)W!5J@1!2&]Z!p=e^nGiV5E6j+8JcF$q!'pM`
-!$K\hJ,~>
-df0;4rVup@JcFF'!nWJuq#CI]Qf!Aokl1eS^OK?>p](C-=I7p!rrV'X+G'QDs,R*\kEf$@!!<L'
-QfmK1!oJJUq>^RVQg``0"n/X65X6Ii!!F-(E3JGUs+13nrr>=`!!".hs*t~>
-df0;4rVup@JcFF'!nWJuq#CI]Qf!Aokl1eS^OK?>p](C-=I7p!rrV'X+G'QDs,R*\kEf$@!!<L'
-QfmK1!oJJUq>^RVQg``0"n/X65X6Ii!!F-(E3JGUs+13nrr>=`!!".hs*t~>
-df0;4rVup@JcFF'!nWJuq#CI]Qf!Aokl1eS^OK?>p](C-=I7p!rrV'X+G'QDs,R*\kEf$@!!<L'
-QfmK1!oJJUq>^RVQg``0"n/X65X6Ii!!F-(E3JGUs+13nrr>=`!!".hs*t~>
-df0;4rVup@JcF7""5gl.hgtg_rrDNe^AuT2s8W*#hZ+dMs+13+s8Kdes8Th6hgtfYs,m<]5lL``
-+OU4>~>
-df0;4rVup@JcF7""5gl.hgtg_rrDNe^AuT2s8W*#hZ+dMs+13+s8Kdes8Th6hgtfYs,m<]5lL``
-+OU4>~>
-df0;4rVup@JcF7""5gl.hgtg_rrDNe^AuT2s8W*#hZ+dMs+13+s8Kdes8Th6hgtfYs,m<]5lL``
-+OU4>~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@M>n(S^OK'F5R7>i&3rL"YO@&Bj8TVX^OK'F5R7>i&3rL"YOC0E"P:D<Ipi.=!dLWp
-NrK1<!$HjmJcC<$JcC<$JcG'9!'pM`!$K\hJ,~>
-df0;4rVup@M>n(S^OK'F5R7>i&3rL"YO@&Bj8TVX^OK'F5R7>i&3rL"YOC0E"P:D<Ipi.=!dLWp
-NrK1<!$HjmJcC<$JcC<$JcG'9!'pM`!$K\hJ,~>
-df0;4rVup@M>n(S^OK'F5R7>i&3rL"YO@&Bj8TVX^OK'F5R7>i&3rL"YOC0E"P:D<Ipi.=!dLWp
-NrK1<!$HjmJcC<$JcC<$JcG'9!'pM`!$K\hJ,~>
-df0;4rVup@N;isgBHZjG!C3j?rrM"Jq`k.:S,WQ!BHZjG!C3jFrrUf%..dK>+HHI'hZ+dMs+13E
-rrC[G5QF@<rr?0k5QFX[If[=1mJd14l9G@4JcC<$Zi:"jrVup@dJn^~>
-df0;4rVup@N;isgBHZjG!C3j?rrM"Jq`k.:S,WQ!BHZjG!C3jFrrUf%..dK>+HHI'hZ+dMs+13E
-rrC[G5QF@<rr?0k5QFX[If[=1mJd14l9G@4JcC<$Zi:"jrVup@dJn^~>
-df0;4rVup@N;isgBHZjG!C3j?rrM"Jq`k.:S,WQ!BHZjG!C3jFrrUf%..dK>+HHI'hZ+dMs+13E
-rrC[G5QF@<rr?0k5QFX[If[=1mJd14l9G@4JcC<$Zi:"jrVup@dJn^~>
-df0;4rVup@O8f9j?kD]*!?e;orrMR:q>^M'T)Sl$?kD]*!?e<#rrVYM0_#,C+HHI'hZ+dMs+13E
-rr@QC!!'dtrr=2,!!4QufCAk@^Zke!hgtfYs0M_*5lL``+OU4>~>
-df0;4rVup@O8f9j?kD]*!?e;orrMR:q>^M'T)Sl$?kD]*!?e<#rrVYM0_#,C+HHI'hZ+dMs+13E
-rr@QC!!'dtrr=2,!!4QufCAk@^Zke!hgtfYs0M_*5lL``+OU4>~>
-df0;4rVup@O8f9j?kD]*!?e;orrMR:q>^M'T)Sl$?kD]*!?e<#rrVYM0_#,C+HHI'hZ+dMs+13E
-rr@QC!!'dtrr=2,!!4QufCAk@^Zke!hgtfYs0M_*5lL``+OU4>~>
-df0;4rVup@OoGHK+Qre+@/&LW!V\kT!!$E"rrJH/kPtWkpZDJV[i"Q6!$I=%!oEu#JcC<$UAk3A
-pAb2,kl1W*k5YN2TC`'_^Zke!hgtfYs0M_*5lL``+OU4>~>
-df0;4rVup@OoGHK+Qre+@/&LW!V\kT!!$E"rrJH/kPtWkpZDJV[i"Q6!$I=%!oEu#JcC<$UAk3A
-pAb2,kl1W*k5YN2TC`'_^Zke!hgtfYs0M_*5lL``+OU4>~>
-df0;4rVup@OoGHK+Qre+@/&LW!V\kT!!$E"rrJH/kPtWkpZDJV[i"Q6!$I=%!oEu#JcC<$UAk3A
-pAb2,kl1W*k5YN2TC`'_^Zke!hgtfYs0M_*5lL``+OU4>~>
-df0;4rVup@OoGDHjo>E1hqnA5@/'^%@%dN"5ir%I.,X:h!UjF`!!".%rrV'X+G'QDs.fSofCf1E
-)!Lu"+QWS(0Xp`T!5Ie!!8iA-JcE(V!'pM`!$K\hJ,~>
-df0;4rVup@OoGDHjo>E1hqnA5@/'^%@%dN"5ir%I.,X:h!UjF`!!".%rrV'X+G'QDs.fSofCf1E
-)!Lu"+QWS(0Xp`T!5Ie!!8iA-JcE(V!'pM`!$K\hJ,~>
-df0;4rVup@OoGDHjo>E1hqnA5@/'^%@%dN"5ir%I.,X:h!UjF`!!".%rrV'X+G'QDs.fSofCf1E
-)!Lu"+QWS(0Xp`T!5Ie!!8iA-JcE(V!'pM`!$K\hJ,~>
-df0;4rVup@OoGDHjT#<8n)43GJ+ipC@%dN"5ihtH0^n?-!Oip4!!".%rrV'X+G'QDs.fSoJ+WdA
-^Zkau+QEG%E;';3^Zke!hgtfYs0M_*5lL``+OU4>~>
-df0;4rVup@OoGDHjT#<8n)43GJ+ipC@%dN"5ihtH0^n?-!Oip4!!".%rrV'X+G'QDs.fSoJ+WdA
-^Zkau+QEG%E;';3^Zke!hgtfYs0M_*5lL``+OU4>~>
-df0;4rVup@OoGDHjT#<8n)43GJ+ipC@%dN"5ihtH0^n?-!Oip4!!".%rrV'X+G'QDs.fSoJ+WdA
-^Zkau+QEG%E;';3^Zke!hgtfYs0M_*5lL``+OU4>~>
-df0;4rVup@OoGDHj8]0NiVrnMp&G)#T`5!Wj8]0Nm/I'hl2Uf,NrK1<!$HjmJcDMF!%@L?!,1Ws
-!$L8$!DrOcrrBh!!!(o-s+13Vrr>=`!!".hs*t~>
-df0;4rVup@OoGDHj8]0NiVrnMp&G)#T`5!Wj8]0Nm/I'hl2Uf,NrK1<!$HjmJcDMF!%@L?!,1Ws
-!$L8$!DrOcrrBh!!!(o-s+13Vrr>=`!!".hs*t~>
-df0;4rVup@OoGDHj8]0NiVrnMp&G)#T`5!Wj8]0Nm/I'hl2Uf,NrK1<!$HjmJcDMF!%@L?!,1Ws
-!$L8$!DrOcrrBh!!!(o-s+13Vrr>=`!!".hs*t~>
-df0;4rVup@OoGDHq#Ca5@"5App\2FpIk^Qr!0?1?!Oi@.!!$E"rr>=[!"'9FJ$6W]pV3>M0_PJH
-O7*#K[g;^.%2`KN^VB6p^TW-#+93OErrV'X+G'QDs.oYpfCT%C)!V&#+Q3;$3;<7K!:Td!!(cqd
-!+>Z<!;D'EJcE(V!'pM`!$K\hJ,~>
-df0;4rVup@OoGDHq#Ca5@"5App\2FpIk^Qr!0?1?!Oi@.!!$E"rr>=[!"'9FJ$6W]pV3>M0_PJH
-O7*#K[g;^.%2`KN^VB6p^TW-#+93OErrV'X+G'QDs.oYpfCT%C)!V&#+Q3;$3;<7K!:Td!!(cqd
-!+>Z<!;D'EJcE(V!'pM`!$K\hJ,~>
-df0;4rVup@OoGDHq#Ca5@"5App\2FpIk^Qr!0?1?!Oi@.!!$E"rr>=[!"'9FJ$6W]pV3>M0_PJH
-O7*#K[g;^.%2`KN^VB6p^TW-#+93OErrV'X+G'QDs.oYpfCT%C)!V&#+Q3;$3;<7K!:Td!!(cqd
-!+>Z<!;D'EJcE(V!'pM`!$K\hJ,~>
-df0;4rVup@OoGDHqu?d@E52,H!N.(8!!*r2jo5A-&G6#'@%dN"5l:T`+E5*hrrK#?p](=3p[J1`
-cNs:G!D'uurrL/ZNrK1<!$HjmJcDPG!.XS?!5Ih!!$M+<!8m_S!:Tm$!e4l;o`+u"nc&Ssq>^MF
-JcC<$X8`/brVup@dJn^~>
-df0;4rVup@OoGDHqu?d@E52,H!N.(8!!*r2jo5A-&G6#'@%dN"5l:T`+E5*hrrK#?p](=3p[J1`
-cNs:G!D'uurrL/ZNrK1<!$HjmJcDPG!.XS?!5Ih!!$M+<!8m_S!:Tm$!e4l;o`+u"nc&Ssq>^MF
-JcC<$X8`/brVup@dJn^~>
-df0;4rVup@OoGDHqu?d@E52,H!N.(8!!*r2jo5A-&G6#'@%dN"5l:T`+E5*hrrK#?p](=3p[J1`
-cNs:G!D'uurrL/ZNrK1<!$HjmJcDPG!.XS?!5Ih!!$M+<!8m_S!:Tm$!e4l;o`+u"nc&Ssq>^MF
-JcC<$X8`/brVup@dJn^~>
-df0;4rVup@OoGDHrVus9TCW!_pMfm-!0?:B!TtTt!!$E"rr>=`!!*q/o)AabE;0D5O7E5Nf+@`X
-!AM9>s8N$"hZ+dMs+13Grr=JE!!"/<!!$]trr=2<!!(pKrrVAE)#""1Vt0if@/9j'It@WNs/Z/"
-5lL``+OU4>~>
-df0;4rVup@OoGDHrVus9TCW!_pMfm-!0?:B!TtTt!!$E"rr>=`!!*q/o)AabE;0D5O7E5Nf+@`X
-!AM9>s8N$"hZ+dMs+13Grr=JE!!"/<!!$]trr=2<!!(pKrrVAE)#""1Vt0if@/9j'It@WNs/Z/"
-5lL``+OU4>~>
-df0;4rVup@OoGDHrVus9TCW!_pMfm-!0?:B!TtTt!!$E"rr>=`!!*q/o)AabE;0D5O7E5Nf+@`X
-!AM9>s8N$"hZ+dMs+13Grr=JE!!"/<!!$]trr=2<!!(pKrrVAE)#""1Vt0if@/9j'It@WNs/Z/"
-5lL``+OU4>~>
-df0;4rVup@OoGPL!"b4cn,EAQq#CC[kPkSW0`(hM#l4N$@%dN&5QD@Vp[A+^5ktB[5k4jS3;EOT
-=SICHrVlrV!$HjmJcDSH!71KA!M9r#!!!l$rr=2<!!(pIrrMkLp](=+kO\]R@/9j'It@WNs/Z/"
-5lL``+OU4>~>
-df0;4rVup@OoGPL!"b4cn,EAQq#CC[kPkSW0`(hM#l4N$@%dN&5QD@Vp[A+^5ktB[5k4jS3;EOT
-=SICHrVlrV!$HjmJcDSH!71KA!M9r#!!!l$rr=2<!!(pIrrMkLp](=+kO\]R@/9j'It@WNs/Z/"
-5lL``+OU4>~>
-df0;4rVup@OoGPL!"b4cn,EAQq#CC[kPkSW0`(hM#l4N$@%dN&5QD@Vp[A+^5ktB[5k4jS3;EOT
-=SICHrVlrV!$HjmJcDSH!71KA!M9r#!!!l$rr=2<!!(pIrrMkLp](=+kO\]R@/9j'It@WNs/Z/"
-5lL``+OU4>~>
-df0;4rVup@OoGJJ8E]C?!T+Ib!!*Aokl1WRqZ$X&TDANf@%dN$5Y1)*rrM!gq>^O%n+6PZYPA.u
-E.S&drrV'X+G'QDs/#_qGl%IB#kqa'!!'e"rr=2<!!(pGrrK;/q#CD>oD\euq>^MFJcC<$X8`/b
-rVup@dJn^~>
-df0;4rVup@OoGJJ8E]C?!T+Ib!!*Aokl1WRqZ$X&TDANf@%dN$5Y1)*rrM!gq>^O%n+6PZYPA.u
-E.S&drrV'X+G'QDs/#_qGl%IB#kqa'!!'e"rr=2<!!(pGrrK;/q#CD>oD\euq>^MFJcC<$X8`/b
-rVup@dJn^~>
-df0;4rVup@OoGJJ8E]C?!T+Ib!!*Aokl1WRqZ$X&TDANf@%dN$5Y1)*rrM!gq>^O%n+6PZYPA.u
-E.S&drrV'X+G'QDs/#_qGl%IB#kqa'!!'e"rr=2<!!(pGrrK;/q#CD>oD\euq>^MFJcC<$X8`/b
-rVup@dJn^~>
-df0;4rVup@OoGF5lMgjNq#CDul2L`sq>^Pghtd<Q@%dN"fBWA9Qh^U]YOqhqpDE`,!-!MhqYpWS
-!$HjmJcDSH!$M.=!a,K3q>^M/li-r-q>^NQn,EBcq#CC3oD\euq>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@OoGF5lMgjNq#CDul2L`sq>^Pghtd<Q@%dN"fBWA9Qh^U]YOqhqpDE`,!-!MhqYpWS
-!$HjmJcDSH!$M.=!a,K3q>^M/li-r-q>^NQn,EBcq#CC3oD\euq>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@OoGF5lMgjNq#CDul2L`sq>^Pghtd<Q@%dN"fBWA9Qh^U]YOqhqpDE`,!-!MhqYpWS
-!$HjmJcDSH!$M.=!a,K3q>^M/li-r-q>^NQn,EBcq#CC3oD\euq>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@JcGQG!8%#H!.X;6!/LCN!e:7-q>^M'M#RJ,q#CDEo`"oHq>^OEpOWA@rrV'X+G'QD
-s/,era8,c<TE"WkqZ$X6p[%n[+Sl'<hsULE;#((k\+K\#@/9j'It@WNs/Z/"5lL``+OU4>~>
-df0;4rVup@JcGQG!8%#H!.X;6!/LCN!e:7-q>^M'M#RJ,q#CDEo`"oHq>^OEpOWA@rrV'X+G'QD
-s/,era8,c<TE"WkqZ$X6p[%n[+Sl'<hsULE;#((k\+K\#@/9j'It@WNs/Z/"5lL``+OU4>~>
-df0;4rVup@JcGQG!8%#H!.X;6!/LCN!e:7-q>^M'M#RJ,q#CDEo`"oHq>^OEpOWA@rrV'X+G'QD
-s/,era8,c<TE"WkqZ$X6p[%n[+Sl'<hsULE;#((k\+K\#@/9j'It@WNs/Z/"5lL``+OU4>~>
-df0;4rVup@JcGNF!!rE$!-%9(!2oYn"'GU'htd<Q@#+a^#l4N$E:s53k6Uqb!=7;.s7uZrhZ+dM
-s+13Irr@<@!!ESrs8Q3t!!'Lprr=2<!!(pErrCsP!!$F!rr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@JcGNF!!rE$!-%9(!2oYn"'GU'htd<Q@#+a^#l4N$E:s53k6Uqb!=7;.s7uZrhZ+dM
-s+13Irr@<@!!ESrs8Q3t!!'Lprr=2<!!(pErrCsP!!$F!rr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@JcGNF!!rE$!-%9(!2oYn"'GU'htd<Q@#+a^#l4N$E:s53k6Uqb!=7;.s7uZrhZ+dM
-s+13Irr@<@!!ESrs8Q3t!!'Lprr=2<!!(pErrCsP!!$F!rr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@JcGNF!&46L!+>0n!QPKC!!GR]s8V!Q!!$D^rr=bL!!$F"rr@QF!!$ths7lTqhZ+dM
-s+13Irr=2=!!#RhrrAtn!!$Enrr=2<!!(pDrr>%T!!"_Frr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@JcGNF!&46L!+>0n!QPKC!!GR]s8V!Q!!$D^rr=bL!!$F"rr@QF!!$ths7lTqhZ+dM
-s+13Irr=2=!!#RhrrAtn!!$Enrr=2<!!(pDrr>%T!!"_Frr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@JcGNF!&46L!+>0n!QPKC!!GR]s8V!Q!!$D^rr=bL!!$F"rr@QF!!$ths7lTqhZ+dM
-s+13Irr=2=!!#RhrrAtn!!$Enrr=2<!!(pDrr>%T!!"_Frr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@JcGNF!*K't!'orO!T+Ic!!+M:rr2uUq>^M'L]7?Vq>^L\p&>"?qZ$X&kCN[.rrV'X
-+G'QDs/5ksa8,c9TDnikpB^Wr!>,"mrr=2<!!(pDrr@iN!!!l.rr?I'!!%M"s+13Nrr>=`!!".h
-s*t~>
-df0;4rVup@JcGNF!*K't!'orO!T+Ic!!+M:rr2uUq>^M'L]7?Vq>^L\p&>"?qZ$X&kCN[.rrV'X
-+G'QDs/5ksa8,c9TDnikpB^Wr!>,"mrr=2<!!(pDrr@iN!!!l.rr?I'!!%M"s+13Nrr>=`!!".h
-s*t~>
-df0;4rVup@JcGNF!*K't!'orO!T+Ic!!+M:rr2uUq>^M'L]7?Vq>^L\p&>"?qZ$X&kCN[.rrV'X
-+G'QDs/5ksa8,c9TDnikpB^Wr!>,"mrr=2<!!(pDrr@iN!!!l.rr?I'!!%M"s+13Nrr>=`!!".h
-s*t~>
-df0;4rVup@JcGNF!+>X'!)W+`!Uh0.!!*YgrVllTq>^M'L]7?^q>^LlpAY-5q>^M7JcGKE!oEu#
-JcC<$VuHaAqZ$X&n,<7d=S`!t\*a1q+Sl'<hsLFDYPA1jrr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@JcGNF!+>X'!)W+`!Uh0.!!*YgrVllTq>^M'L]7?^q>^LlpAY-5q>^M7JcGKE!oEu#
-JcC<$VuHaAqZ$X&n,<7d=S`!t\*a1q+Sl'<hsLFDYPA1jrr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@JcGNF!+>X'!)W+`!Uh0.!!*YgrVllTq>^M'L]7?^q>^LlpAY-5q>^M7JcGKE!oEu#
-JcC<$VuHaAqZ$X&n,<7d=S`!t\*a1q+Sl'<hsLFDYPA1jrr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@JcGNF!'pA\!+>9q!V\SN!!*AGr;QcSq>^M'L]7?>q>^M'pAY,;q>^NQJcGKE!oEu#
-JcC<$VuH`>qZ$Uer;Qbpq>^M'mJd//q>^NQmJd1$q#CEPp&>#"q>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@JcGNF!'pA\!+>9q!V\SN!!*AGr;QcSq>^M'L]7?>q>^M'pAY,;q>^NQJcGKE!oEu#
-JcC<$VuH`>qZ$Uer;Qbpq>^M'mJd//q>^NQmJd1$q#CEPp&>#"q>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@JcGNF!'pA\!+>9q!V\SN!!*AGr;QcSq>^M'L]7?>q>^M'pAY,;q>^NQJcGKE!oEu#
-JcC<$VuH`>qZ$Uer;Qbpq>^M'mJd//q>^NQmJd1$q#CEPp&>#"q>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@JcGNF!$M+<!-mu4!)WLl!3c;"!8mVQ!+:T^!$M+<!-n5;!#YS5!$HjmpAY3O!$Hjm
-JcD\K!6=p9!2'2h!VZls!!*Z*mf*80q>^NQmJd1Dq#CEPp&>#"q>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@JcGNF!$M+<!-mu4!)WLl!3c;"!8mVQ!+:T^!$M+<!-n5;!#YS5!$HjmpAY3O!$Hjm
-JcD\K!6=p9!2'2h!VZls!!*Z*mf*80q>^NQmJd1Dq#CEPp&>#"q>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@JcGNF!$M+<!-mu4!)WLl!3c;"!8mVQ!+:T^!$M+<!-n5;!#YS5!$HjmpAY3O!$Hjm
-JcD\K!6=p9!2'2h!VZls!!*Z*mf*80q>^NQmJd1Dq#CEPp&>#"q>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@JcGQG!;H9h!133T!-n>?!/LFN!8mVQ!+:W_!;H9h!13H[!5J@1!-!MhpAY3O!$Hjm
-JcD\K!,23/!9a7Z!(cqd!4VCr!$M+<!8m2D!71H@!8mJL!+>X'!.TS"JcDeN!'pM`!$K\hJ,~>
-df0;4rVup@JcGQG!;H9h!133T!-n>?!/LFN!8mVQ!+:W_!;H9h!13H[!5J@1!-!MhpAY3O!$Hjm
-JcD\K!,23/!9a7Z!(cqd!4VCr!$M+<!8m2D!71H@!8mJL!+>X'!.TS"JcDeN!'pM`!$K\hJ,~>
-df0;4rVup@JcGQG!;H9h!133T!-n>?!/LFN!8mVQ!+:W_!;H9h!13H[!5J@1!-!MhpAY3O!$Hjm
-JcD\K!,23/!9a7Z!(cqd!4VCr!$M+<!8m2D!71H@!8mJL!+>X'!.TS"JcDeN!'pM`!$K\hJ,~>
-df0;4rVup@JcGQG!8%#H!7138!13N^!,23.!8mVQ!+:W_!8%#H!71E>!/LCN!3^tRpAY3O!$Hjm
-JcD\K!#YS5!'pD\!2')f!+>6p!$M+<!8m2D!5J=0o`"o!q>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@JcGQG!8%#H!7138!13N^!,23.!8mVQ!+:W_!8%#H!71E>!/LCN!3^tRpAY3O!$Hjm
-JcD\K!#YS5!'pD\!2')f!+>6p!$M+<!8m2D!5J=0o`"o!q>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@JcGQG!8%#H!7138!13N^!,23.!8mVQ!+:W_!8%#H!71E>!/LCN!3^tRpAY3O!$Hjm
-JcD\K!#YS5!'pD\!2')f!+>6p!$M+<!8m2D!5J=0o`"o!q>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@JcGQG!/LCN!=8GjrrBP)!!,Xbq>UHPq>^M'M#RI1q>^O%p\4[f=S`!tpOWA<rrV'X
-+G'QDs/H"u^\Rp1Qhp^_mg/dj!>,"orr=2<!!(pDrrA\f!!!T&rr?I'!!%M"s+13Nrr>=`!!".h
-s*t~>
-df0;4rVup@JcGQG!/LCN!=8GjrrBP)!!,Xbq>UHPq>^M'M#RI1q>^O%p\4[f=S`!tpOWA<rrV'X
-+G'QDs/H"u^\Rp1Qhp^_mg/dj!>,"orr=2<!!(pDrrA\f!!!T&rr?I'!!%M"s+13Nrr>=`!!".h
-s*t~>
-df0;4rVup@JcGQG!/LCN!=8GjrrBP)!!,Xbq>UHPq>^M'M#RI1q>^O%p\4[f=S`!tpOWA<rrV'X
-+G'QDs/H"u^\Rp1Qhp^_mg/dj!>,"orr=2<!!(pDrrA\f!!!T&rr?I'!!%M"s+13Nrr>=`!!".h
-s*t~>
-df0;4rVup@JcGQG!$M+<!(c\\!RD&K!!+eBq#:?Oq>^M'M#RGtq>^LdpAY+@qZ$UEqu7)NO&/),
-!!#8L8:RQ#M#RP6!$HjmJcD_L!,23/!9a1X!(cqd!4VFs!$M+<!8m2D!+>X'!&4'F!+>X'!.TS"
-JcDeN!'pM`!$K\hJ,~>
-df0;4rVup@JcGQG!$M+<!(c\\!RD&K!!+eBq#:?Oq>^M'M#RGtq>^LdpAY+@qZ$UEqu7)NO&/),
-!!#8L8:RQ#M#RP6!$HjmJcD_L!,23/!9a1X!(cqd!4VFs!$M+<!8m2D!+>X'!&4'F!+>X'!.TS"
-JcDeN!'pM`!$K\hJ,~>
-df0;4rVup@JcGQG!$M+<!(c\\!RD&K!!+eBq#:?Oq>^M'M#RGtq>^LdpAY+@qZ$UEqu7)NO&/),
-!!#8L8:RQ#M#RP6!$HjmJcD_L!,23/!9a1X!(cqd!4VFs!$M+<!8m2D!+>X'!&4'F!+>X'!.TS"
-JcDeN!'pM`!$K\hJ,~>
-df0;4rVup@JcGTH!4Vb(!3c"o!T+ak!!*qop\t6Nq>^M'M>mRbq#CDup\t6fq>^Ldrr3&_GS'KI
-!EcggrrV'X+G'QDs/H"u)#F:55kt?ZTDANf@.4*q+Sl'<hsLFD+Sl'<J+Wa@@/9j'It@WNs/Z/"
-5lL``+OU4>~>
-df0;4rVup@JcGTH!4Vb(!3c"o!T+ak!!*qop\t6Nq>^M'M>mRbq#CDup\t6fq>^Ldrr3&_GS'KI
-!EcggrrV'X+G'QDs/H"u)#F:55kt?ZTDANf@.4*q+Sl'<hsLFD+Sl'<J+Wa@@/9j'It@WNs/Z/"
-5lL``+OU4>~>
-df0;4rVup@JcGTH!4Vb(!3c"o!T+ak!!*qop\t6Nq>^M'M>mRbq#CDup\t6fq>^Ldrr3&_GS'KI
-!EcggrrV'X+G'QDs/H"u)#F:55kt?ZTDANf@.4*q+Sl'<hsLFD+Sl'<J+Wa@@/9j'It@WNs/Z/"
-5lL``+OU4>~>
-df0;4rVup@JcGTH!)WLl!>tS'rrMR:qZ$X&ch@A=htd<Q@#=m`;#1.m)#*e)!71KA"E=D(?jQ6%
-!D)C4rrV'X+G'QDs/Q)!^\Rp1Qh^R]mg/dj!>,"prr=2<!!(pErrB7u!!((3rr?I'!!%M"s+13N
-rr>=`!!".hs*t~>
-df0;4rVup@JcGTH!)WLl!>tS'rrMR:qZ$X&ch@A=htd<Q@#=m`;#1.m)#*e)!71KA"E=D(?jQ6%
-!D)C4rrV'X+G'QDs/Q)!^\Rp1Qh^R]mg/dj!>,"prr=2<!!(pErrB7u!!((3rr?I'!!%M"s+13N
-rr>=`!!".hs*t~>
-df0;4rVup@JcGTH!)WLl!>tS'rrMR:qZ$X&ch@A=htd<Q@#=m`;#1.m)#*e)!71KA"E=D(?jQ6%
-!D)C4rrV'X+G'QDs/Q)!^\Rp1Qh^R]mg/dj!>,"prr=2<!!(pErrB7u!!((3rr?I'!!%M"s+13N
-rr>=`!!".hs*t~>
-df0;4rVup@JcGWI!T+1Z!!%N@rrMjbq>^N)p&>$Lq>^M'MZ3_7#l4N$J+imBVtpApO,";6!!*@d
-NW0(;!$HjmJcDbM!,23/!9a+V!(cqd!2o>d!$M+<!8m8F!V\;E!!!l-rr?I'!!%M"s+13Nrr>=`
-!!".hs*t~>
-df0;4rVup@JcGWI!T+1Z!!%N@rrMjbq>^N)p&>$Lq>^M'MZ3_7#l4N$J+imBVtpApO,";6!!*@d
-NW0(;!$HjmJcDbM!,23/!9a+V!(cqd!2o>d!$M+<!8m8F!V\;E!!!l-rr?I'!!%M"s+13Nrr>=`
-!!".hs*t~>
-df0;4rVup@JcGWI!T+1Z!!%N@rrMjbq>^N)p&>$Lq>^M'MZ3_7#l4N$J+imBVtpApO,";6!!*@d
-NW0(;!$HjmJcDbM!,23/!9a+V!(cqd!2o>d!$M+<!8m8F!V\;E!!!l-rr?I'!!%M"s+13Nrr>=`
-!!".hs*t~>
-df0;4rVup@JcGWI!'p>[!9a"S!+>X'!0?dP!8mVQ!+:]a!'p>[!9a(U!-%c7!!qfh!.U%/!oEu#
-JcC<$WrE&9qZ$UUpAY,Zq>^LtnG`J2q>^NQn,EAiq#CDUoD\euq>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@JcGWI!'p>[!9a"S!+>X'!0?dP!8mVQ!+:]a!'p>[!9a(U!-%c7!!qfh!.U%/!oEu#
-JcC<$WrE&9qZ$UUpAY,Zq>^LtnG`J2q>^NQn,EAiq#CDUoD\euq>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@JcGWI!'p>[!9a"S!+>X'!0?dP!8mVQ!+:]a!'p>[!9a(U!-%c7!!qfh!.U%/!oEu#
-JcC<$WrE&9qZ$UUpAY,Zq>^LtnG`J2q>^NQn,EAiq#CDUoD\euq>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@JcGZJ!2'&e!)W=f!.XhF!-%Q0!8mVQ!+:`b!2'&e!)W@g!+=^b!.U(0!oEu#JcC<$
-X8`17q>^MNpAY-Uq>^O%p[S7`+Sl'<hsgXGJ,''F)#*Y%!+>X'!.TS"JcDeN!'pM`!$K\hJ,~>
-df0;4rVup@JcGZJ!2'&e!)W=f!.XhF!-%Q0!8mVQ!+:`b!2'&e!)W@g!+=^b!.U(0!oEu#JcC<$
-X8`17q>^MNpAY-Uq>^O%p[S7`+Sl'<hsgXGJ,''F)#*Y%!+>X'!.TS"JcDeN!'pM`!$K\hJ,~>
-df0;4rVup@JcGZJ!2'&e!)W=f!.XhF!-%Q0!8mVQ!+:`b!2'&e!)W@g!+=^b!.U(0!oEu#JcC<$
-X8`17q>^MNpAY-Uq>^O%p[S7`+Sl'<hsgXGJ,''F)#*Y%!+>X'!.TS"JcDeN!'pM`!$K\hJ,~>
-df0;4rVup@JcG]K!T+Ib!!*Ygp&>#aq>^Llo)A^Iq>^M'N;iq9&GcA-&E!0\!*Jakr]gHCo)JcG
-OT,C>!$HjmJcDeN!+>X'!8mJL!'pA\!2oAe!$M+<!8mAI!V]^k!!&)Nrr?I'!!%M"s+13Nrr>=`
-!!".hs*t~>
-df0;4rVup@JcG]K!T+Ib!!*Ygp&>#aq>^Llo)A^Iq>^M'N;iq9&GcA-&E!0\!*Jakr]gHCo)JcG
-OT,C>!$HjmJcDeN!+>X'!8mJL!'pA\!2oAe!$M+<!8mAI!V]^k!!&)Nrr?I'!!%M"s+13Nrr>=`
-!!".hs*t~>
-df0;4rVup@JcG]K!T+Ib!!*Ygp&>#aq>^Llo)A^Iq>^M'N;iq9&GcA-&E!0\!*Jakr]gHCo)JcG
-OT,C>!$HjmJcDeN!+>X'!8mJL!'pA\!2oAe!$M+<!8mAI!V]^k!!&)Nrr?I'!!%M"s+13Nrr>=`
-!!".hs*t~>
-df0;4rVup@JcG]K!''cS!2&ra!Oi@3!!+eJo)A^Iq>^M'N;il;q#CDeo`"nVp&G1#BW'barrU5[
-)#+(3#j7?M!oEu#JcC<$XT&=q&GlG-3;!4NQhg[^=RlCk+Sl'<ht6pMpR`l/!!,(Ro)A\tq>^MF
-JcC<$X8`/brVup@dJn^~>
-df0;4rVup@JcG]K!''cS!2&ra!Oi@3!!+eJo)A^Iq>^M'N;il;q#CDeo`"nVp&G1#BW'barrU5[
-)#+(3#j7?M!oEu#JcC<$XT&=q&GlG-3;!4NQhg[^=RlCk+Sl'<ht6pMpR`l/!!,(Ro)A\tq>^MF
-JcC<$X8`/brVup@dJn^~>
-df0;4rVup@JcG]K!''cS!2&ra!Oi@3!!+eJo)A^Iq>^M'N;il;q#CDeo`"nVp&G1#BW'barrU5[
-)#+(3#j7?M!oEu#JcC<$XT&=q&GlG-3;!4NQhg[^=RlCk+Sl'<ht6pMpR`l/!!,(Ro)A\tq>^MF
-JcC<$X8`/brVup@dJn^~>
-df0;4rVup@JcG`L!.XeE!)W@g!S7n[!!+5*nc&UHq>^M'gA_/6l[R+X!.XeE!)W:e!''`R!YBkE
-p&>']@/'^%:m(bZhZ+dMs+13OrrBP)!!%fHrrD6Y!!*B"o)A\4q>^NQp\t?1QY6s)!!*qonc&Ss
-q>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@JcG`L!.XeE!)W@g!S7n[!!+5*nc&UHq>^M'gA_/6l[R+X!.XeE!)W:e!''`R!YBkE
-p&>']@/'^%:m(bZhZ+dMs+13OrrBP)!!%fHrrD6Y!!*B"o)A\4q>^NQp\t?1QY6s)!!*qonc&Ss
-q>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@JcG`L!.XeE!)W@g!S7n[!!+5*nc&UHq>^M'gA_/6l[R+X!.XeE!)W:e!''`R!YBkE
-p&>']@/'^%:m(bZhZ+dMs+13OrrBP)!!%fHrrD6Y!!*B"o)A\4q>^NQp\t?1QY6s)!!*qonc&Ss
-q>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@JcGcM!3c1u!>t"mrr=bM!!*YWnG`LGq>^M'gA_-qlN#0/!3c1u!>t"krr=2<!!4!u
-n+$DXGk_7=\!$amhZ+dMs+13Orr?I'!!(pJrr>=\!!&qfrr=2<!!#"T5QDqt!!*A?nG`Jrq>^MF
-JcC<$X8`/brVup@dJn^~>
-df0;4rVup@JcGcM!3c1u!>t"mrr=bM!!*YWnG`LGq>^M'gA_-qlN#0/!3c1u!>t"krr=2<!!4!u
-n+$DXGk_7=\!$amhZ+dMs+13Orr?I'!!(pJrr>=\!!&qfrr=2<!!#"T5QDqt!!*A?nG`Jrq>^MF
-JcC<$X8`/brVup@dJn^~>
-df0;4rVup@JcGcM!3c1u!>t"mrr=bM!!*YWnG`LGq>^M'gA_-qlN#0/!3c1u!>t"krr=2<!!4!u
-n+$DXGk_7=\!$amhZ+dMs+13Orr?I'!!(pJrr>=\!!&qfrr=2<!!#"T5QDqt!!*A?nG`Jrq>^MF
-JcC<$X8`/brVup@dJn^~>
-df0;4rVup@Jc>fOcNs=H!4VV#!$M1>!=61'rrCsQ!!$E\rr=2-!6tNEcNs=H!4VP!!$M+<!5It%
-!+>U&!)SjY!oEu#JcC<$XoAFr&GlG-3:d(LQhg[^=RuIl+QEG&(ru+F!+>X'!.TS"JcDeN!'pM`
-!$K\hJ,~>
-df0;4rVup@Jc>fOcNs=H!4VV#!$M1>!=61'rrCsQ!!$E\rr=2-!6tNEcNs=H!4VP!!$M+<!5It%
-!+>U&!)SjY!oEu#JcC<$XoAFr&GlG-3:d(LQhg[^=RuIl+QEG&(ru+F!+>X'!.TS"JcDeN!'pM`
-!$K\hJ,~>
-df0;4rVup@Jc>fOcNs=H!4VV#!$M1>!=61'rrCsQ!!$E\rr=2-!6tNEcNs=H!4VP!!$M+<!5It%
-!+>U&!)SjY!oEu#JcC<$XoAFr&GlG-3:d(LQhg[^=RuIl+QEG&(ru+F!+>X'!.TS"JcDeN!'pM`
-!$K\hJ,~>
-df0;4rVup@Jc>c>+Sc!;J+N[?+T)3>&FMd`3;NUT)#HPuE8gfs+R9$QrrMR2q#CDEnc/Cb!6=O-
-!V[H-!!*B"PQ(^A!$HjmJcDkP!4Ve)!.XS>!8mVQ!=8Gkrr=2&!!,(Bmf*8pq>^MFJcC<$X8`/b
-rVup@dJn^~>
-df0;4rVup@Jc>c>+Sc!;J+N[?+T)3>&FMd`3;NUT)#HPuE8gfs+R9$QrrMR2q#CDEnc/Cb!6=O-
-!V[H-!!*B"PQ(^A!$HjmJcDkP!4Ve)!.XS>!8mVQ!=8Gkrr=2&!!,(Bmf*8pq>^MFJcC<$X8`/b
-rVup@dJn^~>
-df0;4rVup@Jc>c>+Sc!;J+N[?+T)3>&FMd`3;NUT)#HPuE8gfs+R9$QrrMR2q#CDEnc/Cb!6=O-
-!V[H-!!*B"PQ(^A!$HjmJcDkP!4Ve)!.XS>!8mVQ!=8Gkrr=2&!!,(Bmf*8pq>^MFJcC<$X8`/b
-rVup@dJn^~>
-df0;4rVup@K)YlG3;EOS@.O<t+P?_p5iM_C+R9$RrrMjRq#CD&nGi:a!8m2D!0?pU!5F`t!oEu#
-JcC<$XoAB/q>^NInc&SKq>^MnoD\e5jo>GgGk^V*!+>X'!.TS"JcDeN!'pM`!$K\hJ,~>
-df0;4rVup@K)YlG3;EOS@.O<t+P?_p5iM_C+R9$RrrMjRq#CD&nGi:a!8m2D!0?pU!5F`t!oEu#
-JcC<$XoAB/q>^NInc&SKq>^MnoD\e5jo>GgGk^V*!+>X'!.TS"JcDeN!'pM`!$K\hJ,~>
-df0;4rVup@K)YlG3;EOS@.O<t+P?_p5iM_C+R9$RrrMjRq#CD&nGi:a!8m2D!0?pU!5F`t!oEu#
-JcC<$XoAB/q>^NInc&SKq>^MnoD\e5jo>GgGk^V*!+>X'!.TS"JcDeN!'pM`!$K\hJ,~>
-df0;4rVup@K)YgQq#CFdp[\=a+P?_p5iM_C+R9$Rrr?0s!!,XbnG`J*q>^NImJd4]&GcA,E0L;'
-hZ+dMs+13QrrMj*qZ$UEnG`KDq>^LtoD\e5kPtYiE9HQe!+>X'!.TS"JcDeN!'pM`!$K\hJ,~>
-df0;4rVup@K)YgQq#CFdp[\=a+P?_p5iM_C+R9$Rrr?0s!!,XbnG`J*q>^NImJd4]&GcA,E0L;'
-hZ+dMs+13QrrMj*qZ$UEnG`KDq>^LtoD\e5kPtYiE9HQe!+>X'!.TS"JcDeN!'pM`!$K\hJ,~>
-df0;4rVup@K)YgQq#CFdp[\=a+P?_p5iM_C+R9$Rrr?0s!!,XbnG`J*q>^NImJd4]&GcA,E0L;'
-hZ+dMs+13QrrMj*qZ$UEnG`KDq>^LtoD\e5kPtYiE9HQe!+>X'!.TS"JcDeN!'pM`!$K\hJ,~>
-df0;4rVup@KDtprq#CFLn+$DX+P?_p5iM_C+R9$Srr@<>!!+eBn,EA1q>^N1m/I&^q>^L\PQ(^A
-!$HjmJcDnQ!4Ve)!*Ja*!2')f!=8/drr=2,!!5-0kNW!H@/9j'It@WNs/Z/"5lL``+OU4>~>
-df0;4rVup@KDtprq#CFLn+$DX+P?_p5iM_C+R9$Srr@<>!!+eBn,EA1q>^N1m/I&^q>^L\PQ(^A
-!$HjmJcDnQ!4Ve)!*Ja*!2')f!=8/drr=2,!!5-0kNW!H@/9j'It@WNs/Z/"5lL``+OU4>~>
-df0;4rVup@KDtprq#CFLn+$DX+P?_p5iM_C+R9$Srr@<>!!+eBn,EA1q>^N1m/I&^q>^L\PQ(^A
-!$HjmJcDnQ!4Ve)!*Ja*!2')f!=8/drr=2,!!5-0kNW!H@/9j'It@WNs/Z/"5lL``+OU4>~>
-df0;4rVup@K`;%Eq#CF<hsgXG+P?_p5iM_C=R/6"rrA\e!!+5"mf*8Hq>^N1m/I'Hq>^L<PQ(^A
-!$HjmJcDnQ!*J+Y!2&o`!$Lb2"XlW$GdmG0rr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@K`;%Eq#CF<hsgXG+P?_p5iM_C=R/6"rrA\e!!+5"mf*8Hq>^N1m/I'Hq>^L<PQ(^A
-!$HjmJcDnQ!*J+Y!2&o`!$Lb2"XlW$GdmG0rr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@K`;%Eq#CF<hsgXG+P?_p5iM_C=R/6"rrA\e!!+5"mf*8Hq>^N1m/I'Hq>^L<PQ(^A
-!$HjmJcDnQ!*J+Y!2&o`!$Lb2"XlW$GdmG0rr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@L&V.Fq#CF,cgUl6+P?_p5b%cRTD8Hf&C9bD!'pA\!2&WX!5J@1!!neg!oEu#JcC<$
-YQ"Xt#i>U^8G)o^+Sl'<hq.l.@/9j'It@WNs/Z/"5lL``+OU4>~>
-df0;4rVup@L&V.Fq#CF,cgUl6+P?_p5b%cRTD8Hf&C9bD!'pA\!2&WX!5J@1!!neg!oEu#JcC<$
-YQ"Xt#i>U^8G)o^+Sl'<hq.l.@/9j'It@WNs/Z/"5lL``+OU4>~>
-df0;4rVup@L&V.Fq#CF,cgUl6+P?_p5b%cRTD8Hf&C9bD!'pA\!2&WX!5J@1!!neg!oEu#JcC<$
-YQ"Xt#i>U^8G)o^+Sl'<hq.l.@/9j'It@WNs/Z/"5lL``+OU4>~>
-df0;4rVup@LAq7Wq#CF,cgLf5=Qi!M3;NUT)#HPuE1Hq.YPA/!&C9_C!)WLl!2&WX!6=m8!;D`X
-!oEu#JcC<$YQ"U#h>dQ^n+H\\+Sl'<hq.l.@/9j'It@WNs/Z/"5lL``+OU4>~>
-df0;4rVup@LAq7Wq#CF,cgLf5=Qi!M3;NUT)#HPuE1Hq.YPA/!&C9_C!)WLl!2&WX!6=m8!;D`X
-!oEu#JcC<$YQ"U#h>dQ^n+H\\+Sl'<hq.l.@/9j'It@WNs/Z/"5lL``+OU4>~>
-df0;4rVup@LAq7Wq#CF,cgLf5=Qi!M3;NUT)#HPuE1Hq.YPA/!&C9_C!)WLl!2&WX!6=m8!;D`X
-!oEu#JcC<$YQ"U#h>dQ^n+H\\+Sl'<hq.l.@/9j'It@WNs/Z/"5lL``+OU4>~>
-df0;4rVup@L]7Ca#l4N%#g_!"!8mVQ!+;,m!Oi@2!!*AOli-rmq>^MNm/I(Cq#CEPPlCgB!$Hjm
-JcDqR!*J%W!2&ra!$M+<!8lE.!+>X'!.TS"JcDeN!'pM`!$K\hJ,~>
-df0;4rVup@L]7Ca#l4N%#g_!"!8mVQ!+;,m!Oi@2!!*AOli-rmq>^MNm/I(Cq#CEPPlCgB!$Hjm
-JcDqR!*J%W!2&ra!$M+<!8lE.!+>X'!.TS"JcDeN!'pM`!$K\hJ,~>
-df0;4rVup@L]7Ca#l4N%#g_!"!8mVQ!+;,m!Oi@2!!*AOli-rmq>^MNm/I(Cq#CEPPlCgB!$Hjm
-JcDqR!*J%W!2&ra!$M+<!8lE.!+>X'!.TS"JcDeN!'pM`!$K\hJ,~>
-df0;4rVup@M#RLb#l4N%#e/7^!8mVQ!+;/n!Oi@2!!*A7lMgj'q>^M?m/I(Cq#CEPPlCgB!$Hjm
-JcDtS!VZlU!!#R_rr=2<!!(p.rr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@M#RLb#l4N%#e/7^!8mVQ!+;/n!Oi@2!!*A7lMgj'q>^M?m/I(Cq#CEPPlCgB!$Hjm
-JcDtS!VZlU!!#R_rr=2<!!(p.rr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@M#RLb#l4N%#e/7^!8mVQ!+;/n!Oi@2!!*A7lMgj'q>^M?m/I(Cq#CEPPlCgB!$Hjm
-JcDtS!VZlU!!#R_rr=2<!!(p.rr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@M>mUc#l4N%#e/4]!8mVQ!+;2o!Oi@2!!*A7l2La]q>^Llm/I(Cq#CE`PlCgB!$Hjm
-JcDtS!2nTP!=8/frr=2<!!(p.rr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@M>mUc#l4N%#e/4]!8mVQ!+;2o!Oi@2!!*A7l2La]q>^Llm/I(Cq#CE`PlCgB!$Hjm
-JcDtS!2nTP!=8/frr=2<!!(p.rr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@M>mUc#l4N%#e/4]!8mVQ!+;2o!Oi@2!!*A7l2La]q>^Llm/I(Cq#CE`PlCgB!$Hjm
-JcDtS!2nTP!=8/frr=2<!!(p.rr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@MZ3_'&GcA-#e/1\!8mVQ!+;5p!RD>R!!*A7kl1Y?q>^L4m/I(3q#HWY!oEu#JcC<$
-Yl=]*q>^LTlTbF]q>^MfpAY+8q>^NQfDbhYq>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@MZ3_'&GcA-#e/1\!8mVQ!+;5p!RD>R!!*A7kl1Y?q>^L4m/I(3q#HWY!oEu#JcC<$
-Yl=]*q>^LTlTbF]q>^MfpAY+8q>^NQfDbhYq>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@MZ3_'&GcA-#e/1\!8mVQ!+;5p!RD>R!!*A7kl1Y?q>^L4m/I(3q#HWY!oEu#JcC<$
-Yl=]*q>^LTlTbF]q>^MfpAY+8q>^NQfDbhYq>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@MuNh(&GcA-#e/.[!8mVQ!+;8q!RD>R!!*A7k5PDmq>^NYmJd0qq>^L<PQ(^A!$Hjm
-JcE"T!VZls!!"/,rr?a/!!#R`rr=2<!!(p.rr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@MuNh(&GcA-#e/.[!8mVQ!+;8q!RD>R!!*A7k5PDmq>^NYmJd0qq>^L<PQ(^A!$Hjm
-JcE"T!VZls!!"/,rr?a/!!#R`rr=2<!!(p.rr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@MuNh(&GcA-#e/.[!8mVQ!+;8q!RD>R!!*A7k5PDmq>^NYmJd0qq>^L<PQ(^A!$Hjm
-JcE"T!VZls!!"/,rr?a/!!#R`rr=2<!!(p.rr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@N;iq)&GcA-#e/+Z!8mVQ!+;;r!RD>R!!*A7jo5<Wq>^N!mJd0Iq>^LLPQ(^A!$Hjm
-JcE"T!2oYn!-%6'!5J@1!=8/grr=2<!!(p.rr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@N;iq)&GcA-#e/+Z!8mVQ!+;;r!RD>R!!*A7jo5<Wq>^N!mJd0Iq>^LLPQ(^A!$Hjm
-JcE"T!2oYn!-%6'!5J@1!=8/grr=2<!!(p.rr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@N;iq)&GcA-#e/+Z!8mVQ!+;;r!RD>R!!*A7jo5<Wq>^N!mJd0Iq>^LLPQ(^A!$Hjm
-JcE"T!2oYn!-%6'!5J@1!=8/grr=2<!!(p.rr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@NW0%"&GcA-&AQKi!8mVQ!+;>s!QPcJ!!*YGjSo40q>^M/mJd/gq>^MFPQ(^A!$Hjm
-JcE"T!)WLl!5Idu!#YP4!2'#c!$M+<!8lE.!+>X'!.TS"JcDeN!'pM`!$K\hJ,~>
-df0;4rVup@NW0%"&GcA-&AQKi!8mVQ!+;>s!QPcJ!!*YGjSo40q>^M/mJd/gq>^MFPQ(^A!$Hjm
-JcE"T!)WLl!5Idu!#YP4!2'#c!$M+<!8lE.!+>X'!.TS"JcDeN!'pM`!$K\hJ,~>
-df0;4rVup@NW0%"&GcA-&AQKi!8mVQ!+;>s!QPcJ!!*YGjSo40q>^M/mJd/gq>^MFPQ(^A!$Hjm
-JcE"T!)WLl!5Idu!#YP4!2'#c!$M+<!8lE.!+>X'!.TS"JcDeN!'pM`!$K\hJ,~>
-df0;4rVup@NrK-h#l4N%&C8T#!8mVQ!+;At!Oi@2!!*YWj8T+oq>^O%kO/?M+Sl'<^Q\[!hZ+dM
-s+13UrrMQoqZ$U5kl1Wrq>^Ldp\t49q>^NQfDbhYq>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@NrK-h#l4N%&C8T#!8mVQ!+;At!Oi@2!!*YWj8T+oq>^O%kO/?M+Sl'<^Q\[!hZ+dM
-s+13UrrMQoqZ$U5kl1Wrq>^Ldp\t49q>^NQfDbhYq>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@NrK-h#l4N%&C8T#!8mVQ!+;At!Oi@2!!*YWj8T+oq>^O%kO/?M+Sl'<^Q\[!hZ+dM
-s+13UrrMQoqZ$U5kl1Wrq>^Ldp\t49q>^NQfDbhYq>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@O8f6i#l4N%&C8Q"!8mVQ!+;Du!Oi@2!!*YWiVrm#q>^MVn,EC&q>^L,P5bU@!$Hjm
-JcE%U!2')f!,1Tr!5J@1!=7l`rr=2<!!(p.rr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@O8f6i#l4N%&C8Q"!8mVQ!+;Du!Oi@2!!*YWiVrm#q>^MVn,EC&q>^L,P5bU@!$Hjm
-JcE%U!2')f!,1Tr!5J@1!=7l`rr=2<!!(p.rr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@O8f6i#l4N%&C8Q"!8mVQ!+;Du!Oi@2!!*YWiVrm#q>^MVn,EC&q>^L,P5bU@!$Hjm
-JcE%U!2')f!,1Tr!5J@1!=7l`rr=2<!!(p.rr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@OT,?j#l4N%+P4d9!8mVQ!+;H!!Oi@2!!+4oi;We<q>^O5p[J1_@/9j'=H`[chZ+dM
-s+13Urr>Ud!!'dsrr<o4!!&A\rr=2<!!(p.rr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@OT,?j#l4N%+P4d9!8mVQ!+;H!!Oi@2!!+4oi;We<q>^O5p[J1_@/9j'=H`[chZ+dM
-s+13Urr>Ud!!'dsrr<o4!!&A\rr=2<!!(p.rr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@OT,?j#l4N%+P4d9!8mVQ!+;H!!Oi@2!!+4oi;We<q>^O5p[J1_@/9j'=H`[chZ+dM
-s+13Urr>Ud!!'dsrr<o4!!&A\rr=2<!!(p.rr?I'!!%M"s+13Nrr>=`!!".hs*t~>
-df0;4rVup@OoGHS#l4N%+Q(<@!8mVQ!+;K"!M9Yo!!+5"hu<`G#l4N$B^u*&a8#]8c]\;0hZ+dM
-s+13VrrMQoqZ$X.pZMPV@/9j'5kt?Z+Sl'<hq.l.@/9j'It@WNs/Z/"5lL``+OU4>~>
-df0;4rVup@OoGHS#l4N%+Q(<@!8mVQ!+;K"!M9Yo!!+5"hu<`G#l4N$B^u*&a8#]8c]\;0hZ+dM
-s+13VrrMQoqZ$X.pZMPV@/9j'5kt?Z+Sl'<hq.l.@/9j'It@WNs/Z/"5lL``+OU4>~>
-df0;4rVup@OoGHS#l4N%+Q(<@!8mVQ!+;K"!M9Yo!!+5"hu<`G#l4N$B^u*&a8#]8c]\;0hZ+dM
-s+13VrrMQoqZ$X.pZMPV@/9j'5kt?Z+Sl'<hq.l.@/9j'It@WNs/Z/"5lL``+OU4>~>
-df0;4rVup@P5bNSq#CFLhoPfthtd<Q@%mT#TD8Hf0]1^d!-%`6!5J.*!UhH5!!#iXrrV'X+G'QD
-s0M_*TDANf@-7Ih\+p"(kP>,X+Sl'<hq.l.@/9j'It@WNs/Z/"5lL``+OU4>~>
-df0;4rVup@P5bNSq#CFLhoPfthtd<Q@%mT#TD8Hf0]1^d!-%`6!5J.*!UhH5!!#iXrrV'X+G'QD
-s0M_*TDANf@-7Ih\+p"(kP>,X+Sl'<hq.l.@/9j'It@WNs/Z/"5lL``+OU4>~>
-df0;4rVup@P5bNSq#CFLhoPfthtd<Q@%mT#TD8Hf0]1^d!-%`6!5J.*!UhH5!!#iXrrV'X+G'QD
-s0M_*TDANf@-7Ih\+p"(kP>,X+Sl'<hq.l.@/9j'It@WNs/Z/"5lL``+OU4>~>
-df0;4rVup@P5k=X!ANu_rrCsQ!!$E#s7lWq0^mfs!RD&J!!*Y?p&>']0_k\Kc]S5/hZ+dMs+13V
-rr>Ud!!'LjrrMj*q>^M^q>UF;q>^NQfDbhYq>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@P5k=X!ANu_rrCsQ!!$E#s7lWq0^mfs!RD&J!!*Y?p&>']0_k\Kc]S5/hZ+dMs+13V
-rr>Ud!!'LjrrMj*q>^M^q>UF;q>^NQfDbhYq>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@P5k=X!ANu_rrCsQ!!$E#s7lWq0^mfs!RD&J!!*Y?p&>']0_k\Kc]S5/hZ+dMs+13V
-rr>Ud!!'LjrrMj*q>^M^q>UF;q>^NQfDbhYq>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@P5k@Y!?el5^B!`_rrCsQ!!$E#s7u]r+LgII!:T[^!0?pU!=4b\rrKSWq#CCsOT,C>
-!$HjmJcE+W!Ug<k!!*Z*jo5<gq>^L\q>UF;q>^NQfDbhYq>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@P5k@Y!?el5^B!`_rrCsQ!!$E#s7u]r+LgII!:T[^!0?pU!=4b\rrKSWq#CCsOT,C>
-!$HjmJcE+W!Ug<k!!*Z*jo5<gq>^L\q>UF;q>^NQfDbhYq>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@P5k@Y!?el5^B!`_rrCsQ!!$E#s7u]r+LgII!:T[^!0?pU!=4b\rrKSWq#CCsOT,C>
-!$HjmJcE+W!Ug<k!!*Z*jo5<gq>^L\q>UF;q>^NQfDbhYq>^MFJcC<$X8`/brVup@dJn^~>
-df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>hpAY+hp](@<Qfn>I!q3$`p](=KpQ5CVhZ+dMs+13W
-rrA\f!!$-^rrBP(!!)3Yrr=2<!!(p6rrCsQIfM2!!!#:\IfSqgs+13Vrr>=`!!".hs*t~>
-df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>hpAY+hp](@<Qfn>I!q3$`p](=KpQ5CVhZ+dMs+13W
-rrA\f!!$-^rrBP(!!)3Yrr=2<!!(p6rrCsQIfM2!!!#:\IfSqgs+13Vrr>=`!!".hs*t~>
-df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>hpAY+hp](@<Qfn>I!q3$`p](=KpQ5CVhZ+dMs+13W
-rrA\f!!$-^rrBP(!!)3Yrr=2<!!(p6rrCsQIfM2!!!#:\IfSqgs+13Vrr>=`!!".hs*t~>
-df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>hpAY0^+SGd;(dL=tp&G+)hiId=hZ+dMs+13Wrr>Ud
-!!&qXrrMj*q>^M^qYpO<q>^NQhu<\kl2UhAJcC<$Zi:"jrVup@dJn^~>
-df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>hpAY0^+SGd;(dL=tp&G+)hiId=hZ+dMs+13Wrr>Ud
-!!&qXrrMj*q>^M^qYpO<q>^NQhu<\kl2UhAJcC<$Zi:"jrVup@dJn^~>
-df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>hpAY0^+SGd;(dL=tp&G+)hiId=hZ+dMs+13Wrr>Ud
-!!&qXrrMj*q>^M^qYpO<q>^NQhu<\kl2UhAJcC<$Zi:"jrVup@dJn^~>
-df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>hp&>'5&Es/q&C6C:!oEu#JcC<$[Jp6iq>^O%pZ)8R
-@/9j'5l1K\+Sl'<hr"G6^Zke!hgtfYs0M_*5lL``+OU4>~>
-df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>hp&>'5&Es/q&C6C:!oEu#JcC<$[Jp6iq>^O%pZ)8R
-@/9j'5l1K\+Sl'<hr"G6^Zke!hgtfYs0M_*5lL``+OU4>~>
-df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>hp&>'5&Es/q&C6C:!oEu#JcC<$[Jp6iq>^O%pZ)8R
-@/9j'5l1K\+Sl'<hr"G6^Zke!hgtfYs0M_*5lL``+OU4>~>
-df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>ho`"sD+R9".0].li!oEu#JcC<$[Jp5nq>^Ltir9"^
-q#CEXqu6X=q>^NQhu<\kl2UhAJcC<$Zi:"jrVup@dJn^~>
-df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>ho`"sD+R9".0].li!oEu#JcC<$[Jp5nq>^Ltir9"^
-q#CEXqu6X=q>^NQhu<\kl2UhAJcC<$Zi:"jrVup@dJn^~>
-df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>ho`"sD+R9".0].li!oEu#JcC<$[Jp5nq>^Ltir9"^
-q#CEXqu6X=q>^NQhu<\kl2UhAJcC<$Zi:"jrVup@dJn^~>
-df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>hoD\j[3:-\H=RV4K!oEu#JcC<$[Jp4lq>^Mfir9&R
-#l4N$Qi$d_+Sl'<hr"G6^Zke!hgtfYs0M_*5lL``+OU4>~>
-df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>hoD\j[3:-\H=RV4K!oEu#JcC<$[Jp4lq>^Mfir9&R
-#l4N$Qi$d_+Sl'<hr"G6^Zke!hgtfYs0M_*5lL``+OU4>~>
-df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>hoD\j[3:-\H=RV4K!oEu#JcC<$[Jp4lq>^Mfir9&R
-#l4N$Qi$d_+Sl'<hr"G6^Zke!hgtfYs0M_*5lL``+OU4>~>
-df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>hnc&Wn+RoF435:@N!oEu#JcC<$[f6?jq>^O%n)=9H
-=S`!t5l:Q]+Sl'<hr"G6^Zke!hgtfYs0M_*5lL``+OU4>~>
-df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>hnc&Wn+RoF435:@N!oEu#JcC<$[f6?jq>^O%n)=9H
-=S`!t5l:Q]+Sl'<hr"G6^Zke!hgtfYs0M_*5lL``+OU4>~>
-df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>hnc&Wn+RoF435:@N!oEu#JcC<$[f6?jq>^O%n)=9H
-=S`!t5l:Q]+Sl'<hr"G6^Zke!hgtfYs0M_*5lL``+OU4>~>
-df0;4rVup@P5j<e!8li:!:Tc6!3`*rgj]=]n,EE\;"akj#["9drrV'X+G'QDs0hq-fD9ssQf.lD
-a8(5^rrA,VIfSrprrCsAIfSqgs+13Vrr>=`!!".hs*t~>
-df0;4rVup@P5j<e!8li:!:Tc6!3`*rgj]=]n,EE\;"akj#["9drrV'X+G'QDs0hq-fD9ssQf.lD
-a8(5^rrA,VIfSrprrCsAIfSqgs+13Vrr>=`!!".hs*t~>
-df0;4rVup@P5j<e!8li:!:Tc6!3`*rgj]=]n,EE\;"akj#["9drrV'X+G'QDs0hq-fD9ssQf.lD
-a8(5^rrA,VIfSrprrCsAIfSqgs+13Vrr>=`!!".hs*t~>
-df0;4rVup@JcC<$X8`:rYCC6a5QYVKYD)uXhZ+dMs+13$s+13$s+149rr>=`!!".hs*t~>
-df0;4rVup@JcC<$X8`:rYCC6a5QYVKYD)uXhZ+dMs+13$s+13$s+149rr>=`!!".hs*t~>
-df0;4rVup@JcC<$X8`:rYCC6a5QYVKYD)uXhZ+dMs+13$s+13$s+149rr>=`!!".hs*t~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0;(rVup8J\QcNJ\S"q!iH#8J\QcNJ\QcNJ\QcNlb<ERrVup9dJn^~>
-df0;(rVup8J\QcNJ\S"q!iH#8J\QcNJ\QcNJ\QcNlb<ERrVup9dJn^~>
-df0;(rVup8J\QcNJ\S"q!iH#8J\QcNJ\QcNJ\QcNlb<ERrVup9dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$SGrS]q>^N1JcC<$JcFF'!'pM`!$K\hJ,~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$SGrS]q>^N1JcC<$JcFF'!'pM`!$K\hJ,~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$SGrS]q>^N1JcC<$JcFF'!'pM`!$K\hJ,~>
-df0;4rVup@LAqPB^V@7-T>/.eJcFR+!:Tp%"c%T2^VAZWs472OhZ+dMs+13[rrDfl^Zth!TDANf
-^OcE9s+14'rr>=`!!".hs*t~>
-df0;4rVup@LAqPB^V@7-T>/.eJcFR+!:Tp%"c%T2^VAZWs472OhZ+dMs+13[rrDfl^Zth!TDANf
-^OcE9s+14'rr>=`!!".hs*t~>
-df0;4rVup@LAqPB^V@7-T>/.eJcFR+!:Tp%"c%T2^VAZWs472OhZ+dMs+13[rrDfl^Zth!TDANf
-^OcE9s+14'rr>=`!!".hs*t~>
-df0;4rVup@MuNqS[sppcp](C%8:T7ZrrCs3^Au<IrrhegIm=kF!!<ctO5Jdn!0@&-!7-B!!oEu#
-JcC<$^&J2<BL!.)!!EiuBW'bXrrA\f!!'cbs+13$s4RDP5lL``+OU4>~>
-df0;4rVup@MuNqS[sppcp](C%8:T7ZrrCs3^Au<IrrhegIm=kF!!<ctO5Jdn!0@&-!7-B!!oEu#
-JcC<$^&J2<BL!.)!!EiuBW'bXrrA\f!!'cbs+13$s4RDP5lL``+OU4>~>
-df0;4rVup@MuNqS[sppcp](C%8:T7ZrrCs3^Au<IrrhegIm=kF!!<ctO5Jdn!0@&-!7-B!!oEu#
-JcC<$^&J2<BL!.)!!EiuBW'bXrrA\f!!'cbs+13$s4RDP5lL``+OU4>~>
-df0;4rVup@NrK1DT2=tV!D'uprr@Q(!!".:rrV)=5jeUQ5e#YN!!rK&!2"uF!oEu#JcC<$_>aW+
-T3)Bg!!4!>\+K\#TDANf^OcE9s+14'rr>=`!!".hs*t~>
-df0;4rVup@NrK1DT2=tV!D'uprr@Q(!!".:rrV)=5jeUQ5e#YN!!rK&!2"uF!oEu#JcC<$_>aW+
-T3)Bg!!4!>\+K\#TDANf^OcE9s+14'rr>=`!!".hs*t~>
-df0;4rVup@NrK1DT2=tV!D'uprr@Q(!!".:rrV)=5jeUQ5e#YN!!rK&!2"uF!oEu#JcC<$_>aW+
-T3)Bg!!4!>\+K\#TDANf^OcE9s+14'rr>=`!!".hs*t~>
-df0;4rVup@OT,?Z8Ep0U8E]RD!.Wc(!$J-<!Okni!!,XBir9#1qZ$VgL&V53!$HjmJcEUe!KRfW
-!!4!^htR-NTDANf^OcE9s+14'rr>=`!!".hs*t~>
-df0;4rVup@OT,?Z8Ep0U8E]RD!.Wc(!$J-<!Okni!!,XBir9#1qZ$VgL&V53!$HjmJcEUe!KRfW
-!!4!^htR-NTDANf^OcE9s+14'rr>=`!!".hs*t~>
-df0;4rVup@OT,?Z8Ep0U8E]RD!.Wc(!$J-<!Okni!!,XBir9#1qZ$VgL&V53!$HjmJcEUe!KRfW
-!!4!^htR-NTDANf^OcE9s+14'rr>=`!!".hs*t~>
-df0;4rVup@OoGDPk5YN"^[qI*J(t#(+K#/=5ir%I#e/jo!13Q_!2"uF!oEu#JcC<$`;]kA+QWS(
-@,Le[!2')f!5F*bJcC<$g&D%;rVup@dJn^~>
-df0;4rVup@OoGDPk5YN"^[qI*J(t#(+K#/=5ir%I#e/jo!13Q_!2"uF!oEu#JcC<$`;]kA+QWS(
-@,Le[!2')f!5F*bJcC<$g&D%;rVup@dJn^~>
-df0;4rVup@OoGDPk5YN"^[qI*J(t#(+K#/=5ir%I#e/jo!13Q_!2"uF!oEu#JcC<$`;]kA+QWS(
-@,Le[!2')f!5F*bJcC<$g&D%;rVup@dJn^~>
-df0;4rVup@OoGDHjT#:ao`"o@g].<sVZ-W=jT#;e\)dPh5l1N]T8!:HhZ+dMs+13irrM"Bi;`md
-kPP8ZTDANf^OcE9s+14'rr>=`!!".hs*t~>
-df0;4rVup@OoGDHjT#:ao`"o@g].<sVZ-W=jT#;e\)dPh5l1N]T8!:HhZ+dMs+13irrM"Bi;`md
-kPP8ZTDANf^OcE9s+14'rr>=`!!".hs*t~>
-df0;4rVup@OoGDHjT#:ao`"o@g].<sVZ-W=jT#;e\)dPh5l1N]T8!:HhZ+dMs+13irrM"Bi;`md
-kPP8ZTDANf^OcE9s+14'rr>=`!!".hs*t~>
-df0;4rVup@OoGDHjT#;ea7]H4J(t#(+K#/=+QNM'#g_Z5!2oYn!2"uF!oEu#JcC<$a8Z1d+Q!/!
-TDSWgTDANf^OcE9s+14'rr>=`!!".hs*t~>
-df0;4rVup@OoGDHjT#;ea7]H4J(t#(+K#/=+QNM'#g_Z5!2oYn!2"uF!oEu#JcC<$a8Z1d+Q!/!
-TDSWgTDANf^OcE9s+14'rr>=`!!".hs*t~>
-df0;4rVup@OoGDHjT#;ea7]H4J(t#(+K#/=+QNM'#g_Z5!2oYn!2"uF!oEu#JcC<$a8Z1d+Q!/!
-TDSWgTDANf^OcE9s+14'rr>=`!!".hs*t~>
-df0;4rVup@OoGDHp&G7-5ZhDZ#k\/u&Eice!.Wc(!$J0=!$Lt8"s?0-GX+M"o`,"HpZVVX^C^5A
-!2"uF!oEu#JcC<$aSu:]&G,r-(dL?2GX+MBo)Jc_qu6Ygq>^N1JcC<$JcFF'!'pM`!$K\hJ,~>
-df0;4rVup@OoGDHp&G7-5ZhDZ#k\/u&Eice!.Wc(!$J0=!$Lt8"s?0-GX+M"o`,"HpZVVX^C^5A
-!2"uF!oEu#JcC<$aSu:]&G,r-(dL?2GX+MBo)Jc_qu6Ygq>^N1JcC<$JcFF'!'pM`!$K\hJ,~>
-df0;4rVup@OoGDHp&G7-5ZhDZ#k\/u&Eice!.Wc(!$J0=!$Lt8"s?0-GX+M"o`,"HpZVVX^C^5A
-!2"uF!oEu#JcC<$aSu:]&G,r-(dL?2GX+MBo)Jc_qu6Ygq>^N1JcC<$JcFF'!'pM`!$K\hJ,~>
-df0;4rVup@OoGDHq>^RFE6nC\!q2a(pAb24pAY,bj$3SuqZ$U=VZ-W=q>^R>E6n@[!oJ5>pAb2C
-lMgnJE;0D5T8!:HhZ+dMs+13lrrKS7p&G.ZQfn2E"8BQD&GH/)TDSWgTDANf^OcE9s+14'rr>=`
-!!".hs*t~>
-df0;4rVup@OoGDHq>^RFE6nC\!q2a(pAb24pAY,bj$3SuqZ$U=VZ-W=q>^R>E6n@[!oJ5>pAb2C
-lMgnJE;0D5T8!:HhZ+dMs+13lrrKS7p&G.ZQfn2E"8BQD&GH/)TDSWgTDANf^OcE9s+14'rr>=`
-!!".hs*t~>
-df0;4rVup@OoGDHq>^RFE6nC\!q2a(pAb24pAY,bj$3SuqZ$U=VZ-W=q>^R>E6n@[!oJ5>pAb2C
-lMgnJE;0D5T8!:HhZ+dMs+13lrrKS7p&G.ZQfn2E"8BQD&GH/)TDSWgTDANf^OcE9s+14'rr>=`
-!!".hs*t~>
-df0;4rVup@OoGDHr;Zm1Gh;Wg!r%`eq#CF$f@^*'E;KV8+K#/=+T29A#\_QUrrAD\!!!l(rr^<V
-LHtP5!2"uF!oEu#JcC<$b5VLg#kn<"8E]UE!r&<@q#CDequ6Ygq>^N1JcC<$JcFF'!'pM`!$K\h
-J,~>
-df0;4rVup@OoGDHr;Zm1Gh;Wg!r%`eq#CF$f@^*'E;KV8+K#/=+T29A#\_QUrrAD\!!!l(rr^<V
-LHtP5!2"uF!oEu#JcC<$b5VLg#kn<"8E]UE!r&<@q#CDequ6Ygq>^N1JcC<$JcFF'!'pM`!$K\h
-J,~>
-df0;4rVup@OoGDHr;Zm1Gh;Wg!r%`eq#CF$f@^*'E;KV8+K#/=+T29A#\_QUrrAD\!!!l(rr^<V
-LHtP5!2"uF!oEu#JcC<$b5VLg#kn<"8E]UE!r&<@q#CDequ6Ygq>^N1JcC<$JcFF'!'pM`!$K\h
-J,~>
-df0;4rVup@OoGSM!!!R[n+$DYcNs=H!+=L[!Tsac!!".=rrjMF!!mQ,nG`KTp](<'oD\g*mf3?[
-L&V53!$HjmJcEpn!V\#;!!*qGmf*=.8G`AeTDSWgTDANf^OcE9s+14'rr>=`!!".hs*t~>
-df0;4rVup@OoGSM!!!R[n+$DYcNs=H!+=L[!Tsac!!".=rrjMF!!mQ,nG`KTp](<'oD\g*mf3?[
-L&V53!$HjmJcEpn!V\#;!!*qGmf*=.8G`AeTDSWgTDANf^OcE9s+14'rr>=`!!".hs*t~>
-df0;4rVup@OoGSM!!!R[n+$DYcNs=H!+=L[!Tsac!!".=rrjMF!!mQ,nG`KTp](<'oD\g*mf3?[
-L&V53!$HjmJcEpn!V\#;!!*qGmf*=.8G`AeTDSWgTDANf^OcE9s+14'rr>=`!!".hs*t~>
-df0;4rVup@OoGMK!+>9`rr@iM!!".prr@$7!!$u8rrXAD=Qf)O!-%`6!+>Eu!5It&!2"uF!oEu#
-JcC<$bPqQUp](=cpZqh[V\o@4!2'/g!2')f!5F*bJcC<$g&D%;rVup@dJn^~>
-df0;4rVup@OoGMK!+>9`rr@iM!!".prr@$7!!$u8rrXAD=Qf)O!-%`6!+>Eu!5It&!2"uF!oEu#
-JcC<$bPqQUp](=cpZqh[V\o@4!2'/g!2')f!5F*bJcC<$g&D%;rVup@dJn^~>
-df0;4rVup@OoGMK!+>9`rr@iM!!".prr@$7!!$u8rrXAD=Qf)O!-%`6!+>Eu!5It&!2"uF!oEu#
-JcC<$bPqQUp](=cpZqh[V\o@4!2'/g!2')f!5F*bJcC<$g&D%;rVup@dJn^~>
-df0;4rVup@OoGH$\*O%o3;EOShqS/3k6Uqb!=7kcrrHN:lMgi$q>^L\oD\g*mf3?[L&V53!$Hjm
-JcEso!3c.t!D)tLrrM:JrVuqjqu6Ygq>^N1JcC<$JcFF'!'pM`!$K\hJ,~>
-df0;4rVup@OoGH$\*O%o3;EOShqS/3k6Uqb!=7kcrrHN:lMgi$q>^L\oD\g*mf3?[L&V53!$Hjm
-JcEso!3c.t!D)tLrrM:JrVuqjqu6Ygq>^N1JcC<$JcFF'!'pM`!$K\hJ,~>
-df0;4rVup@OoGH$\*O%o3;EOShqS/3k6Uqb!=7kcrrHN:lMgi$q>^L\oD\g*mf3?[L&V53!$Hjm
-JcEso!3c.t!D)tLrrM:JrVuqjqu6Ygq>^N1JcC<$JcFF'!'pM`!$K\hJ,~>
-df0;4rVup@JcGQG!4Vb(!0>n7!-%c7!-!ns!-n>?!$Ln5!5It&!2"uF!oEu#JcC<$c2Rh-)#4.4
-8GD9H")n5?TDSWgTDANf^OcE9s+14'rr>=`!!".hs*t~>
-df0;4rVup@JcGQG!4Vb(!0>n7!-%c7!-!ns!-n>?!$Ln5!5It&!2"uF!oEu#JcC<$c2Rh-)#4.4
-8GD9H")n5?TDSWgTDANf^OcE9s+14'rr>=`!!".hs*t~>
-df0;4rVup@JcGQG!4Vb(!0>n7!-%c7!-!ns!-n>?!$Ln5!5It&!2"uF!oEu#JcC<$c2Rh-)#4.4
-8GD9H")n5?TDSWgTDANf^OcE9s+14'rr>=`!!".hs*t~>
-df0;4rVup@JcGQG!9a.X!.Wf(!Tsac!!*AgN;imMq>^L,oD\g*mf3?[L&V53!$HjmJcF!p!/L@M
-!>tRlrrSMmTDSWgTDANf^OcE9s+14'rr>=`!!".hs*t~>
-df0;4rVup@JcGQG!9a.X!.Wf(!Tsac!!*AgN;imMq>^L,oD\g*mf3?[L&V53!$HjmJcF!p!/L@M
-!>tRlrrSMmTDSWgTDANf^OcE9s+14'rr>=`!!".hs*t~>
-df0;4rVup@JcGQG!9a.X!.Wf(!Tsac!!*AgN;imMq>^L,oD\g*mf3?[L&V53!$HjmJcF!p!/L@M
-!>tRlrrSMmTDSWgTDANf^OcE9s+14'rr>=`!!".hs*t~>
-df0;4rVup@JcGNF!"eu,!+=U^!*K't!-!kr!5J=0oD\gJpO<0>q>^MfL&V53!$HjmJcF$q!V[H,
-!!'LfrrKm\qu6Ygq>^N1l2Lh*^[KkU!r'IUhu<cP^X%K2JcE[g!'pM`!$K\hJ,~>
-df0;4rVup@JcGNF!"eu,!+=U^!*K't!-!kr!5J=0oD\gJpO<0>q>^MfL&V53!$HjmJcF$q!V[H,
-!!'LfrrKm\qu6Ygq>^N1l2Lh*^[KkU!r'IUhu<cP^X%K2JcE[g!'pM`!$K\hJ,~>
-df0;4rVup@JcGNF!"eu,!+=U^!*K't!-!kr!5J=0oD\gJpO<0>q>^MfL&V53!$HjmJcF$q!V[H,
-!!'LfrrKm\qu6Ygq>^N1l2Lh*^[KkU!r'IUhu<cP^X%K2JcE[g!'pM`!$K\hJ,~>
-df0;4rVup@JcGNF!(cqd!)VMO!71KA!=7kHrrBh1!!"/*rrA\f!!&XFrrV'X+G'QDs3CWEQh^U]
-=P<]STDANf^[hC/a-V9`5X5nV!!>J_J'[9W"6Z:q3;NUX#XE?qcg:Z6kFZ]Qq>^X(5]E(9JcC<$
-bPqQ-rVup@dJn^~>
-df0;4rVup@JcGNF!(cqd!)VMO!71KA!=7kHrrBh1!!"/*rrA\f!!&XFrrV'X+G'QDs3CWEQh^U]
-=P<]STDANf^[hC/a-V9`5X5nV!!>J_J'[9W"6Z:q3;NUX#XE?qcg:Z6kFZ]Qq>^X(5]E(9JcC<$
-bPqQ-rVup@dJn^~>
-df0;4rVup@JcGNF!(cqd!)VMO!71KA!=7kHrrBh1!!"/*rrA\f!!&XFrrV'X+G'QDs3CWEQh^U]
-=P<]STDANf^[hC/a-V9`5X5nV!!>J_J'[9W"6Z:q3;NUX#XE?qcg:Z6kFZ]Qq>^X(5]E(9JcC<$
-bPqQ-rVup@dJn^~>
-df0;4rVup@JcGNF!+>X'!'oB?!)WLl!-!hq!3c5!!&3X:!2')f!2"uF!oEu#JcC<$cMmkuq>^O%
-kLok8TDANf^\7[/[s0n"!!49fn*BuS[oi/#!Z5USnc&X!=Rc@m(hg+(s+13qrr>=`!!".hs*t~>
-df0;4rVup@JcGNF!+>X'!'oB?!)WLl!-!hq!3c5!!&3X:!2')f!2"uF!oEu#JcC<$cMmkuq>^O%
-kLok8TDANf^\7[/[s0n"!!49fn*BuS[oi/#!Z5USnc&X!=Rc@m(hg+(s+13qrr>=`!!".hs*t~>
-df0;4rVup@JcGNF!+>X'!'oB?!)WLl!-!hq!3c5!!&3X:!2')f!2"uF!oEu#JcC<$cMmkuq>^O%
-kLok8TDANf^\7[/[s0n"!!49fn*BuS[oi/#!Z5USnc&X!=Rc@m(hg+(s+13qrr>=`!!".hs*t~>
-df0;4rVup@JcGNF!)WLl!+=[`!71KA!>t9_rr@iN!!%!%rrA\f!!&XFrrV'X+G'QDs3L]FYPA.u
-=P3WRTDANf^\7]k!!*q/mf*=N8F-<X(k:`BrrM:Rli7)(J*2C_JcF-t!'pM`!$K\hJ,~>
-df0;4rVup@JcGNF!)WLl!+=[`!71KA!>t9_rr@iN!!%!%rrA\f!!&XFrrV'X+G'QDs3L]FYPA.u
-=P3WRTDANf^\7]k!!*q/mf*=N8F-<X(k:`BrrM:Rli7)(J*2C_JcF-t!'pM`!$K\hJ,~>
-df0;4rVup@JcGNF!)WLl!+=[`!71KA!>t9_rr@iN!!%!%rrA\f!!&XFrrV'X+G'QDs3L]FYPA.u
-=P3WRTDANf^\7]k!!*q/mf*=N8F-<X(k:`BrrM:Rli7)(J*2C_JcF-t!'pM`!$K\hJ,~>
-df0;4rVup@JcGNF!&46L!,16h!)WLl!0<!:!''fT!5Iat!2')f!2"uF!oEu#JcC<$ci3uYq#CE0
-f`(rDq>^N1pAa7T!D)tTrrK#/kl:]Kp\t8l&Es/p5_8rds3^iH5lL``+OU4>~>
-df0;4rVup@JcGNF!&46L!,16h!)WLl!0<!:!''fT!5Iat!2')f!2"uF!oEu#JcC<$ci3uYq#CE0
-f`(rDq>^N1pAa7T!D)tTrrK#/kl:]Kp\t8l&Es/p5_8rds3^iH5lL``+OU4>~>
-df0;4rVup@JcGNF!&46L!,16h!)WLl!0<!:!''fT!5Iat!2')f!2"uF!oEu#JcC<$ci3uYq#CE0
-f`(rDq>^N1pAa7T!D)tTrrK#/kl:]Kp\t8l&Es/p5_8rds3^iH5lL``+OU4>~>
-df0;4rVup@JcGNF!"eu,!/KJ3!71KA!>tQgrrCCA!!"_9rrA\f!!&XFrrV'X+G'QDs3L]F0_tbL
-.+eJ!TDANf^\7]h!!,XboD\f_k5YKIq#:>dk5YKIJcC<$dJj23rVup@dJn^~>
-df0;4rVup@JcGNF!"eu,!/KJ3!71KA!>tQgrrCCA!!"_9rrA\f!!&XFrrV'X+G'QDs3L]F0_tbL
-.+eJ!TDANf^\7]h!!,XboD\f_k5YKIq#:>dk5YKIJcC<$dJj23rVup@dJn^~>
-df0;4rVup@JcGNF!"eu,!/KJ3!71KA!>tQgrrCCA!!"_9rrA\f!!&XFrrV'X+G'QDs3L]F0_tbL
-.+eJ!TDANf^\7]h!!,XboD\f_k5YKIq#:>dk5YKIJcC<$dJj23rVup@dJn^~>
-df0;4rVup@JcGQG!:T^`!3b;[!'pA\!0<!:!''fT!0?=C!2')f!2"uF!oEu#JcC<$d/O+7q#CDM
-fDbiCq>^N1pAa1R!)W=f!2nrZ!'pA[!2nrZ!'l,8JcF-t!'pM`!$K\hJ,~>
-df0;4rVup@JcGQG!:T^`!3b;[!'pA\!0<!:!''fT!0?=C!2')f!2"uF!oEu#JcC<$d/O+7q#CDM
-fDbiCq>^N1pAa1R!)W=f!2nrZ!'pA[!2nrZ!'l,8JcF-t!'pM`!$K\hJ,~>
-df0;4rVup@JcGQG!:T^`!3b;[!'pA\!0<!:!''fT!0?=C!2')f!2"uF!oEu#JcC<$d/O+7q#CDM
-fDbiCq>^N1pAa1R!)W=f!2nrZ!'pA[!2nrZ!'l,8JcF-t!'pM`!$K\hJ,~>
-df0;4rVup@JcGQG!5J=0!9`;?!3c5!!>tQgrr?I'!!#:HrrA\f!!&XFrrV'X+G'QDs3UcG^\Ij0
-^XrJcTDANf^\7^%!!k8DBRbM>5X5nS!!'4rrrM:"p](U;G^l@#^P@;H)#4.35l1K]k8<so#oIo:
-T>/-rIpa,h!!#98s+13trr>=`!!".hs*t~>
-df0;4rVup@JcGQG!5J=0!9`;?!3c5!!>tQgrr?I'!!#:HrrA\f!!&XFrrV'X+G'QDs3UcG^\Ij0
-^XrJcTDANf^\7^%!!k8DBRbM>5X5nS!!'4rrrM:"p](U;G^l@#^P@;H)#4.35l1K]k8<so#oIo:
-T>/-rIpa,h!!#98s+13trr>=`!!".hs*t~>
-df0;4rVup@JcGQG!5J=0!9`;?!3c5!!>tQgrr?I'!!#:HrrA\f!!&XFrrV'X+G'QDs3UcG^\Ij0
-^XrJcTDANf^\7^%!!k8DBRbM>5X5nS!!'4rrrM:"p](U;G^l@#^P@;H)#4.35l1K]k8<so#oIo:
-T>/-rIpa,h!!#98s+13trr>=`!!".hs*t~>
-df0;4rVup@JcGQG!*K't!$L2!!&46L!0<'<!U!S]!!*r"k5PFRq>^MfL&V53!$HjmJcF*s!.XeE
-!;G+F!2')f!5J7-qu?g9@&M?FrrTB3#l+H#0_YMHB__W/5c=AV!mcoMqu?^^qYpP/q#CF\Vt^2m
-c]94H!!#98s+13trr>=`!!".hs*t~>
-df0;4rVup@JcGQG!*K't!$L2!!&46L!0<'<!U!S]!!*r"k5PFRq>^MfL&V53!$HjmJcF*s!.XeE
-!;G+F!2')f!5J7-qu?g9@&M?FrrTB3#l+H#0_YMHB__W/5c=AV!mcoMqu?^^qYpP/q#CF\Vt^2m
-c]94H!!#98s+13trr>=`!!".hs*t~>
-df0;4rVup@JcGQG!*K't!$L2!!&46L!0<'<!U!S]!!*r"k5PFRq>^MfL&V53!$HjmJcF*s!.XeE
-!;G+F!2')f!5J7-qu?g9@&M?FrrTB3#l+H#0_YMHB__W/5c=AV!mcoMqu?^^qYpP/q#CF\Vt^2m
-c]94H!!#98s+13trr>=`!!".hs*t~>
-df0;4rVup@JcGTH!Tsab!!$urrrB8!!!*r2NW0(CE!Z:?!?g"UrrA\f!!&XFrrV'X+G'QDs3UcG
-;#1.l0\67(TDANf^\7^-!!49fcgh#9mnif[!5J=/!9a.X!+>Bt!O"cf!!#:]rrD6X!!$EtrrK;g
-rVup`JcC<$dJj23rVup@dJn^~>
-df0;4rVup@JcGTH!Tsab!!$urrrB8!!!*r2NW0(CE!Z:?!?g"UrrA\f!!&XFrrV'X+G'QDs3UcG
-;#1.l0\67(TDANf^\7^-!!49fcgh#9mnif[!5J=/!9a.X!+>Bt!O"cf!!#:]rrD6X!!$EtrrK;g
-rVup`JcC<$dJj23rVup@dJn^~>
-df0;4rVup@JcGTH!Tsab!!$urrrB8!!!*r2NW0(CE!Z:?!?g"UrrA\f!!&XFrrV'X+G'QDs3UcG
-;#1.l0\67(TDANf^\7^-!!49fcgh#9mnif[!5J=/!9a.X!+>Bt!O"cf!!#:]rrD6X!!$EtrrK;g
-rVup`JcC<$dJj23rVup@dJn^~>
-df0;4rVup@JcGTH!0?pU!8$0/!&46L!0<6As1\VbBF+D6!C6,7rrA\f!!&XFrrV'X+G'QDs3UcG
-+Sl'<B\*1`TDANf^\7[.J%t@M!'pA\!-%`5!13N^!+>9q"1K*I5l:Q]Qhg[^@.4*t[ho*1JcC<$
-dJj23rVup@dJn^~>
-df0;4rVup@JcGTH!0?pU!8$0/!&46L!0<6As1\VbBF+D6!C6,7rrA\f!!&XFrrV'X+G'QDs3UcG
-+Sl'<B\*1`TDANf^\7[.J%t@M!'pA\!-%`5!13N^!+>9q"1K*I5l:Q]Qhg[^@.4*t[ho*1JcC<$
-dJj23rVup@dJn^~>
-df0;4rVup@JcGTH!0?pU!8$0/!&46L!0<6As1\VbBF+D6!C6,7rrA\f!!&XFrrV'X+G'QDs3UcG
-+Sl'<B\*1`TDANf^\7[.J%t@M!'pA\!-%`5!13N^!+>9q"1K*I5l:Q]Qhg[^@.4*t[ho*1JcC<$
-dJj23rVup@dJn^~>
-df0;4rVup@JcGTH!%@[D!(c&J!3c5!!>tQrrrBh(!!-L%j8T+Oq>^MfL&V53!$HjmJcF*s!#YP4
-!12::!2')f!5IFk!Tsac!!"GBrr>=\!!(X=rrVXs5l:Q]5l(H\fC&Y?mpJD3s+13trr>=`!!".h
-s*t~>
-df0;4rVup@JcGTH!%@[D!(c&J!3c5!!>tQrrrBh(!!-L%j8T+Oq>^MfL&V53!$HjmJcF*s!#YP4
-!12::!2')f!5IFk!Tsac!!"GBrr>=\!!(X=rrVXs5l:Q]5l(H\fC&Y?mpJD3s+13trr>=`!!".h
-s*t~>
-df0;4rVup@JcGTH!%@[D!(c&J!3c5!!>tQrrrBh(!!-L%j8T+Oq>^MfL&V53!$HjmJcF*s!#YP4
-!12::!2')f!5IFk!Tsac!!"GBrr>=\!!(X=rrVXs5l:Q]5l(H\fC&Y?mpJD3s+13trr>=`!!".h
-s*t~>
-df0;4rVup@JcGWI!2'&e!3bA]!V\;E!!&(ErrBh+!!3^FfAZ`0TDANfT8!:HhZ+dMs+13ss7lWp
-YL`^RTDANf^Y\tj8GW;dkP>,X)#F:5&F9>rhu!ER)#F:5&F9>rhgtfYs3^iH5lL``+OU4>~>
-df0;4rVup@JcGWI!2'&e!3bA]!V\;E!!&(ErrBh+!!3^FfAZ`0TDANfT8!:HhZ+dMs+13ss7lWp
-YL`^RTDANf^Y\tj8GW;dkP>,X)#F:5&F9>rhu!ER)#F:5&F9>rhgtfYs3^iH5lL``+OU4>~>
-df0;4rVup@JcGWI!2'&e!3bA]!V\;E!!&(ErrBh+!!3^FfAZ`0TDANfT8!:HhZ+dMs+13ss7lWp
-YL`^RTDANf^Y\tj8GW;dkP>,X)#F:5&F9>rhu!ER)#F:5&F9>rhgtfYs3^iH5lL``+OU4>~>
-df0;4rVup@JcGZJ!Tt<r!!*r2iVrn=q>^O5pQY[X^\.X/&>/^SrrA\f!!&XFrrV'X+G'QDs3^iH
-n+cq`^XiDbTDANf^Y\tjQhg[^fD5IC!!#RNs7u]q8:gels18415lL``+OU4>~>
-df0;4rVup@JcGZJ!Tt<r!!*r2iVrn=q>^O5pQY[X^\.X/&>/^SrrA\f!!&XFrrV'X+G'QDs3^iH
-n+cq`^XiDbTDANf^Y\tjQhg[^fD5IC!!#RNs7u]q8:gels18415lL``+OU4>~>
-df0;4rVup@JcGZJ!Tt<r!!*r2iVrn=q>^O5pQY[X^\.X/&>/^SrrA\f!!&XFrrV'X+G'QDs3^iH
-n+cq`^XiDbTDANf^Y\tjQhg[^fD5IC!!#RNs7u]q8:gels18415lL``+OU4>~>
-df0;4rVup@JcGZJ!+>U&!0?+=!V[H-!!&(DrrBh-!!<L7YP6uT!2')f!2"uF!oEu#JcC<$dJj4(
-q#CEHf)G`Bq>^N1hZ!Sbq>^N1qYpQQq>^LLjo5><q>^LLJcC<$])MaqrVup@dJn^~>
-df0;4rVup@JcGZJ!+>U&!0?+=!V[H-!!&(DrrBh-!!<L7YP6uT!2')f!2"uF!oEu#JcC<$dJj4(
-q#CEHf)G`Bq>^N1hZ!Sbq>^N1qYpQQq>^LLjo5><q>^LLJcC<$])MaqrVup@dJn^~>
-df0;4rVup@JcGZJ!+>U&!0?+=!V[H-!!&(DrrBh-!!<L7YP6uT!2')f!2"uF!oEu#JcC<$dJj4(
-q#CEHf)G`Bq>^N1hZ!Sbq>^N1qYpQQq>^LLjo5><q>^LLJcC<$])MaqrVup@dJn^~>
-df0;4rVup@JcG]K!2'&e!'oKB!0?sV!>tQprrBh*!!3F&^Z,7nTDANfT8!:HhZ+dMs+13trrC+8
-!!(p-rrA\f!!'djrrBh1!!'4urr<?%!!!;crr<?%!!!:Us+13]rr>=`!!".hs*t~>
-df0;4rVup@JcG]K!2'&e!'oKB!0?sV!>tQprrBh*!!3F&^Z,7nTDANfT8!:HhZ+dMs+13trrC+8
-!!(p-rrA\f!!'djrrBh1!!'4urr<?%!!!;crr<?%!!!:Us+13]rr>=`!!".hs*t~>
-df0;4rVup@JcG]K!2'&e!'oKB!0?sV!>tQprrBh*!!3F&^Z,7nTDANfT8!:HhZ+dMs+13trrC+8
-!!(p-rrA\f!!'djrrBh1!!'4urr<?%!!!;crr<?%!!!:Us+13]rr>=`!!".hs*t~>
-df0;4rVup@JcG`L!T+1Z!!*YgiVrrQ)#=44O-9MC^[M4(5i:Z&!2')f!2"uF!oEu#JcC<$dJj3]
-q#CEhf)G`Bq>^N1hZ!Sjq>^Mfq>UFCq>^Mfjo5</q>^MfJcC<$]DhjrrVup@dJn^~>
-df0;4rVup@JcG`L!T+1Z!!*YgiVrrQ)#=44O-9MC^[M4(5i:Z&!2')f!2"uF!oEu#JcC<$dJj3]
-q#CEhf)G`Bq>^N1hZ!Sjq>^Mfq>UFCq>^Mfjo5</q>^MfJcC<$]DhjrrVup@dJn^~>
-df0;4rVup@JcG`L!T+1Z!!*YgiVrrQ)#=44O-9MC^[M4(5i:Z&!2')f!2"uF!oEu#JcC<$dJj3]
-q#CEhf)G`Bq>^N1hZ!Sjq>^Mfq>UFCq>^Mfjo5</q>^MfJcC<$]DhjrrVup@dJn^~>
-df0;4rVup@JcGcM!V\;D!!&YLrrA,V!!+5:f)G^mlN#H7!71U/o)Je&^ZGIqTDANfT8!:HhZ+dM
-s+13trrBh0!7h)LTDANf^Z>D!f>#(mIt(l&!!&Yerr>ml!!*Ygk5PEXq>^O-hgtfYs1J@35lL``
-+OU4>~>
-df0;4rVup@JcGcM!V\;D!!&YLrrA,V!!+5:f)G^mlN#H7!71U/o)Je&^ZGIqTDANfT8!:HhZ+dM
-s+13trrBh0!7h)LTDANf^Z>D!f>#(mIt(l&!!&Yerr>ml!!*Ygk5PEXq>^O-hgtfYs1J@35lL``
-+OU4>~>
-df0;4rVup@JcGcM!V\;D!!&YLrrA,V!!+5:f)G^mlN#H7!71U/o)Je&^ZGIqTDANfT8!:HhZ+dM
-s+13trrBh0!7h)LTDANf^Z>D!f>#(mIt(l&!!&Yerr>ml!!*Ygk5PEXq>^O-hgtfYs1J@35lL``
-+OU4>~>
-df0;4rVup@JcGcM!)WIk!)VVR!V[H-!!'4Qrr=2-!6tNGpV3Usp](=#\*!\jTDANfT8!:HhZ+dM
-s+13trrC+8!!(p-rrA\f!!'e"rrg*'BL"iQ!!&Yerr@QE!!*XtkPkO3q#CF,Q\#0fs1SF45lL``
-+OU4>~>
-df0;4rVup@JcGcM!)WIk!)VVR!V[H-!!'4Qrr=2-!6tNGpV3Usp](=#\*!\jTDANfT8!:HhZ+dM
-s+13trrC+8!!(p-rrA\f!!'e"rrg*'BL"iQ!!&Yerr@QE!!*XtkPkO3q#CF,Q\#0fs1SF45lL``
-+OU4>~>
-df0;4rVup@JcGcM!)WIk!)VVR!V[H-!!'4Qrr=2-!6tNGpV3Usp](=#\*!\jTDANfT8!:HhZ+dM
-s+13trrC+8!!(p-rrA\f!!'e"rrg*'BL"iQ!!&Yerr@QE!!*XtkPkO3q#CF,Q\#0fs1SF45lL``
-+OU4>~>
-df0;4rVup@Jc>cNL\UoN+Qq\_!-%c7!&2q&!$LS-ao;FoBFt"?!=6a/rrA\f!!&XFrrV'X+G'QD
-s3^iHht[6Phq%f-TDANf^[M1(^M#=e!!&YerrM9gp](@DLYqCs!Tsa`!!4R(hgtfYs1nX75lL``
-+OU4>~>
-df0;4rVup@Jc>cNL\UoN+Qq\_!-%c7!&2q&!$LS-ao;FoBFt"?!=6a/rrA\f!!&XFrrV'X+G'QD
-s3^iHht[6Phq%f-TDANf^[M1(^M#=e!!&YerrM9gp](@DLYqCs!Tsa`!!4R(hgtfYs1nX75lL``
-+OU4>~>
-df0;4rVup@Jc>cNL\UoN+Qq\_!-%c7!&2q&!$LS-ao;FoBFt"?!=6a/rrA\f!!&XFrrV'X+G'QD
-s3^iHht[6Phq%f-TDANf^[M1(^M#=e!!&YerrM9gp](@DLYqCs!Tsa`!!4R(hgtfYs1nX75lL``
-+OU4>~>
-df0;4rVup@Jc>_Rq#CF,cf"g(k6Una!3aoP!$LS-a8Z1t+Sl'=)#*7o!2')f!2"uF!oEu#JcC<$
-dJj40q#CE0f)G`Bq>^N1o)AdCE#@d=!2'&d!-%T2"#t7tkO&9LE:j253,keYJcC<$`;]g&rVup@
-dJn^~>
-df0;4rVup@Jc>_Rq#CF,cf"g(k6Una!3aoP!$LS-a8Z1t+Sl'=)#*7o!2')f!2"uF!oEu#JcC<$
-dJj40q#CE0f)G`Bq>^N1o)AdCE#@d=!2'&d!-%T2"#t7tkO&9LE:j253,keYJcC<$`;]g&rVup@
-dJn^~>
-df0;4rVup@Jc>_Rq#CF,cf"g(k6Una!3aoP!$LS-a8Z1t+Sl'=)#*7o!2')f!2"uF!oEu#JcC<$
-dJj40q#CE0f)G`Bq>^N1o)AdCE#@d=!2'&d!-%T2"#t7tkO&9LE:j253,keYJcC<$`;]g&rVup@
-dJn^~>
-df0;4rVup@K)Ykl#l4N%#e/^k!-%c7!&2n%!$LS-`r?(s#l4N$O6HTDTDANfT8!:HhZ+dMs+13s
-s7lWp\(:QZTDANf^\%O,ms*po!2'&d!TsaZ!!=?GO2pej!TsaZ!!=?GO2lhOJcEgk!'pM`!$K\h
-J,~>
-df0;4rVup@K)Ykl#l4N%#e/^k!-%c7!&2n%!$LS-`r?(s#l4N$O6HTDTDANfT8!:HhZ+dMs+13s
-s7lWp\(:QZTDANf^\%O,ms*po!2'&d!TsaZ!!=?GO2pej!TsaZ!!=?GO2lhOJcEgk!'pM`!$K\h
-J,~>
-df0;4rVup@K)Ykl#l4N%#e/^k!-%c7!&2n%!$LS-`r?(s#l4N$O6HTDTDANfT8!:HhZ+dMs+13s
-s7lWp\(:QZTDANf^\%O,ms*po!2'&d!TsaZ!!=?GO2pej!TsaZ!!=?GO2lhOJcEgk!'pM`!$K\h
-J,~>
-df0;4rVup@KDtu0)#4.3TATYLk6Una!3alO!$LS-`W#pnq>^O5pZ_\XTDANfT8!:HhZ+dMs+13s
-rr<W,!!&YBrrA\f!!'e,rrK;?j8]1Pp\t5cmJm;"B[?;M!2&ZZ!YB%kJcC<$bPqQ-rVup@dJn^~>
-df0;4rVup@KDtu0)#4.3TATYLk6Una!3alO!$LS-`W#pnq>^O5pZ_\XTDANfT8!:HhZ+dMs+13s
-rr<W,!!&YBrrA\f!!'e,rrK;?j8]1Pp\t5cmJm;"B[?;M!2&ZZ!YB%kJcC<$bPqQ-rVup@dJn^~>
-df0;4rVup@KDtu0)#4.3TATYLk6Una!3alO!$LS-`W#pnq>^O5pZ_\XTDANfT8!:HhZ+dMs+13s
-rr<W,!!&YBrrA\f!!'e,rrK;?j8]1Pp\t5cmJm;"B[?;M!2&ZZ!YB%kJcC<$bPqQ-rVup@dJn^~>
-df0;4rVup@K`;)A./<iCJ):2*E;BP70[ft$+R9$HrrMj*q>^N1l2LaUq>^MfL&V53!$HjmJcF*s
-!$M+<!-m)p!2')f!5J7-!.XD:"<]rpIpi*Q!2&ub!Nudr!!+L'o`"rq#jhTm.#3BRJcF!p!'pM`
-!$K\hJ,~>
-df0;4rVup@K`;)A./<iCJ):2*E;BP70[ft$+R9$HrrMj*q>^N1l2LaUq>^MfL&V53!$HjmJcF*s
-!$M+<!-m)p!2')f!5J7-!.XD:"<]rpIpi*Q!2&ub!Nudr!!+L'o`"rq#jhTm.#3BRJcF!p!'pM`
-!$K\hJ,~>
-df0;4rVup@K`;)A./<iCJ):2*E;BP70[ft$+R9$HrrMj*q>^N1l2LaUq>^MfL&V53!$HjmJcF*s
-!$M+<!-m)p!2')f!5J7-!.XD:"<]rpIpi*Q!2&ub!Nudr!!+L'o`"rq#jhTm.#3BRJcF!p!'pM`
-!$K\hJ,~>
-df0;4rVup@L&V2J5ktB[@,Cnak6Una!3aiN!0?Gq`;]g>q>^M7l2LaUq>^MfL&V53!$HjmJcF*s
-!'pA\!'o-8!2')f!5J:.!2&l`"?:XU^W66O!5J@1!2&ra!P]34!!,@Rp&>'-&F9At5js:(JcF'r
-!'pM`!$K\hJ,~>
-df0;4rVup@L&V2J5ktB[@,Cnak6Una!3aiN!0?Gq`;]g>q>^M7l2LaUq>^MfL&V53!$HjmJcF*s
-!'pA\!'o-8!2')f!5J:.!2&l`"?:XU^W66O!5J@1!2&ra!P]34!!,@Rp&>'-&F9At5js:(JcF'r
-!'pM`!$K\hJ,~>
-df0;4rVup@L&V2J5ktB[@,Cnak6Una!3aiN!0?Gq`;]g>q>^M7l2LaUq>^MfL&V53!$HjmJcF*s
-!'pA\!'o-8!2')f!5J:.!2&l`"?:XU^W66O!5J@1!2&ra!P]34!!,@Rp&>'-&F9At5js:(JcF'r
-!'pM`!$K\hJ,~>
-df0;4rVup@LAq;K8GN5c@,:h_=S`!t0S09&rrA\f!!"_;rrA\f!!&XFrrV'X+G'QDs3UcGGkqC@
-#kusN!2')f!5J=/!Oi@0!!3F6^\.U,^\Rp1TCi-bmuJUY!!+4gp&>*^O!*fi!?f^>s+13srr>=`
-!!".hs*t~>
-df0;4rVup@LAq;K8GN5c@,:h_=S`!t0S09&rrA\f!!"_;rrA\f!!&XFrrV'X+G'QDs3UcGGkqC@
-#kusN!2')f!5J=/!Oi@0!!3F6^\.U,^\Rp1TCi-bmuJUY!!+4gp&>*^O!*fi!?f^>s+13srr>=`
-!!".hs*t~>
-df0;4rVup@LAq;K8GN5c@,:h_=S`!t0S09&rrA\f!!"_;rrA\f!!&XFrrV'X+G'QDs3UcGGkqC@
-#kusN!2')f!5J=/!Oi@0!!3F6^\.U,^\Rp1TCi-bmuJUY!!+4gp&>*^O!*fi!?f^>s+13srr>=`
-!!".hs*t~>
-df0;4rVup@L]7DL8GN5d8GD!@!71H@!3^tRrVll4q>^L$l2LaUq>^MfL&V53!$HjmJcF*s!3c1u
-!709s!2')f!5J=/!#YM3!XO;EoD\g*q>^Mfnc&Wn5jeUQ#j:gZ!O"cV!!*AgJcC<$dJj23rVup@
-dJn^~>
-df0;4rVup@L]7DL8GN5d8GD!@!71H@!3^tRrVll4q>^L$l2LaUq>^MfL&V53!$HjmJcF*s!3c1u
-!709s!2')f!5J=/!#YM3!XO;EoD\g*q>^Mfnc&Wn5jeUQ#j:gZ!O"cV!!*AgJcC<$dJj23rVup@
-dJn^~>
-df0;4rVup@L]7DL8GN5d8GD!@!71H@!3^tRrVll4q>^L$l2LaUq>^MfL&V53!$HjmJcF*s!3c1u
-!709s!2')f!5J=/!#YM3!XO;EoD\g*q>^Mfnc&Wn5jeUQ#j:gZ!O"cV!!*AgJcC<$dJj23rVup@
-dJn^~>
-df0;4rVup@L]7?Fq#CFdpYGiL;#1.l0S09%rrC[H!!)cYrrA\f!!&XFrrV'X+G'QDs3UcGn+cq`
-O4XC3TDANf^\Rm0YPA/!+NO$P!5J@1!2&`["S]Z\5R?o\!)W4c"S]Z\5R?o\!)S7HJcF-t!'pM`
-!$K\hJ,~>
-df0;4rVup@L]7?Fq#CFdpYGiL;#1.l0S09%rrC[H!!)cYrrA\f!!&XFrrV'X+G'QDs3UcGn+cq`
-O4XC3TDANf^\Rm0YPA/!+NO$P!5J@1!2&`["S]Z\5R?o\!)W4c"S]Z\5R?o\!)S7HJcF-t!'pM`
-!$K\hJ,~>
-df0;4rVup@L]7?Fq#CFdpYGiL;#1.l0S09%rrC[H!!)cYrrA\f!!&XFrrV'X+G'QDs3UcGn+cq`
-O4XC3TDANf^\Rm0YPA/!+NO$P!5J@1!2&`["S]Z\5R?o\!)W4c"S]Z\5R?o\!)S7HJcF-t!'pM`
-!$K\hJ,~>
-df0;4rVup@M#RH_q#CFdpYGiLchRP@YCZ`OrrCsP!!(pArrA\f!!&XFrrV'X+G'QDs3L]F./EoD
-0\?=)TDANf^\Rm0;#1.m)!CDg!5J@1!2&QV"36I)&G6#'cgC`7a,a=6o`,!<JcC<$df0;4rVup@
-dJn^~>
-df0;4rVup@M#RH_q#CFdpYGiLchRP@YCZ`OrrCsP!!(pArrA\f!!&XFrrV'X+G'QDs3L]F./EoD
-0\?=)TDANf^\Rm0;#1.m)!CDg!5J@1!2&QV"36I)&G6#'cgC`7a,a=6o`,!<JcC<$df0;4rVup@
-dJn^~>
-df0;4rVup@M#RH_q#CFdpYGiLchRP@YCZ`OrrCsP!!(pArrA\f!!&XFrrV'X+G'QDs3L]F./EoD
-0\?=)TDANf^\Rm0;#1.m)!CDg!5J@1!2&QV"36I)&G6#'cgC`7a,a=6o`,!<JcC<$df0;4rVup@
-dJn^~>
-df0;4rVup@M>mQ`q#CFdpY>cK;#1.l0S09$rrCsP!!(pArrA\f!!&XFrrV'X+G'QDs3L]F@/0d&
-\(L]\TDANf^\[s1kP5)XVsjWc^\Rp1TB?.TY@%q:!!#j[rrTB3&GQ5*:kAXts3goI5lL``+OU4>~>
-df0;4rVup@M>mQ`q#CFdpY>cK;#1.l0S09$rrCsP!!(pArrA\f!!&XFrrV'X+G'QDs3L]F@/0d&
-\(L]\TDANf^\[s1kP5)XVsjWc^\Rp1TB?.TY@%q:!!#j[rrTB3&GQ5*:kAXts3goI5lL``+OU4>~>
-df0;4rVup@M>mQ`q#CFdpY>cK;#1.l0S09$rrCsP!!(pArrA\f!!&XFrrV'X+G'QDs3L]F@/0d&
-\(L]\TDANf^\[s1kP5)XVsjWc^\Rp1TB?.TY@%q:!!#j[rrTB3&GQ5*:kAXts3goI5lL``+OU4>~>
-df0;4rVup@MZ3Zaq#CFdpY>cKchRP@YCZ`NrrC[H!!)KQrrA\f!!&XFrrV'X+G'QDs3L]FTD8He
-:tYdJTDANf^\[s1\,$()8FHKX^\Rp1TB-"Qk?.N[!"e>n!U!S\!!!R]s+13urr>=`!!".hs*t~>
-df0;4rVup@MZ3Zaq#CFdpY>cKchRP@YCZ`NrrC[H!!)KQrrA\f!!&XFrrV'X+G'QDs3L]FTD8He
-:tYdJTDANf^\[s1\,$()8FHKX^\Rp1TB-"Qk?.N[!"e>n!U!S\!!!R]s+13urr>=`!!".hs*t~>
-df0;4rVup@MZ3Zaq#CFdpY>cKchRP@YCZ`NrrC[H!!)KQrrA\f!!&XFrrV'X+G'QDs3L]FTD8He
-:tYdJTDANf^\[s1\,$()8FHKX^\Rp1TB-"Qk?.N[!"e>n!U!S\!!!R]s+13urr>=`!!".hs*t~>
-df0;4rVup@MuNcbq#CFdpY5]J5l(H\0S09#rrBh1!!!;hrrA\f!!&XFrrV'X+G'QDs3L]GpDE]+
-!8#p(!2')f!5JC1!13N^!-mr3!5J@1!2&9N!-n;>!:T(M!-n;>!:PL=JcF4!!'pM`!$K\hJ,~>
-df0;4rVup@MuNcbq#CFdpY5]J5l(H\0S09#rrBh1!!!;hrrA\f!!&XFrrV'X+G'QDs3L]GpDE]+
-!8#p(!2')f!5JC1!13N^!-mr3!5J@1!2&9N!-n;>!:T(M!-n;>!:PL=JcF4!!'pM`!$K\hJ,~>
-df0;4rVup@MuNcbq#CFdpY5]J5l(H\0S09#rrBh1!!!;hrrA\f!!&XFrrV'X+G'QDs3L]GpDE]+
-!8#p(!2')f!5JC1!13N^!-mr3!5J@1!2&9N!-n;>!:T(M!-n;>!:PL=JcF4!!'pM`!$K\hJ,~>
-df0;4rVup@N;ilcq#CFdpY5]JYPA.u^OcF]rrA,V!!"/+rrA\f!!&XFrrV'X+G'QDs3CWEGkh=>
-5hZ/;TDANf^\[s1J,0-FVsaQb^\Rp1TAokOpF,k<!6=7%!V\#=!!(&js+14!rr>=`!!".hs*t~>
-df0;4rVup@N;ilcq#CFdpY5]JYPA.u^OcF]rrA,V!!"/+rrA\f!!&XFrrV'X+G'QDs3CWEGkh=>
-5hZ/;TDANf^\[s1J,0-FVsaQb^\Rp1TAokOpF,k<!6=7%!V\#=!!(&js+14!rr>=`!!".hs*t~>
-df0;4rVup@N;ilcq#CFdpY5]JYPA.u^OcF]rrA,V!!"/+rrA\f!!&XFrrV'X+G'QDs3CWEGkh=>
-5hZ/;TDANf^\[s1J,0-FVsaQb^\Rp1TAokOpF,k<!6=7%!V\#=!!(&js+14!rr>=`!!".hs*t~>
-df0;4rVup@NW/udq#CFdpY,WI0_tbL:kAZBrr>ml!!#RSrrA\f!!&XFrrV'X+G'QDs3CWFk6Uk`
-!12^Fs3LTB!2')f!5JC1!+>X'!5It%!5J@1!2&6M!-%c7!2nrY!-%c7!2kDJJcF4!!'pM`!$K\h
-J,~>
-df0;4rVup@NW/udq#CFdpY,WI0_tbL:kAZBrr>ml!!#RSrrA\f!!&XFrrV'X+G'QDs3CWFk6Uk`
-!12^Fs3LTB!2')f!5JC1!+>X'!5It%!5J@1!2&6M!-%c7!2nrY!-%c7!2kDJJcF4!!'pM`!$K\h
-J,~>
-df0;4rVup@NW/udq#CFdpY,WI0_tbL:kAZBrr>ml!!#RSrrA\f!!&XFrrV'X+G'QDs3CWFk6Uk`
-!12^Fs3LTB!2')f!5JC1!+>X'!5It%!5J@1!2&6M!-%c7!2nrY!-%c7!2kDJJcF4!!'pM`!$K\h
-J,~>
-df0;4rVup@NrK)eq#CFtpY,WIYPA.uc[l,mrrM9gq>^M^l2LaUq>^MfL&V53!$HjmJcF!p!*K$s
-!=7TDrrTA0TDSWgTDANf^\[s1@/9j'VsaQb^\Rp1TAfeMO88hVTB6(QO88hVT7R#ns3puJ5lL``
-+OU4>~>
-df0;4rVup@NrK)eq#CFtpY,WIYPA.uc[l,mrrM9gq>^M^l2LaUq>^MfL&V53!$HjmJcF!p!*K$s
-!=7TDrrTA0TDSWgTDANf^\[s1@/9j'VsaQb^\Rp1TAfeMO88hVTB6(QO88hVT7R#ns3puJ5lL``
-+OU4>~>
-df0;4rVup@NrK)eq#CFtpY,WIYPA.uc[l,mrrM9gq>^M^l2LaUq>^MfL&V53!$HjmJcF!p!*K$s
-!=7TDrrTA0TDSWgTDANf^\[s1@/9j'VsaQb^\Rp1TAfeMO88hVTB6(QO88hVT7R#ns3puJ5lL``
-+OU4>~>
-df0;4rVup@OT,@U8GN5c@+bJZ0_tbL:kAZBrr@$6!!(p@rrA\f!!&XFrrV'X+G'QDs3:QDchIJ@
-0^n0(".&ufTDSWgTDANf^\[s1GkqC?GjbS3^\Rp1TDJQgkP+9A!2')f!3cD%!U'4BrrA\f!!'3R
-s+14!rr>=`!!".hs*t~>
-df0;4rVup@OT,@U8GN5c@+bJZ0_tbL:kAZBrr@$6!!(p@rrA\f!!&XFrrV'X+G'QDs3:QDchIJ@
-0^n0(".&ufTDSWgTDANf^\[s1GkqC?GjbS3^\Rp1TDJQgkP+9A!2')f!3cD%!U'4BrrA\f!!'3R
-s+14!rr>=`!!".hs*t~>
-df0;4rVup@OT,@U8GN5c@+bJZ0_tbL:kAZBrr@$6!!(p@rrA\f!!&XFrrV'X+G'QDs3:QDchIJ@
-0^n0(".&ufTDSWgTDANf^\[s1GkqC?GjbS3^\Rp1TDJQgkP+9A!2')f!3cD%!U'4BrrA\f!!'3R
-s+14!rr>=`!!".hs*t~>
-df0;4rVup@OoGIV8GN5c@+bJZYPA.uc]nG2Iq\<9rrL.Gq>^LTkl1XTq>^MfL&V53!$HjmJcEso
-!,2--!AO!,rrM:RrVuqjqu6Ygq>^N1qYpPVq>^Lln,EFW5l(H\TDJQhT.nm_rrA,V!!'e5rrSfH
-fB`G:O88hV^OcE9s3puJ5lL``+OU4>~>
-df0;4rVup@OoGIV8GN5c@+bJZYPA.uc]nG2Iq\<9rrL.Gq>^LTkl1XTq>^MfL&V53!$HjmJcEso
-!,2--!AO!,rrM:RrVuqjqu6Ygq>^N1qYpPVq>^Lln,EFW5l(H\TDJQhT.nm_rrA,V!!'e5rrSfH
-fB`G:O88hV^OcE9s3puJ5lL``+OU4>~>
-df0;4rVup@OoGIV8GN5c@+bJZYPA.uc]nG2Iq\<9rrL.Gq>^LTkl1XTq>^MfL&V53!$HjmJcEso
-!,2--!AO!,rrM:RrVuqjqu6Ygq>^N1qYpPVq>^Lln,EFW5l(H\TDJQhT.nm_rrA,V!!'e5rrSfH
-fB`G:O88hV^OcE9s3puJ5lL``+OU4>~>
-df0;4rVup@P5bRW8GN5cGhE#spFuFD!)SmZ"+L:^QgF_Qmi_E+!3bVd!2')f!2"uF!oEu#JcC<$
-bl7_<./3cC0^n?-!M9r%!!&YgrrA\f!!'e1rrBh1!!*AWnc&X9+Sc!;TDJQiT)]Fpm/I&fqZ$X&
-p\t0pT)]Fpm/I&fqZ$X&pOW?qs3puJ5lL``+OU4>~>
-df0;4rVup@P5bRW8GN5cGhE#spFuFD!)SmZ"+L:^QgF_Qmi_E+!3bVd!2')f!2"uF!oEu#JcC<$
-bl7_<./3cC0^n?-!M9r%!!&YgrrA\f!!'e1rrBh1!!*AWnc&X9+Sc!;TDJQiT)]Fpm/I&fqZ$X&
-p\t0pT)]Fpm/I&fqZ$X&pOW?qs3puJ5lL``+OU4>~>
-df0;4rVup@P5bRW8GN5cGhE#spFuFD!)SmZ"+L:^QgF_Qmi_E+!3bVd!2')f!2"uF!oEu#JcC<$
-bl7_<./3cC0^n?-!M9r%!!&YgrrA\f!!'e1rrBh1!!*AWnc&X9+Sc!;TDJQiT)]Fpm/I&fqZ$X&
-p\t0pT)]Fpm/I&fqZ$X&pOW?qs3puJ5lL``+OU4>~>
-df0;4rVup@P5bMQq#CDMfDbi3q#CE@PQ(W4rW!!BQhU"L!T,U,!!"_9rrA\f!!&XFrrV'X+G'QD
-s3(ECf*M-O!>qa&rrK;gqZ$Vgqu6Ygq>^N1q>UF+q>^L\oD\mdIgGfL!2',f!2'5j!D),:rrLFO
-qZ$UurVlkirVusihs^RGcNsCJ!*FgPJcF0u!'pM`!$K\hJ,~>
-df0;4rVup@P5bMQq#CDMfDbi3q#CE@PQ(W4rW!!BQhU"L!T,U,!!"_9rrA\f!!&XFrrV'X+G'QD
-s3(ECf*M-O!>qa&rrK;gqZ$Vgqu6Ygq>^N1q>UF+q>^L\oD\mdIgGfL!2',f!2'5j!D),:rrLFO
-qZ$UurVlkirVusihs^RGcNsCJ!*FgPJcF0u!'pM`!$K\hJ,~>
-df0;4rVup@P5bMQq#CDMfDbi3q#CE@PQ(W4rW!!BQhU"L!T,U,!!"_9rrA\f!!&XFrrV'X+G'QD
-s3(ECf*M-O!>qa&rrK;gqZ$Vgqu6Ygq>^N1q>UF+q>^L\oD\mdIgGfL!2',f!2'5j!D),:rrLFO
-qZ$UurVlkirVusihs^RGcNsCJ!*FgPJcF0u!'pM`!$K\hJ,~>
-df0;4rVup@P5k=X!2%mC!V[H-!!#iYrr@QH!!3^]fCT"CY7UI/!3bSc!2')f!2"uF!oEu#JcC<$
-b5VI6p&G+Qa7K<4kD(2U!!&YgrrA\f!!'e0rr?0s!!.'-pAY/s+SGd8TDJQfTDSZi@*eED!RD>R
-!!'5$rrA\h!!-KRo)Aa:&GcA,YCZ_)s3goI5lL``+OU4>~>
-df0;4rVup@P5k=X!2%mC!V[H-!!#iYrr@QH!!3^]fCT"CY7UI/!3bSc!2')f!2"uF!oEu#JcC<$
-b5VI6p&G+Qa7K<4kD(2U!!&YgrrA\f!!'e0rr?0s!!.'-pAY/s+SGd8TDJQfTDSZi@*eED!RD>R
-!!'5$rrA\h!!-KRo)Aa:&GcA,YCZ_)s3goI5lL``+OU4>~>
-df0;4rVup@P5k=X!2%mC!V[H-!!#iYrr@QH!!3^]fCT"CY7UI/!3bSc!2')f!2"uF!oEu#JcC<$
-b5VI6p&G+Qa7K<4kD(2U!!&YgrrA\f!!'e0rr?0s!!.'-pAY/s+SGd8TDJQfTDSZi@*eED!RD>R
-!!'5$rrA\h!!-KRo)Aa:&GcA,YCZ_)s3goI5lL``+OU4>~>
-df0;4rVup@P5k@Y!"e3V!71<;!0?pU!7-i.!.XeE![)HkqYpZl^RlYC!!#RPrrA\f!!&XFrrV'X
-+G'QDs2k9@E:j24+E5*krr^T>?jQK,!2'/g!2')f!5J@0!71E?!>pmorrVA=+S5X6TDJQfTDANh
-.#6^SrrVqU&GcA,0`:qNTDANh.#6^SrrVqU&GcA,0S07Ts3^iH5lL``+OU4>~>
-df0;4rVup@P5k@Y!"e3V!71<;!0?pU!7-i.!.XeE![)HkqYpZl^RlYC!!#RPrrA\f!!&XFrrV'X
-+G'QDs2k9@E:j24+E5*krr^T>?jQK,!2'/g!2')f!5J@0!71E?!>pmorrVA=+S5X6TDJQfTDANh
-.#6^SrrVqU&GcA,0`:qNTDANh.#6^SrrVqU&GcA,0S07Ts3^iH5lL``+OU4>~>
-df0;4rVup@P5k@Y!"e3V!71<;!0?pU!7-i.!.XeE![)HkqYpZl^RlYC!!#RPrrA\f!!&XFrrV'X
-+G'QDs2k9@E:j24+E5*krr^T>?jQK,!2'/g!2')f!5J@0!71E?!>pmorrVA=+S5X6TDJQfTDANh
-.#6^SrrVqU&GcA,0`:qNTDANh.#6^SrrVqU&GcA,0S07Ts3^iH5lL``+OU4>~>
-df0;4rVup@P5j;;!5J4,!V[H-!!#iXrr@Q@!!#"X5QD)^!!+M:nc&U(j8]2;OT,C>!$HjmJcEgk
-!/L+F!!rKfnc/Z^qu6Ygq>^N1q#:=jp&G'urBL>gnGiQ]qYpPfpAbLZ8:Qu@^ScR+5kb6Yci!eC
-TD&<l3(SOc^V?[rGX2!'!7-5rJcF-t!'pM`!$K\hJ,~>
-df0;4rVup@P5j;;!5J4,!V[H-!!#iXrr@Q@!!#"X5QD)^!!+M:nc&U(j8]2;OT,C>!$HjmJcEgk
-!/L+F!!rKfnc/Z^qu6Ygq>^N1q#:=jp&G'urBL>gnGiQ]qYpPfpAbLZ8:Qu@^ScR+5kb6Yci!eC
-TD&<l3(SOc^V?[rGX2!'!7-5rJcF-t!'pM`!$K\hJ,~>
-df0;4rVup@P5j;;!5J4,!V[H-!!#iXrr@Q@!!#"X5QD)^!!+M:nc&U(j8]2;OT,C>!$HjmJcEgk
-!/L+F!!rKfnc/Z^qu6Ygq>^N1q#:=jp&G'urBL>gnGiQ]qYpPfpAbLZ8:Qu@^ScR+5kb6Yci!eC
-TD&<l3(SOc^V?[rGX2!'!7-5rJcF-t!'pM`!$K\hJ,~>
-df0;4rVup@P5j;;!5J4,!0?pU!7-f-!.X#/!>+/XrrBgp!!(o<rrV'X+G'QDs2Y-?V[2/[!2'/g
-!2')f!5J=/!S7nI!!#:\!!&YfrrA\P!!%NGrrA\P!!%M"s+13srr>=`!!".hs*t~>
-df0;4rVup@P5j;;!5J4,!0?pU!7-f-!.X#/!>+/XrrBgp!!(o<rrV'X+G'QDs2Y-?V[2/[!2'/g
-!2')f!5J=/!S7nI!!#:\!!&YfrrA\P!!%NGrrA\P!!%M"s+13srr>=`!!".hs*t~>
-df0;4rVup@P5j;;!5J4,!0?pU!7-f-!.X#/!>+/XrrBgp!!(o<rrV'X+G'QDs2Y-?V[2/[!2'/g
-!2')f!5J=/!S7nI!!#:\!!&YfrrA\P!!%NGrrA\P!!%M"s+13srr>=`!!".hs*t~>
-df0;4rVup@P5j;;!5J7-!V[H-!!#iWrr@Q0!!+M"n,EC&j8]2;OT,C>!$HjmJcEai!P]3*!!3^]
-n,*+bTDANf^\@a.YNl/i&?!;>!!&YfrrA\Q!!%NFrrA\Q!!%M"s+13rrr>=`!!".hs*t~>
-df0;4rVup@P5j;;!5J7-!V[H-!!#iWrr@Q0!!+M"n,EC&j8]2;OT,C>!$HjmJcEai!P]3*!!3^]
-n,*+bTDANf^\@a.YNl/i&?!;>!!&YfrrA\Q!!%NFrrA\Q!!%M"s+13rrr>=`!!".hs*t~>
-df0;4rVup@P5j;;!5J7-!V[H-!!#iWrr@Q0!!+M"n,EC&j8]2;OT,C>!$HjmJcEai!P]3*!!3^]
-n,*+bTDANf^\@a.YNl/i&?!;>!!&YfrrA\Q!!%NFrrA\Q!!%M"s+13rrr>=`!!".hs*t~>
-df0;4rVup@P5j;;!5J7-!-%`6!7-c,!2&?Q!C6,ArrBgp!!(o<rrV'X+G'QDs2G!>msbo2!!4!e
-n+lt`TDANf^\7[-L[>'D37n2Fq>^MfqYpTB0^&K;&>/du!REI`!!*Y'JcC<$cMml0rVup@dJn^~>
-df0;4rVup@P5j;;!5J7-!-%`6!7-c,!2&?Q!C6,ArrBgp!!(o<rrV'X+G'QDs2G!>msbo2!!4!e
-n+lt`TDANf^\7[-L[>'D37n2Fq>^MfqYpTB0^&K;&>/du!REI`!!*Y'JcC<$cMml0rVup@dJn^~>
-df0;4rVup@P5j;;!5J7-!-%`6!7-c,!2&?Q!C6,ArrBgp!!(o<rrV'X+G'QDs2G!>msbo2!!4!e
-n+lt`TDANf^\7[-L[>'D37n2Fq>^MfqYpTB0^&K;&>/du!REI`!!*Y'JcC<$cMml0rVup@dJn^~>
-df0;4rVup@P5j;;!5J:.!Tsab!!#iUrrV)&&F'5s(m"FYrrBgp!!(o<rrV'X+G'QDs24j<kAU^l
-!!5-Pp\4[fTDANf^\.U-V[2em!=4J[rrBh1!!&YdrrKSolMprVkP"oV[m96Z!D)C)s+13prr>=`
-!!".hs*t~>
-df0;4rVup@P5j;;!5J:.!Tsab!!#iUrrV)&&F'5s(m"FYrrBgp!!(o<rrV'X+G'QDs24j<kAU^l
-!!5-Pp\4[fTDANf^\.U-V[2em!=4J[rrBh1!!&YdrrKSolMprVkP"oV[m96Z!D)C)s+13prr>=`
-!!".hs*t~>
-df0;4rVup@P5j;;!5J:.!Tsab!!#iUrrV)&&F'5s(m"FYrrBgp!!(o<rrV'X+G'QDs24j<kAU^l
-!!5-Pp\4[fTDANf^\.U-V[2em!=4J[rrBh1!!&YdrrKSolMprVkP"oV[m96Z!D)C)s+13prr>=`
-!!".hs*t~>
-df0;4rVup@P5j;;!5J:.!-%`6!7-W("8B!4+R]:3(m"FWrrBgp!!(o<rrV'X+G'QDs2"^:kDr1&
-!!5EHht6pKTDANf^\%O,hb`qF!YB&&rVll4q>^MfpAY3OO"g&'!DpQ%rrV)=0^o&C:qqS]JcEpn
-!'pM`!$K\hJ,~>
-df0;4rVup@P5j;;!5J:.!-%`6!7-W("8B!4+R]:3(m"FWrrBgp!!(o<rrV'X+G'QDs2"^:kDr1&
-!!5EHht6pKTDANf^\%O,hb`qF!YB&&rVll4q>^MfpAY3OO"g&'!DpQ%rrV)=0^o&C:qqS]JcEpn
-!'pM`!$K\hJ,~>
-df0;4rVup@P5j;;!5J:.!-%`6!7-W("8B!4+R]:3(m"FWrrBgp!!(o<rrV'X+G'QDs2"^:kDr1&
-!!5EHht6pKTDANf^\%O,hb`qF!YB&&rVll4q>^MfpAY3OO"g&'!DpQ%rrV)=0^o&C:qqS]JcEpn
-!'pM`!$K\hJ,~>
-df0;4rVup@JcC<$hu<f1QY8AP!!4j!^OcF;rrV'X+G'QDs1\L9pTJ6q)#+(55]F4,g&D,g?l8\>
-![sE0jSo>>YBW>-!!=?GQe1X)"5g;,5kk<]+BXu^JcC<$ao;?+rVup@dJn^~>
-df0;4rVup@JcC<$hu<f1QY8AP!!4j!^OcF;rrV'X+G'QDs1\L9pTJ6q)#+(55]F4,g&D,g?l8\>
-![sE0jSo>>YBW>-!!=?GQe1X)"5g;,5kk<]+BXu^JcC<$ao;?+rVup@dJn^~>
-df0;4rVup@JcC<$hu<f1QY8AP!!4j!^OcF;rrV'X+G'QDs1\L9pTJ6q)#+(55]F4,g&D,g?l8\>
-![sE0jSo>>YBW>-!!=?GQe1X)"5g;,5kk<]+BXu^JcC<$ao;?+rVup@dJn^~>
-df0;4rVup@JcC<$gA_H!^V@7-O2&HUJcF7"!oEu#JcC<$\,QHSrkAHRd/O?k^R'G:^VBNss8Kb5
-a5I!s^Au<*s+13frr>=`!!".hs*t~>
-df0;4rVup@JcC<$gA_H!^V@7-O2&HUJcF7"!oEu#JcC<$\,QHSrkAHRd/O?k^R'G:^VBNss8Kb5
-a5I!s^Au<*s+13frr>=`!!".hs*t~>
-df0;4rVup@JcC<$gA_H!^V@7-O2&HUJcF7"!oEu#JcC<$\,QHSrkAHRd/O?k^R'G:^VBNss8Kb5
-a5I!s^Au<*s+13frr>=`!!".hs*t~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~>
-df0;(rVup8J\QcNJ\S"q!iH#8J\QcNJ\QcNJ\QcNlb<ERrVup9dJn^~>
-df0;(rVup8J\QcNJ\S"q!iH#8J\QcNJ\QcNJ\QcNlb<ERrVup9dJn^~>
-df0;(rVup8J\QcNJ\S"q!iH#8J\QcNJ\QcNJ\QcNlb<ERrVup9dJn^~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0:YJH16$JH16$JH16$JH16$JH1<&!!L^LJ,~>
-df0;Wr]^BQJU`6#JUaJF!d?k!JU`6#JU`6#JU`6#l[Jn1r]^BZdJn^~>
-df0;Wr]^BQJU`6#JUaJF!d?k!JU`6#JU`6#JU`6#l[Jn1r]^BZdJn^~>
-df0;Wr]^BQJU`6#JUaJF!d?k!JU`6#JU`6#JU`6#l[Jn1r]^BZdJn^~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~>
-%%EndData
-showpage
-%%Trailer
-end
-%%EOF
diff --git a/doc/user/ObjectId-32Bits.png b/doc/user/ObjectId-32Bits.png
deleted file mode 100644
index e54c632fcf..0000000000
--- a/doc/user/ObjectId-32Bits.png
+++ /dev/null
Binary files differ
diff --git a/doc/user/barrier.t b/doc/user/barrier.t
deleted file mode 100644
index 6c8e733717..0000000000
--- a/doc/user/barrier.t
+++ /dev/null
@@ -1,470 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2007.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Barrier Manager
-
-@cindex barrier
-
-@section Introduction
-
-The barrier manager provides a unique synchronization
-capability which can be used to have a set of tasks block
-and be unblocked as a set. The directives provided by the
-barrier manager are:
-
-@itemize @bullet
-@item @code{@value{DIRPREFIX}barrier_create} - Create a barrier
-@item @code{@value{DIRPREFIX}barrier_ident} - Get ID of a barrier
-@item @code{@value{DIRPREFIX}barrier_delete} - Delete a barrier
-@item @code{@value{DIRPREFIX}barrier_wait} - Wait at a barrier
-@item @code{@value{DIRPREFIX}barrier_release} - Release a barrier
-@end itemize
-
-@section Background
-
-A barrier can be viewed as a gate at which tasks wait until
-the gate is opened. This has many analogies in the real world.
-Horses and other farm animals may approach a closed gate and
-gather in front of it, waiting for someone to open the gate so
-they may proceed. Similarly, cticket holders gather at the gates
-of arenas before concerts or sporting events waiting for the
-arena personnel to open the gates so they may enter.
-
-Barriers are useful during application initialization. Each
-application task can perform its local initialization before
-waiting for the application as a whole to be initialized. Once
-all tasks have completed their independent initializations,
-the "application ready" barrier can be released.
-
-@subsection Automatic Versus Manual Barriers
-
-Just as with a real-world gate, barriers may be configured to
-be manually opened or automatically opened. All tasks
-calling the @code{@value{DIRPREFIX}barrier_wait} directive
-will block until a controlling task invokes the
-@code{@value{DIRPREFIX}barrier_release} directive.
-
-Automatic barriers are created with a limit to the number of
-tasks which may simultaneously block at the barrier. Once
-this limit is reached, all of the tasks are released. For
-example, if the automatic limit is ten tasks, then the first
-nine tasks calling the @code{@value{DIRPREFIX}barrier_wait} directive
-will block. When the tenth task calls the
-@code{@value{DIRPREFIX}barrier_wait} directive, the nine
-blocked tasks will be released and the tenth task returns
-to the caller without blocking.
-
-@subsection Building a Barrier Attribute Set
-
-In general, an attribute set is built by a bitwise OR
-of the desired attribute components. The following table lists
-the set of valid barrier attributes:
-
-@itemize @bullet
-
-@item @code{@value{RPREFIX}BARRIER_AUTOMATIC_RELEASE} - automatically
-release the barrier when the configured number of tasks are blocked
-
-@item @code{@value{RPREFIX}BARRIER_MANUAL_RELEASE} - only release
-the barrier when the application invokes the
-@code{@value{DIRPREFIX}barrier_release} directive. (default)
-
-@end itemize
-
-@b{NOTE}: Barriers only support FIFO blocking order because all
-waiting tasks are released as a set. Thus the released tasks
-will all become ready to execute at the same time and compete
-for the processor based upon their priority.
-
-Attribute values are specifically designed to be
-mutually exclusive, therefore bitwise OR and addition operations
-are equivalent as long as each attribute appears exactly once in
-the component list. An attribute listed as a default is not
-required to appear in the attribute list, although it is a good
-programming practice to specify default attributes. If all
-defaults are desired, the attribute
-@code{@value{RPREFIX}DEFAULT_ATTRIBUTES} should be
-specified on this call.
-
-This example demonstrates the attribute_set parameter needed to create a
-barrier with the automatic release policy. The
-@code{attribute_set} parameter passed to the
-@code{@value{DIRPREFIX}barrier_create} directive will be
-@code{@value{RPREFIX}BARRIER_AUTOMATIC_RELEASE}. In this case, the
-user must also specify the @i{maximum_waiters} parameter.
-
-@section Operations
-
-@subsection Creating a Barrier
-
-The @code{@value{DIRPREFIX}barrier_create} directive creates
-a barrier with a user-specified name and the desired attributes.
-RTEMS allocates a Barrier Control Block (BCB) from the BCB free list.
-This data structure is used by RTEMS to manage the newly created
-barrier. Also, a unique barrier ID is generated and returned to
-the calling task.
-
-@subsection Obtaining Barrier IDs
-
-When a barrier is created, RTEMS generates a unique
-barrier ID and assigns it to the created barrier until it is
-deleted. The barrier ID may be obtained by either of two
-methods. First, as the result of an invocation of the
-@code{@value{DIRPREFIX}barrier_create} directive, the
-barrier ID is stored in a user provided location. Second,
-the barrier ID may be obtained later using the
-@code{@value{DIRPREFIX}barrier_ident} directive. The barrier ID is
-used by other barrier manager directives to access this
-barrier.
-
-@subsection Waiting at a Barrier
-
-The @code{@value{DIRPREFIX}barrier_wait} directive is used to wait at
-the specified barrier. Since a barrier is, by definition, never immediately,
-the task may wait forever for the barrier to be released or it may
-specify a timeout. Specifying a timeout limits the interval the task will
-wait before returning with an error status code.
-
-If the barrier is configured as automatic and there are already
-one less then the maximum number of waiters, then the call will
-unblock all tasks waiting at the barrier and the caller will
-return immediately.
-
-When the task does wait to acquire the barrier, then it
-is placed in the barrier's task wait queue in FIFO order.
-All tasks waiting on a barrier are returned an error
-code when the barrier is deleted.
-
-@subsection Releasing a Barrier
-
-The @code{@value{DIRPREFIX}barrier_release} directive is used to release
-the specified barrier. When the @code{@value{DIRPREFIX}barrier_release}
-is invoked, all tasks waiting at the barrier are immediately made ready
-to execute and begin to compete for the processor to execute.
-
-@subsection Deleting a Barrier
-
-The @code{@value{DIRPREFIX}barrier_delete} directive removes a barrier
-from the system and frees its control block. A barrier can be
-deleted by any local task that knows the barrier's ID. As a
-result of this directive, all tasks blocked waiting for the
-barrier to be released, will be readied and returned a status code which
-indicates that the barrier was deleted. Any subsequent
-references to the barrier's name and ID are invalid.
-
-@section Directives
-
-This section details the barrier manager's
-directives. A subsection is dedicated to each of this manager's
-directives and describes the calling sequence, related
-constants, usage, and status codes.
-
-@c
-@c
-@c
-@page
-@subsection BARRIER_CREATE - Create a barrier
-
-@cindex create a barrier
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_barrier_create
-@example
-rtems_status_code rtems_barrier_create(
- rtems_name name,
- rtems_attribute attribute_set,
- uint32_t maximum_waiters,
- rtems_id *id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Barrier_Create (
- Name : in RTEMS.Name;
- Attribute_Set : in RTEMS.Attribute;
- Maximum_Waiters : in RTEMS.Unsigned32;
- ID : out RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - barrier created successfully@*
-@code{@value{RPREFIX}INVALID_NAME} - invalid barrier name@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{id} is NULL@*
-@code{@value{RPREFIX}TOO_MANY} - too many barriers created@
-
-@subheading DESCRIPTION:
-
-This directive creates a barrier which resides on
-the local node. The created barrier has the user-defined name
-specified in @code{name} and the initial count specified in @code{count}. For
-control and maintenance of the barrier, RTEMS allocates and
-initializes a BCB. The RTEMS-assigned barrier id is returned
-in @code{id}. This barrier id is used with other barrier related
-directives to access the barrier.
-
-@code{@value{RPREFIX}BARRIER_MANUAL_RELEASE} - only release
-
-Specifying @code{@value{RPREFIX}BARRIER_AUTOMATIC_RELEASE} in
-@code{attribute_set} causes tasks calling the
-@code{@value{DIRPREFIX}barrier_wait} directive to block until
-there are @code{maximum_waiters - 1} tasks waiting at the barrier.
-When the @code{maximum_waiters} task invokes the
-@code{@value{DIRPREFIX}barrier_wait} directive, the previous
-@code{maximum_waiters - 1} tasks are automatically released
-and the caller returns.
-
-In contrast, when the @code{@value{RPREFIX}BARRIER_MANUAL_RELEASE}
-attribute is specified, there is no limit on the number of
-tasks that will block at the barrier. Only when the
-@code{@value{DIRPREFIX}barrier_release} directive is invoked,
-are the tasks waiting at the barrier unblocked.
-
-@subheading NOTES:
-
-This directive will not cause the calling task to be preempted.
-
-The following barrier attribute constants are defined by RTEMS:
-
-@itemize @bullet
-
-@item @code{@value{RPREFIX}BARRIER_AUTOMATIC_RELEASE} - automatically
-release the barrier when the configured number of tasks are blocked
-
-@item @code{@value{RPREFIX}BARRIER_MANUAL_RELEASE} - only release
-the barrier when the application invokes the
-@code{@value{DIRPREFIX}barrier_release} directive. (default)
-
-@end itemize
-
-@c
-@c
-@c
-@page
-@subsection BARRIER_IDENT - Get ID of a barrier
-
-@cindex get ID of a barrier
-@cindex obtain ID of a barrier
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_barrier_ident
-@example
-rtems_status_code rtems_barrier_ident(
- rtems_name name,
- rtems_id *id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Barrier_Ident (
- Name : in RTEMS.Name;
- ID : out RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - barrier identified successfully@*
-@code{@value{RPREFIX}INVALID_NAME} - barrier name not found@*
-@code{@value{RPREFIX}INVALID_NODE} - invalid node id
-
-@subheading DESCRIPTION:
-
-This directive obtains the barrier id associated
-with the barrier name. If the barrier name is not unique,
-then the barrier id will match one of the barriers with that
-name. However, this barrier id is not guaranteed to
-correspond to the desired barrier. The barrier id is used
-by other barrier related directives to access the barrier.
-
-@subheading NOTES:
-
-This directive will not cause the running task to be
-preempted.
-
-@c
-@c
-@c
-@page
-@subsection BARRIER_DELETE - Delete a barrier
-
-@cindex delete a barrier
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_barrier_delete
-@example
-rtems_status_code rtems_barrier_delete(
- rtems_id id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Barrier_Delete (
- ID : in RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - barrier deleted successfully@*
-@code{@value{RPREFIX}INVALID_ID} - invalid barrier id@
-
-@subheading DESCRIPTION:
-
-This directive deletes the barrier specified by @code{id}.
-All tasks blocked waiting for the barrier to be released will be
-readied and returned a status code which indicates that the
-barrier was deleted. The BCB for this barrier is reclaimed
-by RTEMS.
-
-@subheading NOTES:
-
-The calling task will be preempted if it is enabled
-by the task's execution mode and a higher priority local task is
-waiting on the deleted barrier. The calling task will NOT be
-preempted if all of the tasks that are waiting on the barrier
-are remote tasks.
-
-The calling task does not have to be the task that
-created the barrier. Any local task that knows the barrier
-id can delete the barrier.
-
-@c
-@c Barrier Obtain
-@c
-@page
-@subsection BARRIER_OBTAIN - Acquire a barrier
-
-@cindex obtain a barrier
-@cindex lock a barrier
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_barrier_wait
-@example
-rtems_status_code rtems_barrier_wait(
- rtems_id id,
- rtems_interval timeout
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Barrier_Wait (
- ID : in RTEMS.ID;
- Timeout : in RTEMS.Interval;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - barrier released and task unblocked@*
-@code{@value{RPREFIX}UNSATISFIED} - barrier not available@*
-@code{@value{RPREFIX}TIMEOUT} - timed out waiting for barrier@*
-@code{@value{RPREFIX}OBJECT_WAS_DELETED} - barrier deleted while waiting@*
-@code{@value{RPREFIX}INVALID_ID} - invalid barrier id
-
-@subheading DESCRIPTION:
-
-This directive acquires the barrier specified by
-id. The @code{@value{RPREFIX}WAIT} and @code{@value{RPREFIX}NO_WAIT}
-components of the options parameter indicate whether the calling task
-wants to wait for the barrier to become available or return immediately
-if the barrier is not currently available. With either
-@code{@value{RPREFIX}WAIT} or @code{@value{RPREFIX}NO_WAIT},
-if the current barrier count is positive, then it is
-decremented by one and the barrier is successfully acquired by
-returning immediately with a successful return code.
-
-Conceptually, the calling task should always be thought
-of as blocking when it makes this call and being unblocked when
-the barrier is released. If the barrier is configured for
-manual release, this rule of thumb will always be valid.
-If the barrier is configured for automatic release, all callers
-will block except for the one which is the Nth task which trips
-the automatic release condition.
-
-The timeout parameter specifies the maximum interval the calling task is
-willing to be blocked waiting for the barrier. If it is set to
-@code{@value{RPREFIX}NO_TIMEOUT}, then the calling task will wait forever.
-If the barrier is available or the @code{@value{RPREFIX}NO_WAIT} option
-component is set, then timeout is ignored.
-
-@subheading NOTES:
-The following barrier acquisition option constants are defined by RTEMS:
-
-@itemize @bullet
-@item @code{@value{RPREFIX}WAIT} - task will wait for barrier (default)
-@item @code{@value{RPREFIX}NO_WAIT} - task should not wait
-@end itemize
-
-A clock tick is required to support the timeout functionality of
-this directive.
-
-@c
-@c Release Barrier
-@c
-@page
-@subsection BARRIER_RELEASE - Release a barrier
-
-@cindex wait at a barrier
-@cindex release a barrier
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_barrier_release
-@example
-rtems_status_code rtems_barrier_release(
- rtems_id id,
- uint32_t *released
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Barrier_Release (
- ID : in RTEMS.ID;
- Released : out RTEMS.Unsigned32;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - barrier released successfully@*
-@code{@value{RPREFIX}INVALID_ID} - invalid barrier id@*
-
-@subheading DESCRIPTION:
-
-This directive releases the barrier specified by id.
-All tasks waiting at the barrier will be unblocked.
-If the running task's preemption mode is enabled and one of
-the unblocked tasks has a higher priority than the running task.
-
-@subheading NOTES:
-
-The calling task may be preempted if it causes a
-higher priority task to be made ready for execution.
diff --git a/doc/user/bsp.t b/doc/user/bsp.t
deleted file mode 100644
index 8af054a663..0000000000
--- a/doc/user/bsp.t
+++ /dev/null
@@ -1,300 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2008.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Board Support Packages
-
-@cindex Board Support Packages
-@cindex BSPs
-
-@section Introduction
-
-@cindex BSP, definition
-
-A board support package (BSP) is a collection of
-user-provided facilities which interface RTEMS and an
-application with a specific hardware platform. These facilities
-may include hardware initialization, device drivers, user
-extensions, and a Multiprocessor Communications Interface
-(MPCI). However, a minimal BSP need only support processor
-reset and initialization and, if needed, a clock tick.
-
-@section Reset and Initialization
-
-An RTEMS based application is initiated or
-re-initiated when the processor is reset. This initialization
-code is responsible for preparing the target platform for the
-RTEMS application. Although the exact actions performed by the
-initialization code are highly processor and target dependent,
-the logical functionality of these actions are similar across a
-variety of processors and target platforms.
-
-Normally, the BSP and some of the application initialization is
-intertwined in the RTEMS initialization sequence controlled by
-the shared function @code{boot_card()}.
-
-The reset application initialization code is executed
-first when the processor is reset. All of the hardware must be
-initialized to a quiescent state by this software before
-initializing RTEMS. When in quiescent state, devices do not
-generate any interrupts or require any servicing by the
-application. Some of the hardware components may be initialized
-in this code as well as any application initialization that does
-not involve calls to RTEMS directives.
-
-The processor's Interrupt Vector Table which will be used by the
-application may need to be set to the required value by the reset
-application initialization code. Because interrupts are enabled
-automatically by RTEMS as part of the context switch to the first task,
-the Interrupt Vector Table MUST be set before this directive is invoked
-to ensure correct interrupt vectoring. The processor's Interrupt Vector
-Table must be accessible by RTEMS as it will be modified by the when
-installing user Interrupt Service Routines (ISRs) On some CPUs, RTEMS
-installs it's own Interrupt Vector Table as part of initialization and
-thus these requirements are met automatically. The reset code which is
-executed before the call to any RTEMS initialization routines has the
-following requirements:
-
-@itemize @bullet
-@item Must not make any blocking RTEMS directive calls.
-
-@item If the processor supports multiple privilege levels, must leave
-the processor in the most privileged, or supervisory, state.
-
-@item Must allocate a stack of sufficient size to execute the initialization
-and shutdown of the system. This stack area will NOT be used by any task
-once the system is initialized. This stack is often reserved via the
-linker script or in the assembly language start up file.
-
-@item Must initialize the stack pointer for the initialization process to
-that allocated.
-
-@item Must initialize the processor's Interrupt Vector Table.
-
-@item Must disable all maskable interrupts.
-
-@item If the processor supports a separate interrupt stack, must allocate
-the interrupt stack and initialize the interrupt stack pointer.
-
-@end itemize
-
-At the end of the initialization sequence, RTEMS does not return to the
-BSP initialization code, but instead context switches to the highest
-priority task to begin application execution. This task is typically
-a User Initialization Task which is responsible for performing both
-local and global application initialization which is dependent on RTEMS
-facilities. It is also responsible for initializing any higher level
-RTEMS services the application uses such as networking and blocking
-device drivers.
-
-@subsection Interrupt Stack Requirements
-
-The worst-case stack usage by interrupt service
-routines must be taken into account when designing an
-application. If the processor supports interrupt nesting, the
-stack usage must include the deepest nest level. The worst-case
-stack usage must account for the following requirements:
-
-@itemize @bullet
-@item Processor's interrupt stack frame
-
-@item Processor's subroutine call stack frame
-
-@item RTEMS system calls
-
-@item Registers saved on stack
-
-@item Application subroutine calls
-@end itemize
-
-The size of the interrupt stack must be greater than or equal to the
-confugured minimum stack size.
-
-@subsection Processors with a Separate Interrupt Stack
-
-Some processors support a separate stack for interrupts. When an
-interrupt is vectored and the interrupt is not nested, the processor
-will automatically switch from the current stack to the interrupt stack.
-The size of this stack is based solely on the worst-case stack usage by
-interrupt service routines.
-
-The dedicated interrupt stack for the entire application on some
-architectures is supplied and initialized by the reset and initialization
-code of the user's Board Support Package. Whether allocated and
-initialized by the BSP or RTEMS, since all ISRs use this stack, the
-stack size must take into account the worst case stack usage by any
-combination of nested ISRs.
-
-@subsection Processors Without a Separate Interrupt Stack
-
-Some processors do not support a separate stack for interrupts. In this
-case, without special assistance every task's stack must include
-enough space to handle the task's worst-case stack usage as well as
-the worst-case interrupt stack usage. This is necessary because the
-worst-case interrupt nesting could occur while any task is executing.
-
-On many processors without dedicated hardware managed interrupt stacks,
-RTEMS manages a dedicated interrupt stack in software. If this capability
-is supported on a CPU, then it is logically equivalent to the processor
-supporting a separate interrupt stack in hardware.
-
-@section Device Drivers
-
-Device drivers consist of control software for
-special peripheral devices and provide a logical interface for
-the application developer. The RTEMS I/O manager provides
-directives which allow applications to access these device
-drivers in a consistent fashion. A Board Support Package may
-include device drivers to access the hardware on the target
-platform. These devices typically include serial and parallel
-ports, counter/timer peripherals, real-time clocks, disk
-interfaces, and network controllers.
-
-For more information on device drivers, refer to the
-I/O Manager chapter.
-
-@subsection Clock Tick Device Driver
-
-Most RTEMS applications will include a clock tick
-device driver which invokes the @code{@value{DIRPREFIX}clock_tick}
-directive at regular intervals. The clock tick is necessary if
-the application is to utilize timeslicing, the clock manager, the
-timer manager, the rate monotonic manager, or the timeout option on blocking
-directives.
-
-The clock tick is usually provided as an interrupt from a counter/timer
-or a real-time clock device. When a counter/timer is used to provide the
-clock tick, the device is typically programmed to operate in continuous
-mode. This mode selection causes the device to automatically reload the
-initial count and continue the countdown without programmer intervention.
-This reduces the overhead required to manipulate the counter/timer in
-the clock tick ISR and increases the accuracy of tick occurrences.
-The initial count can be based on the microseconds_per_tick field
-in the RTEMS Configuration Table. An alternate approach is to set
-the initial count for a fixed time period (such as one millisecond)
-and have the ISR invoke @code{@value{DIRPREFIX}clock_tick} on the
-configured @code{microseconds_per_tick} boundaries. Obviously, this
-can induce some error if the configured @code{microseconds_per_tick}
-is not evenly divisible by the chosen clock interrupt quantum.
-
-It is important to note that the interval between
-clock ticks directly impacts the granularity of RTEMS timing
-operations. In addition, the frequency of clock ticks is an
-important factor in the overall level of system overhead. A
-high clock tick frequency results in less processor time being
-available for task execution due to the increased number of
-clock tick ISRs.
-
-@section User Extensions
-
-RTEMS allows the application developer to augment
-selected features by invoking user-supplied extension routines
-when the following system events occur:
-
-@itemize @bullet
-@item Task creation
-@item Task initiation
-@item Task reinitiation
-@item Task deletion
-@item Task context switch
-@item Post task context switch
-@item Task begin
-@item Task exits
-@item Fatal error detection
-@end itemize
-
-User extensions can be used to implement a wide variety of
-functions including execution profiling, non-standard
-coprocessor support, debug support, and error detection and
-recovery. For example, the context of a non-standard numeric
-coprocessor may be maintained via the user extensions. In this
-example, the task creation and deletion extensions are
-responsible for allocating and deallocating the context area,
-the task initiation and reinitiation extensions would be
-responsible for priming the context area, and the task context
-switch extension would save and restore the context of the
-device.
-
-For more information on user extensions, refer to the
-@ref{User Extensions Manager} chapter.
-
-@section Multiprocessor Communications Interface (MPCI)
-
-RTEMS requires that an MPCI layer be provided when a
-multiple node application is developed. This MPCI layer must
-provide an efficient and reliable communications mechanism
-between the multiple nodes. Tasks on different nodes
-communicate and synchronize with one another via the MPCI. Each
-MPCI layer must be tailored to support the architecture of the
-target platform.
-
-For more information on the MPCI, refer to the
-Multiprocessing Manager chapter.
-
-@subsection Tightly-Coupled Systems
-
-A tightly-coupled system is a multiprocessor
-configuration in which the processors communicate solely via
-shared global memory. The MPCI can simply place the RTEMS
-packets in the shared memory space. The two primary
-considerations when designing an MPCI for a tightly-coupled
-system are data consistency and informing another node of a
-packet.
-
-The data consistency problem may be solved using
-atomic "test and set" operations to provide a "lock" in the
-shared memory. It is important to minimize the length of time
-any particular processor locks a shared data structure.
-
-The problem of informing another node of a packet can
-be addressed using one of two techniques. The first technique
-is to use an interprocessor interrupt capability to cause an
-interrupt on the receiving node. This technique requires that
-special support hardware be provided by either the processor
-itself or the target platform. The second technique is to have
-a node poll for arrival of packets. The drawback to this
-technique is the overhead associated with polling.
-
-@subsection Loosely-Coupled Systems
-
-A loosely-coupled system is a multiprocessor
-configuration in which the processors communicate via some type
-of communications link which is not shared global memory. The
-MPCI sends the RTEMS packets across the communications link to
-the destination node. The characteristics of the communications
-link vary widely and have a significant impact on the MPCI
-layer. For example, the bandwidth of the communications link
-has an obvious impact on the maximum MPCI throughput.
-
-The characteristics of a shared network, such as
-Ethernet, lend themselves to supporting an MPCI layer. These
-networks provide both the point-to-point and broadcast
-capabilities which are expected by RTEMS.
-
-@subsection Systems with Mixed Coupling
-
-A mixed-coupling system is a multiprocessor
-configuration in which the processors communicate via both
-shared memory and communications links. A unique characteristic
-of mixed-coupling systems is that a node may not have access to
-all communication methods. There may be multiple shared memory
-areas and communication links. Therefore, one of the primary
-functions of the MPCI layer is to efficiently route RTEMS
-packets between nodes. This routing may be based on numerous
-algorithms. In addition, the router may provide alternate
-communications paths in the event of an overload or a partial
-failure.
-
-@subsection Heterogeneous Systems
-
-Designing an MPCI layer for a heterogeneous system
-requires special considerations by the developer. RTEMS is
-designed to eliminate many of the problems associated with
-sharing data in a heterogeneous environment. The MPCI layer
-need only address the representation of thirty-two (32) bit
-unsigned quantities.
-
-For more information on supporting a heterogeneous
-system, refer the Supporting Heterogeneous Environments in the
-Multiprocessing Manager chapter.
diff --git a/doc/user/c_user.texi b/doc/user/c_user.texi
deleted file mode 100644
index cc6935865a..0000000000
--- a/doc/user/c_user.texi
+++ /dev/null
@@ -1,184 +0,0 @@
-\input texinfo @c -*-texinfo-*-
-@c %**start of header
-@setfilename c_user.info
-@syncodeindex vr fn
-@synindex ky cp
-@paragraphindent 0
-@c %**end of header
-
-@c
-@c COPYRIGHT (c) 1989-2013.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@c
-@c Master file for the C User's Guide
-@c
-
-@c Joel's Questions
-@c
-@c 1. Why does paragraphindent only impact makeinfo?
-@c 2. Why does paragraphindent show up in HTML?
-@c
-
-@include version.texi
-@include common/setup.texi
-@include common/rtems.texi
-
-@ifset use-ascii
-@dircategory RTEMS On-Line Manual
-@direntry
-* RTEMS C User: (c_user). The C User's Guide.
-@end direntry
-@end ifset
-
-@c @syncodeindex fn cp
-@c variable substitution info:
-@c
-@set is-C 1
-@clear is-Ada
-@set LANGUAGE C
-@set STRUCTURE structure
-@set ROUTINE function
-@set OR |
-@set RPREFIX RTEMS_
-@set DIRPREFIX rtems_
-@c the language is @value{LANGUAGE}
-@c NOTE: don't use underscore in the name
-@c
-
-@c
-@c Title Page Stuff
-@c
-
-@c
-@c I don't really like having a short title page. --joel
-@c
-@c @shorttitlepage RTEMS Applications C User's Guide
-
-@setchapternewpage odd
-@settitle RTEMS C User's Guide
-@titlepage
-@finalout
-
-@title RTEMS C User's Guide
-@subtitle Edition @value{EDITION}, for RTEMS @value{VERSION}
-@sp 1
-@subtitle @value{UPDATED}
-@author On-Line Applications Research Corporation
-@page
-@include common/cpright.texi
-@end titlepage
-
-@c This prevents a black box from being printed on "overflow" lines.
-@c The alternative is to rework a sentence to avoid this problem.
-
-@contents
-
-@ifnottex
-@node Top, List of Figures, (dir), (dir)
-@top RTEMS Applications C User's Guide
-
-@menu
-* List of Figures::
-* Preface::
-* Overview::
-* Key Concepts::
-* RTEMS Data Types::
-* Scheduling Concepts::
-* Initialization Manager::
-* Task Manager::
-* Interrupt Manager::
-* Clock Manager::
-* Timer Manager::
-* Rate Monotonic Manager::
-* Semaphore Manager::
-* Barrier Manager::
-* Message Manager::
-* Event Manager::
-* Signal Manager::
-* Partition Manager::
-* Region Manager::
-* Dual-Ported Memory Manager::
-* I/O Manager::
-* Fatal Error Manager::
-* Board Support Packages::
-* User Extensions Manager::
-* Configuring a System::
-* Multiprocessing Manager::
-* Symmetric Multiprocessing Services::
-* PCI Library::
-* Stack Bounds Checker::
-* CPU Usage Statistics::
-* Object Services::
-* Chains::
-* Red-Black Trees::
-* Timespec Helpers::
-* Constant Bandwidth Server Scheduler API::
-* Directive Status Codes::
-* Linker Sets::
-* Example Application::
-* Glossary::
-* Command and Variable Index::
-* Concept Index::
-@end menu
-@end ifnottex
-
-@node List of Figures, Preface, Top, Top
-@unnumbered List of Figures
-@listoffloats Figure
-
-@include preface.texi
-@include overview.texi
-@include concepts.texi
-@include datatypes.texi
-@include schedule.texi
-@include init.texi
-@include task.texi
-@include intr.texi
-@include clock.texi
-@include timer.texi
-@include rtmon.texi
-@include sem.texi
-@include barrier.texi
-@include msg.texi
-@include event.texi
-@include signal.texi
-@include part.texi
-@include region.texi
-@include dpmem.texi
-@include io.texi
-@include fatal.texi
-@include bsp.texi
-@include userext.texi
-@include conf.texi
-@include mp.texi
-@include smp.texi
-@include libpci.texi
-@include stackchk.texi
-@include cpuuse.texi
-@include object.texi
-@include chains.texi
-@include rbtree.texi
-@include timespec.texi
-@include cbs.texi
-@include dirstat.texi
-@include linkersets.texi
-@include example.texi
-@include glossary.texi
-
-@node Command and Variable Index, Concept Index, Glossary, Top
-@unnumbered Command and Variable Index
-
-@printindex fn
-
-@c There are currently no Command and Variable Index entries.
-
-@node Concept Index, , Command and Variable Index, Top
-@unnumbered Concept Index
-
-@c There are currently no Concept Index entries.
-@printindex cp
-
-@bye
-
diff --git a/doc/user/cbs.t b/doc/user/cbs.t
deleted file mode 100644
index 52eec94780..0000000000
--- a/doc/user/cbs.t
+++ /dev/null
@@ -1,643 +0,0 @@
-@c
-@c COPYRIGHT (c) 2011.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Constant Bandwidth Server Scheduler API
-
-@cindex cbs
-
-@section Introduction
-
-Unlike simple schedulers, the Constant Bandwidth Server (CBS) requires
-a special API for tasks to indicate their scheduling parameters.
-The directives provided by the CBS API are:
-
-@itemize @bullet
-@item @code{@value{DIRPREFIX}cbs_initialize} - Initialize the CBS library
-@item @code{@value{DIRPREFIX}cbs_cleanup} - Cleanup the CBS library
-@item @code{@value{DIRPREFIX}cbs_create_server} - Create a new bandwidth server
-@item @code{@value{DIRPREFIX}cbs_attach_thread} - Attach a thread to server
-@item @code{@value{DIRPREFIX}cbs_detach_thread} - Detach a thread from server
-@item @code{@value{DIRPREFIX}cbs_destroy_server} - Destroy a bandwidth server
-@item @code{@value{DIRPREFIX}cbs_get_server_id} - Get an ID of a server
-@item @code{@value{DIRPREFIX}cbs_get_parameters} - Get scheduling parameters of a server
-@item @code{@value{DIRPREFIX}cbs_set_parameters} - Set scheduling parameters of a server
-@item @code{@value{DIRPREFIX}cbs_get_execution_time} - Get elapsed execution time
-@item @code{@value{DIRPREFIX}cbs_get_remaining_budget} - Get remainig execution time
-@item @code{@value{DIRPREFIX}cbs_get_approved_budget} - Get scheduler approved execution time
-@end itemize
-
-@section Background
-
-@subsection Constant Bandwidth Server Definitions
-
-@cindex CBS parameters
-
-@findex rtems_cbs_parameters
-
-The Constant Bandwidth Server API enables tasks to communicate with
-the scheduler and indicate its scheduling parameters. The scheduler
-has to be set up first (by defining @code{CONFIGURE_SCHEDULER_CBS} macro).
-
-The difference to a plain EDF is the presence of servers.
-It is a budget aware extention of the EDF scheduler, therefore, tasks
-attached to servers behave in a similar way as with EDF unless they
-exceed their budget.
-
-The intention of servers is reservation of a certain computation
-time (budget) of the processor for all subsequent periods. The structure
-@code{rtems_cbs_parameters} determines the behavior of
-a server. It contains @code{deadline} which is equal to period,
-and @code{budget} which is the time the server is allowed to
-spend on CPU per each period. The ratio between those two parameters
-yields the maximum percentage of the CPU the server can use
-(bandwidth). Moreover, thanks to this limitation the overall
-utilization of CPU is under control, and the sum of bandwidths
-of all servers in the system yields the overall reserved portion
-of processor. The rest is still available for ordinary tasks that
-are not attached to any server.
-
-In order to make the server effective to the executing tasks,
-tasks have to be attached to the servers. The
-@code{rtems_cbs_server_id} is a type denoting an id of a server
-and @code{rtems_id} a type for id of tasks.
-
-@subsection Handling Periodic Tasks
-
-@cindex CBS periodic tasks
-
-Each task's execution begins with a default background priority
-(see the chapter Scheduling Concepts to understand the concept of
-priorities in EDF). Once you decide the tasks should start periodic
-execution, you have two possibilities. Either you use only the Rate
-Monotonic manager which takes care of periodic behavior, or you declare
-deadline and budget using the CBS API in which case these properties
-are constant for all subsequent periods, unless you change them using
-the CBS API again. Task now only has to indicate and end of
-each period using @code{rtems_rate_monotonic_period}.
-
-@subsection Registering a Callback Function
-
-@cindex CBS overrun handler
-
-In case tasks attached to servers are not aware of their execution time
-and happen to exceed it, the scheduler does not guarantee execution any
-more and pulls the priority of the task to background, which would
-possibly lead to immediate preemption (if there is at least one ready
-task with a higher pirority). However, the task is not blocked but a
-callback function is invoked. The callback function
-(@code{rtems_cbs_budget_overrun}) might be optionally registered upon
-a server creation (@code{rtems_cbs_create_server}).
-
-This enables the user to define what should happen in case of budget
-overrun. There is obviously no space for huge operations because the
-priority is down and not real time any more, however, you still can at
-least in release resources for other tasks, restart the task or log an
-error information. Since the routine is called directly from kernel,
-use @code{printk()} instead of @code{printf()}.
-
-The calling convention of the callback function is:
-@ifset is-C
-@findex rtems_asr
-@example
-void overrun_handler(
- rtems_cbs_server_id server_id
-);
-@end example
-@end ifset
-
-@subsection Limitations
-
-@cindex CBS limitations
-
-When using this scheduler you have to keep in mind several things:
-
-@itemize @bullet
-@c it_limitations
-@item In the current implementation it is possible to attach only
-a single task to each server.
-@item If you have a task attached to a server and you voluntatily
-block it in the beginning of its execution, its priority will be
-probably pulled to background upon unblock, thus not guaranteed
-deadline any more. This is because you are effectively raising
-computation time of the task. When unbocking, you should be always
-sure that the ratio between remaining computation time and remaining
-deadline is not higher that the utilization you have agreed with the
-scheduler.
-@end itemize
-
-@section Operations
-
-@subsection Setting up a server
-
-The directive @code{rtems_cbs_create_server} is used to create a new
-server that is characterized by @code{rtems_cbs_parameters}. You also
-might want to register the @code{rtems_cbs_budget_overrun} callback
-routine. After this step tasks can be attached to the server. The directive
-@code{rtems_cbs_set_parameters} can change the scheduling parameters
-to avoid destroying and creating a new server again.
-
-@subsection Attaching Task to a Server
-
-If a task is attached to a server using @code{rtems_cbs_attach_thread},
-the task's computation time per period is limited by the server and
-the deadline (period) of task is equal to deadline of the server which
-means if you conclude a period using @code{rate_monotonic_period},
-the length of next period is always determined by the server's property.
-
-The task has a guaranteed bandwidth given by the server but should not
-exceed it, otherwise the priority is pulled to background until the
-start of next period and the @code{rtems_cbs_budget_overrun} callback
-function is invoked.
-
-When attaching a task to server, the preemptability flag of the task
-is raised, otherwise it would not be possible to control the execution
-of the task.
-
-@subsection Detaching Task from a Server
-
-The directive @code{rtems_cbs_detach_thread} is just an inverse
-operation to the previous one, the task continues its execution with
-the initial priority.
-
-Preemptability of the task is restored to the initial value.
-
-@subsection Examples
-
-The following example presents a simple common use of the API.
-
-You can see the initialization and cleanup call here, if there are
-multiple tasks in the system, it is obvious that the initialization
-should be called before creating the task.
-
-Notice also that in this case we decided to register an overrun handler,
-instead of which there could be @code{NULL}. This handler just prints
-a message to terminal, what else may be done here depends on a specific
-application.
-
-During the periodic execution, remaining budget should be watched
-to avoid overrun.
-
-@example
-void overrun_handler (
- rtems_cbs_server_id server_id
-)
-@{
- printk( "Budget overrun, fixing the task\n" );
- return;
-@}
-
-rtems_task Tasks_Periodic(
- rtems_task_argument argument
-)
-@{
- rtems_id rmid;
-
- rtems_cbs_server_id server_id;
- rtems_cbs_parameters params;
-
- params.deadline = 10;
- params.budget = 4;
-
- rtems_cbs_initialize();
-
- rtems_cbs_create_server( &params, &overrun_handler, &server_id )
-
- rtems_cbs_attach_thread( server_id, SELF );
-
- rtems_rate_monotonic_create( argument, &rmid );
-
- while ( 1 ) @{
- if (rtems_rate_monotonic_period(rmid, params.deadline)==RTEMS_TIMEOUT)
- break;
-
- /* Perform some periodic action */
- @}
-
- rtems_rate_monotonic_delete( rmid );
-
- rtems_cbs_cleanup();
- exit( 1 );
-@}
-@end example
-
-@section Directives
-
-This section details the Constant Bandwidth Server's directives.
-A subsection is dedicated to each of this manager's directives
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-@c
-@c
-@c
-@page
-@subsection CBS_INITIALIZE - Initialize the CBS library
-
-@cindex initialize the CBS library
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_cbs_initialize
-@example
-int rtems_cbs_initialize( void );
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}CBS_OK} - successful initialization@*
-@code{@value{RPREFIX}CBS_ERROR_NO_MEMORY} - not enough memory for data@*
-
-@subheading DESCRIPTION:
-
-This routine initializes the library in terms of allocating necessary memory
-for the servers. In case not enough memory is available in the system,
-@code{@value{RPREFIX}CBS_ERROR_NO_MEMORY} is returned, otherwise
-@code{@value{RPREFIX}CBS_OK}.
-
-@subheading NOTES:
-
-Additional memory per each server is allocated upon invocation of
-@code{rtems_cbs_create_server}.
-
-Tasks in the system are not influenced, they still keep executing
-with their initial parameters.
-
-@c
-@c
-@c
-@page
-@subsection CBS_CLEANUP - Cleanup the CBS library
-
-@cindex cleanup the CBS library
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_cbs_cleanup
-@example
-int rtems_cbs_cleanup( void );
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}CBS_OK} - always successful
-
-@subheading DESCRIPTION:
-
-This routine detaches all tasks from their servers, destroys all servers
-and returns memory back to the system.
-
-@subheading NOTES:
-
-All tasks continue executing with their initial priorities.
-
-@c
-@c
-@c
-@page
-@subsection CBS_CREATE_SERVER - Create a new bandwidth server
-
-@cindex create a new bandwidth server
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_cbs_create_server
-@example
-int rtems_cbs_create_server (
- rtems_cbs_parameters *params,
- rtems_cbs_budget_overrun budget_overrun_callback,
- rtems_cbs_server_id *server_id
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}CBS_OK} - successfully created@*
-@code{@value{RPREFIX}CBS_ERROR_NO_MEMORY} - not enough memory for data@*
-@code{@value{RPREFIX}CBS_ERROR_FULL} - maximum servers exceeded@*
-@code{@value{RPREFIX}CBS_ERROR_INVALID_PARAMETER} - invalid input argument@*
-
-@subheading DESCRIPTION:
-
-This routine prepares an instance of a constant bandwidth server.
-The input parameter @code{rtems_cbs_parameters} specifies scheduling
-parameters of the server (period and budget). If these are not valid,
-@code{@value{RPREFIX}CBS_ERROR_INVALID_PARAMETER} is returned.
-The @code{budget_overrun_callback} is an optional callback function, which is
-invoked in case the server's budget within one period is exceeded.
-Output parameter @code{server_id} becomes an id of the newly created server.
-If there is not enough memory, the @code{@value{RPREFIX}CBS_ERROR_NO_MEMORY}
-is returned. If the maximum server count in the system is exceeded,
-@code{@value{RPREFIX}CBS_ERROR_FULL} is returned.
-
-@subheading NOTES:
-
-No task execution is being influenced so far.
-
-@c
-@c
-@c
-@page
-@subsection CBS_ATTACH_THREAD - Attach a thread to server
-
-@cindex attach a thread to server
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_cbs_attach_thread
-@example
-int rtems_cbs_attach_thread (
- rtems_cbs_server_id server_id,
- rtems_id task_id
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}CBS_OK} - successfully attached@*
-@code{@value{RPREFIX}CBS_ERROR_FULL} - server maximum tasks exceeded@*
-@code{@value{RPREFIX}CBS_ERROR_INVALID_PARAMETER} - invalid input argument@*
-@code{@value{RPREFIX}CBS_ERROR_NOSERVER} - server is not valid@*
-
-@subheading DESCRIPTION:
-
-Attaches a task (@code{task_id}) to a server (@code{server_id}).
-The server has to be previously created. Now, the task starts
-to be scheduled according to the server parameters and not
-using initial priority. This implementation allows only one task
-per server, if the user tries to bind another task to the same
-server, @code{@value{RPREFIX}CBS_ERROR_FULL} is returned.
-
-@subheading NOTES:
-
-Tasks attached to servers become preemptible.
-
-@c
-@c
-@c
-@page
-@subsection CBS_DETACH_THREAD - Detach a thread from server
-
-@cindex detach a thread from server
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_cbs_detach_thread
-@example
-int rtems_cbs_detach_thread (
- rtems_cbs_server_id server_id,
- rtems_id task_id
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}CBS_OK} - successfully detached@*
-@code{@value{RPREFIX}CBS_ERROR_INVALID_PARAMETER} - invalid input argument@*
-@code{@value{RPREFIX}CBS_ERROR_NOSERVER} - server is not valid@*
-
-@subheading DESCRIPTION:
-
-This directive detaches a thread from server. The task continues its
-execution with initial priority.
-
-@subheading NOTES:
-
-The server can be reused for any other task.
-
-@c
-@c
-@c
-@page
-@subsection CBS_DESTROY_SERVER - Destroy a bandwidth server
-
-@cindex destroy a bandwidth server
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_cbs_destroy_server
-@example
-int rtems_cbs_destroy_server (
- rtems_cbs_server_id server_id
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}CBS_OK} - successfully destroyed@*
-@code{@value{RPREFIX}CBS_ERROR_INVALID_PARAMETER} - invalid input argument@*
-@code{@value{RPREFIX}CBS_ERROR_NOSERVER} - server is not valid@*
-
-@subheading DESCRIPTION:
-
-This directive destroys a server. If any task was attached to the server,
-the task is detached and continues its execution according to EDF rules
-with initial properties.
-
-@subheading NOTES:
-
-This again enables one more task to be created.
-
-@c
-@c
-@c
-@page
-@subsection CBS_GET_SERVER_ID - Get an ID of a server
-
-@cindex get an ID of a server
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_cbs_get_server_id
-@example
-int rtems_cbs_get_server_id (
- rtems_id task_id,
- rtems_cbs_server_id *server_id
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}CBS_OK} - successful@*
-@code{@value{RPREFIX}CBS_ERROR_NOSERVER} - server is not valid@*
-
-@subheading DESCRIPTION:
-
-This directive returns an id of server belonging to a given task.
-
-@c
-@c
-@c
-@page
-@subsection CBS_GET_PARAMETERS - Get scheduling parameters of a server
-
-@cindex get scheduling parameters of a server
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_cbs_get_parameters
-@example
-rtems_cbs_get_parameters (
- rtems_cbs_server_id server_id,
- rtems_cbs_parameters *params
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}CBS_OK} - successful@*
-@code{@value{RPREFIX}CBS_ERROR_INVALID_PARAMETER} - invalid input argument@*
-@code{@value{RPREFIX}CBS_ERROR_NOSERVER} - server is not valid@*
-
-@subheading DESCRIPTION:
-
-This directive returns a structure with current scheduling parameters
-of a given server (period and execution time).
-
-@subheading NOTES:
-
-It makes no difference if any task is assigned or not.
-
-@c
-@c
-@c
-@page
-@subsection CBS_SET_PARAMETERS - Set scheduling parameters
-
-@cindex set scheduling parameters
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_cbs_set_parameters
-@example
-int rtems_cbs_set_parameters (
- rtems_cbs_server_id server_id,
- rtems_cbs_parameters *params
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}CBS_OK} - successful@*
-@code{@value{RPREFIX}CBS_ERROR_INVALID_PARAMETER} - invalid input argument@*
-@code{@value{RPREFIX}CBS_ERROR_NOSERVER} - server is not valid@*
-
-@subheading DESCRIPTION:
-
-This directive sets new scheduling parameters to the server. This operation
-can be performed regardless of whether a task is assigned or not.
-If a task is assigned, the parameters become effective imediately, therefore it
-is recommended to apply the change between two subsequent periods.
-
-@subheading NOTES:
-
-There is an upper limit on both period and budget equal to (2^31)-1 ticks.
-
-@c
-@c
-@c
-@page
-@subsection CBS_GET_EXECUTION_TIME - Get elapsed execution time
-
-@cindex get elapsed execution time
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_cbs_get_execution_time
-@example
-int rtems_cbs_get_execution_time (
- rtems_cbs_server_id server_id,
- time_t *exec_time,
- time_t *abs_time
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}CBS_OK} - successful@*
-@code{@value{RPREFIX}CBS_ERROR_INVALID_PARAMETER} - invalid input argument@*
-@code{@value{RPREFIX}CBS_ERROR_NOSERVER} - server is not valid@*
-
-@subheading DESCRIPTION:
-
-This routine returns consumed execution time (@code{exec_time}) of a server
-during the current period.
-
-@subheading NOTES:
-
-Absolute time (@code{abs_time}) not supported now.
-
-@c
-@c
-@c
-@page
-@subsection CBS_GET_REMAINING_BUDGET - Get remaining execution time
-
-@cindex get remaining execution time
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_cbs_get_remaining_budget
-@example
-int rtems_cbs_get_remaining_budget (
- rtems_cbs_server_id server_id,
- time_t *remaining_budget
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}CBS_OK} - successful@*
-@code{@value{RPREFIX}CBS_ERROR_INVALID_PARAMETER} - invalid input argument@*
-@code{@value{RPREFIX}CBS_ERROR_NOSERVER} - server is not valid@*
-
-@subheading DESCRIPTION:
-
-This directive returns remaining execution time of a given server for
-current period.
-
-@subheading NOTES:
-
-If the execution time approaches zero, the assigned task should finish
-computations of the current period.
-
-@c
-@c
-@c
-@page
-@subsection CBS_GET_APPROVED_BUDGET - Get scheduler approved execution time
-
-@cindex get scheduler approved execution time
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_cbs_get_approved_budget
-@example
-int rtems_cbs_get_approved_budget (
- rtems_cbs_server_id server_id,
- time_t *appr_budget
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}CBS_OK} - successful@*
-@code{@value{RPREFIX}CBS_ERROR_INVALID_PARAMETER} - invalid input argument@*
-@code{@value{RPREFIX}CBS_ERROR_NOSERVER} - server is not valid@*
-
-@subheading DESCRIPTION:
-
-This directive returns server's approved budget for subsequent periods.
diff --git a/doc/user/chains.t b/doc/user/chains.t
deleted file mode 100644
index 79e5984ffb..0000000000
--- a/doc/user/chains.t
+++ /dev/null
@@ -1,800 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2008.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Chains
-
-@cindex chains
-
-@section Introduction
-
-The Chains API is an interface to the Super Core (score) chain
-implementation. The Super Core uses chains for all list type
-functions. This includes wait queues and task queues. The Chains API
-provided by RTEMS is:
-
-@itemize @bullet
-@c build_id
-@item @code{@value{DIRPREFIX}chain_node} - Chain node used in user objects
-@item @code{@value{DIRPREFIX}chain_control} - Chain control node
-@item @code{@value{DIRPREFIX}chain_initialize} - initialize the chain with nodes
-@item @code{@value{DIRPREFIX}chain_initialize_empty} - initialize the chain as empty
-@item @code{@value{DIRPREFIX}chain_is_null_node} - Is the node NULL ?
-@item @code{@value{DIRPREFIX}chain_head} - Return the chain's head
-@item @code{@value{DIRPREFIX}chain_tail} - Return the chain's tail
-@item @code{@value{DIRPREFIX}chain_are_nodes_equal} - Are the node's equal ?
-@item @code{@value{DIRPREFIX}chain_is_empty} - Is the chain empty ?
-@item @code{@value{DIRPREFIX}chain_is_first} - Is the Node the first in the chain ?
-@item @code{@value{DIRPREFIX}chain_is_last} - Is the Node the last in the chain ?
-@item @code{@value{DIRPREFIX}chain_has_only_one_node} - Does the node have one node ?
-@item @code{@value{DIRPREFIX}chain_node_count_unprotected} - Returns the node count of the chain (unprotected)
-@item @code{@value{DIRPREFIX}chain_is_head} - Is the node the head ?
-@item @code{@value{DIRPREFIX}chain_is_tail} - Is the node the tail ?
-@item @code{@value{DIRPREFIX}chain_extract} - Extract the node from the chain
-@item @code{@value{DIRPREFIX}chain_extract_unprotected} - Extract the node from the chain (unprotected)
-@item @code{@value{DIRPREFIX}chain_get} - Return the first node on the chain
-@item @code{@value{DIRPREFIX}chain_get_unprotected} - Return the first node on the chain (unprotected)
-@item @code{@value{DIRPREFIX}chain_get_first_unprotected} - Get the first node on the chain (unprotected)
-@item @code{@value{DIRPREFIX}chain_insert} - Insert the node into the chain
-@item @code{@value{DIRPREFIX}chain_insert_unprotected} - Insert the node into the chain (unprotected)
-@item @code{@value{DIRPREFIX}chain_append} - Append the node to chain
-@item @code{@value{DIRPREFIX}chain_append_unprotected} - Append the node to chain (unprotected)
-@item @code{@value{DIRPREFIX}chain_prepend} - Prepend the node to the end of the chain
-@item @code{@value{DIRPREFIX}chain_prepend_unprotected} - Prepend the node to chain (unprotected)
-@end itemize
-
-@section Background
-
-The Chains API maps to the Super Core Chains API. Chains are
-implemented as a double linked list of nodes anchored to a control
-node. The list starts at the control node and is terminated at the
-control node. A node has previous and next pointers. Being a double
-linked list nodes can be inserted and removed without the need to
-travse the chain.
-
-Chains have a small memory footprint and can be used in interrupt
-service routines and are thread safe in a multi-threaded
-environment. The directives list which operations disable interrupts.
-
-Chains are very useful in Board Support packages and applications.
-
-@subsection Nodes
-
-A chain is made up from nodes that orginate from a chain control
-object. A node is of type @code{@value{DIRPREFIX}chain_node}. The node
-is designed to be part of a user data structure and a cast is used to
-move from the node address to the user data structure address. For
-example:
-
-@example
-typedef struct foo
-@{
- @value{DIRPREFIX}chain_node node;
- int bar;
-@} foo;
-@end example
-
-creates a type @code{foo} that can be placed on a chain. To get the
-foo structure from the list you perform the following:
-
-@example
-foo* get_foo(@value{DIRPREFIX}chain_control* control)
-@{
- return (foo*) @value{DIRPREFIX}chain_get(control);
-@}
-@end example
-
-The node is placed at the start of the user's structure to allow the
-node address on the chain to be easly cast to the user's structure
-address.
-
-@subsection Controls
-
-A chain is anchored with a control object. Chain control provide the
-user with access to the nodes on the chain. The control is head of the
-node.
-
-
-@example
- Control
- first ------------------------>
- permanent_null <--------------- NODE
- last ------------------------->
-@end example
-
-The implementation does not require special checks for manipulating
-the first and last nodes on the chain. To accomplish this the
-@code{@value{DIRPREFIX}chain_control} structure is treated as two
-overlapping @code{@value{DIRPREFIX}chain_node} structures. The
-permanent head of the chain overlays a node structure on the first and
-@code{permanent_null} fields. The @code{permanent_tail} of the chain
-overlays a node structure on the @code{permanent_null} and @code{last}
-elements of the structure.
-
-@section Operations
-
-@subsection Multi-threading
-
-Chains are designed to be used in a multi-threading environment. The
-directives list which operations mask interrupts. Chains supports
-tasks and interrupt service routines appending and extracting nodes
-with out the need for extra locks. Chains how-ever cannot insure the
-integrity of a chain for all operations. This is the responsibility of
-the user. For example an interrupt service routine extracting nodes
-while a task is iterating over the chain can have unpredictable
-results.
-
-@subsection Creating a Chain
-
-To create a chain you need to declare a chain control then add nodes
-to the control. Consider a user structure and chain control:
-
-@example
-typedef struct foo
-@{
- @value{DIRPREFIX}chain_node node;
- uint8_t char* data;
-@} foo;
-
-@value{DIRPREFIX}chain_control chain;
-@end example
-
-Add nodes with the following code:
-
-@example
-@value{DIRPREFIX}chain_initialize_empty (&chain);
-
-for (i = 0; i < count; i++)
-@{
- foo* bar = malloc (sizeof (foo));
- if (!bar)
- return -1;
- bar->data = malloc (size);
- @value{DIRPREFIX}chain_append (&chain, &bar->node);
-@}
-@end example
-
-The chain is initialized and the nodes allocated and appended to the
-chain. This is an example of a pool of buffers.
-
-@subsection Iterating a Chain
-
-@cindex chain iterate
-
-Iterating a chain is a common function. The example shows how to
-iterate the buffer pool chain created in the last section to find
-buffers starting with a specific string. If the buffer is located it is
-extracted from the chain and placed on another chain:
-
-@example
-void foobar (const char* match,
- @value{DIRPREFIX}chain_control* chain,
- @value{DIRPREFIX}chain_control* out)
-@{
- @value{DIRPREFIX}chain_node* node;
- foo* bar;
-
- @value{DIRPREFIX}chain_initialize_empty (out);
-
- node = chain->first;
-
- while (!@value{DIRPREFIX}chain_is_tail (chain, node))
- @{
- bar = (foo*) node;
- rtems_chain_node* next_node = node->next;
-
- if (strcmp (match, bar->data) == 0)
- @{
- @value{DIRPREFIX}chain_extract (node);
- @value{DIRPREFIX}chain_append (out, node);
- @}
-
- node = next_node;
- @}
-@}
-@end example
-
-@section Directives
-
-The section details the Chains directives.
-
-@c
-@c Initialize this Chain With Nodes
-@c
-@page
-@subsection Initialize Chain With Nodes
-
-@cindex chain initialize
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex @value{DIRPREFIX}chain_initialize
-@example
-void @value{DIRPREFIX}chain_initialize(
- @value{DIRPREFIX}chain_control *the_chain,
- void *starting_address,
- size_t number_nodes,
- size_t node_size
-)
-@end example
-@end ifset
-
-@subheading RETURNS
-
-Returns nothing.
-
-@subheading DESCRIPTION:
-
-This function take in a pointer to a chain control and initializes it
-to contain a set of chain nodes. The chain will contain @code{number_nodes}
-chain nodes from the memory pointed to by @code{start_address}. Each node
-is assumed to be @code{node_size} bytes.
-
-@subheading NOTES:
-
-This call will discard any nodes on the chain.
-
-This call does NOT inititialize any user data on each node.
-
-@c
-@c Initialize this Chain as Empty
-@c
-@page
-@subsection Initialize Empty
-
-@cindex chain initialize empty
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex @value{DIRPREFIX}chain_initialize_empty
-@example
-void @value{DIRPREFIX}chain_initialize_empty(
- @value{DIRPREFIX}chain_control *the_chain
-);
-@end example
-@end ifset
-
-@subheading RETURNS
-
-Returns nothing.
-
-@subheading DESCRIPTION:
-
-This function take in a pointer to a chain control and initializes it
-to empty.
-
-@subheading NOTES:
-
-This call will discard any nodes on the chain.
-
-@c
-@c
-@c
-@page
-@subsection Is Null Node ?
-
-@cindex chain is node null
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex @value{DIRPREFIX}chain_is_null_node
-@example
-bool @value{DIRPREFIX}chain_is_null_node(
- const @value{DIRPREFIX}chain_node *the_node
-);
-@end example
-@end ifset
-
-@subheading RETURNS
-
-Returns @code{true} is the node point is NULL and @code{false} if the node is not
-NULL.
-
-@subheading DESCRIPTION:
-
-Tests the node to see if it is a NULL returning @code{true} if a null.
-
-@c
-@c
-@c
-@page
-@subsection Head
-
-@cindex chain get head
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex @value{DIRPREFIX}chain_head
-@example
-@value{DIRPREFIX}chain_node *@value{DIRPREFIX}chain_head(
- @value{DIRPREFIX}chain_control *the_chain
-)
-@end example
-@end ifset
-
-@subheading RETURNS
-
-Returns the permanent head node of the chain.
-
-@subheading DESCRIPTION:
-
-This function returns a pointer to the first node on the chain.
-
-@c
-@c
-@c
-@page
-@subsection Tail
-
-@cindex chain get tail
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex @value{DIRPREFIX}chain_tail
-@example
-@value{DIRPREFIX}chain_node *@value{DIRPREFIX}chain_tail(
- @value{DIRPREFIX}chain_control *the_chain
-);
-@end example
-@end ifset
-
-@subheading RETURNS
-
-Returns the permanent tail node of the chain.
-
-@subheading DESCRIPTION:
-
-This function returns a pointer to the last node on the chain.
-
-@c
-@c
-@c
-@page
-@subsection Are Two Nodes Equal ?
-
-@cindex chare are nodes equal
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex @value{DIRPREFIX}chain_are_nodes_equal
-@example
-bool @value{DIRPREFIX}chain_are_nodes_equal(
- const @value{DIRPREFIX}chain_node *left,
- const @value{DIRPREFIX}chain_node *right
-);
-@end example
-@end ifset
-
-@subheading RETURNS
-
-This function returns @code{true} if the left node and the right node are
-equal, and @code{false} otherwise.
-
-@subheading DESCRIPTION:
-
-This function returns @code{true} if the left node and the right node are
-equal, and @code{false} otherwise.
-
-@c
-@c
-@c
-@page
-@subsection Is the Chain Empty
-
-@cindex chain is chain empty
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex @value{DIRPREFIX}chain_is_empty
-@example
-bool @value{DIRPREFIX}chain_is_empty(
- @value{DIRPREFIX}chain_control *the_chain
-);
-@end example
-@end ifset
-
-@subheading RETURNS
-
-This function returns @code{true} if there a no nodes on the chain and @code{false}
-otherwise.
-
-@subheading DESCRIPTION:
-
-This function returns @code{true} if there a no nodes on the chain and @code{false}
-otherwise.
-
-@c
-@c
-@c
-@page
-@subsection Is this the First Node on the Chain ?
-
-@cindex chain is node the first
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex @value{DIRPREFIX}chain_is_first
-@example
-bool @value{DIRPREFIX}chain_is_first(
- const @value{DIRPREFIX}chain_node *the_node
-);
-@end example
-@end ifset
-
-@subheading RETURNS
-
-This function returns @code{true} if the node is the first node on a chain
-and @code{false} otherwise.
-
-@subheading DESCRIPTION:
-
-This function returns @code{true} if the node is the first node on a chain
-and @code{false} otherwise.
-
-@c
-@c
-@c
-@page
-@subsection Is this the Last Node on the Chain ?
-
-@cindex chain is node the last
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex @value{DIRPREFIX}chain_is_last
-@example
-bool @value{DIRPREFIX}chain_is_last(
- const @value{DIRPREFIX}chain_node *the_node
-);
-@end example
-@end ifset
-
-@subheading RETURNS
-
-This function returns @code{true} if the node is the last node on a chain and
-@code{false} otherwise.
-
-@subheading DESCRIPTION:
-
-This function returns @code{true} if the node is the last node on a chain and
-@code{false} otherwise.
-
-@c
-@c
-@c
-@page
-@subsection Does this Chain have only One Node ?
-
-@cindex chain only one node
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex @value{DIRPREFIX}chain_has_only_one_node
-@example
-bool @value{DIRPREFIX}chain_has_only_one_node(
- const @value{DIRPREFIX}chain_control *the_chain
-);
-@end example
-@end ifset
-
-@subheading RETURNS
-
-This function returns @code{true} if there is only one node on the chain and
-@code{false} otherwise.
-
-@subheading DESCRIPTION:
-
-This function returns @code{true} if there is only one node on the chain and
-@code{false} otherwise.
-
-@c
-@c
-@c
-@page
-@subsection Returns the node count of the chain (unprotected)
-
-@cindex chain only one node
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex @value{DIRPREFIX}chain_node_count_unprotected
-@example
-size_t @value{DIRPREFIX}chain_node_count_unprotected(
- const @value{DIRPREFIX}chain_control *the_chain
-);
-@end example
-@end ifset
-
-@subheading RETURNS
-
-This function returns the node count of the chain.
-
-@subheading DESCRIPTION:
-
-This function returns the node count of the chain.
-
-@c
-@c
-@c
-@page
-@subsection Is this Node the Chain Head ?
-
-@cindex chain is node the head
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex @value{DIRPREFIX}chain_is_head
-@example
-bool @value{DIRPREFIX}chain_is_head(
- @value{DIRPREFIX}chain_control *the_chain,
- @value{DIRPREFIX}const chain_node *the_node
-);
-@end example
-@end ifset
-
-@subheading RETURNS
-
-This function returns @code{true} if the node is the head of the chain and
-@code{false} otherwise.
-
-@subheading DESCRIPTION:
-
-This function returns @code{true} if the node is the head of the chain and
-@code{false} otherwise.
-
-@c
-@c
-@c
-@page
-@subsection Is this Node the Chain Tail ?
-
-@cindex chain is node the tail
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex @value{DIRPREFIX}chain_is_tail
-@example
-bool @value{DIRPREFIX}chain_is_tail(
- @value{DIRPREFIX}chain_control *the_chain,
- const @value{DIRPREFIX}chain_node *the_node
-)
-@end example
-@end ifset
-
-@subheading RETURNS
-
-This function returns @code{true} if the node is the tail of the chain and
-@code{false} otherwise.
-
-@subheading DESCRIPTION:
-
-This function returns @code{true} if the node is the tail of the chain and
-@code{false} otherwise.
-
-@c
-@c
-@c
-@page
-@subsection Extract a Node
-
-@cindex chain extract a node
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex @value{DIRPREFIX}chain_extract
-@example
-void @value{DIRPREFIX}chain_extract(
- @value{DIRPREFIX}chain_node *the_node
-);
-@end example
-@end ifset
-
-@subheading RETURNS
-
-Returns nothing.
-
-@subheading DESCRIPTION:
-
-This routine extracts the node from the chain on which it resides.
-
-@subheading NOTES:
-
-Interrupts are disabled while extracting the node to ensure the
-atomicity of the operation.
-
-Use @code{@value{DIRPREFIX}chain_extract_unprotected()} to avoid disabling of
-interrupts.
-
-@c
-@c
-@c
-@page
-@subsection Get the First Node
-
-@cindex chain get first node
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex @value{DIRPREFIX}chain_get
-@example
-@value{DIRPREFIX}chain_node *@value{DIRPREFIX}chain_get(
- @value{DIRPREFIX}chain_control *the_chain
-);
-@end example
-@end ifset
-
-@subheading RETURNS
-
-Returns a pointer a node. If a node was removed, then a pointer to
-that node is returned. If the chain was empty, then NULL is
-returned.
-
-@subheading DESCRIPTION:
-
-This function removes the first node from the chain and returns a
-pointer to that node. If the chain is empty, then NULL is returned.
-
-@subheading NOTES:
-
-Interrupts are disabled while obtaining the node to ensure the
-atomicity of the operation.
-
-Use @code{@value{DIRPREFIX}chain_get_unprotected()} to avoid disabling of
-interrupts.
-
-@c
-@c
-@c
-@page
-@subsection Get the First Node (unprotected)
-
-@cindex chain get first node
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex @value{DIRPREFIX}chain_get_first_unprotected
-@example
-@value{DIRPREFIX}chain_node *@value{DIRPREFIX}chain_get_first_unprotected(
- @value{DIRPREFIX}chain_control *the_chain
-);
-@end example
-@end ifset
-
-@subheading RETURNS:
-
-A pointer to the former first node is returned.
-
-@subheading DESCRIPTION:
-
-Removes the first node from the chain and returns a pointer to it. In case the
-chain was empty, then the results are unpredictable.
-
-@subheading NOTES:
-
-The function does nothing to ensure the atomicity of the operation.
-
-@c
-@c
-@c
-@page
-@subsection Insert a Node
-
-@cindex chain insert a node
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex @value{DIRPREFIX}chain_insert
-@example
-void @value{DIRPREFIX}chain_insert(
- @value{DIRPREFIX}chain_node *after_node,
- @value{DIRPREFIX}chain_node *the_node
-);
-@end example
-@end ifset
-
-@subheading RETURNS
-
-Returns nothing.
-
-@subheading DESCRIPTION:
-
-This routine inserts a node on a chain immediately following the
-specified node.
-
-@subheading NOTES:
-
-Interrupts are disabled during the insert to ensure the atomicity of
-the operation.
-
-Use @code{@value{DIRPREFIX}chain_insert_unprotected()} to avoid disabling of
-interrupts.
-
-@c
-@c
-@c
-@page
-@subsection Append a Node
-
-@cindex chain append a node
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex @value{DIRPREFIX}chain_append
-@example
-void @value{DIRPREFIX}chain_append(
- @value{DIRPREFIX}chain_control *the_chain,
- @value{DIRPREFIX}chain_node *the_node
-);
-@end example
-@end ifset
-
-@subheading RETURNS
-
-Returns nothing.
-
-@subheading DESCRIPTION:
-
-This routine appends a node to the end of a chain.
-
-@subheading NOTES:
-
-Interrupts are disabled during the append to ensure the atomicity of
-the operation.
-
-Use @code{@value{DIRPREFIX}chain_append_unprotected()} to avoid disabling of
-interrupts.
-
-@c
-@c
-@c
-@page
-@subsection Prepend a Node
-
-@cindex prepend node
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex @value{DIRPREFIX}chain_prepend
-@example
-void @value{DIRPREFIX}chain_prepend(
- @value{DIRPREFIX}chain_control *the_chain,
- @value{DIRPREFIX}chain_node *the_node
-);
-@end example
-@end ifset
-
-@subheading RETURNS
-
-Returns nothing.
-
-@subheading DESCRIPTION:
-
-This routine prepends a node to the front of the chain.
-
-@subheading NOTES:
-
-Interrupts are disabled during the prepend to ensure the atomicity of
-the operation.
-
-Use @code{@value{DIRPREFIX}chain_prepend_unprotected()} to avoid disabling of
-interrupts.
diff --git a/doc/user/clock.t b/doc/user/clock.t
deleted file mode 100644
index f67003c5f8..0000000000
--- a/doc/user/clock.t
+++ /dev/null
@@ -1,956 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2008
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Clock Manager
-
-@cindex clock
-
-@section Introduction
-
-The clock manager provides support for time of day
-and other time related capabilities. The directives provided by
-the clock manager are:
-
-@itemize @bullet
-@item @code{@value{DIRPREFIX}clock_set} - Set date and time
-@item @code{@value{DIRPREFIX}clock_get} - Get date and time information
-@item @code{@value{DIRPREFIX}clock_get_tod} - Get date and time in TOD format
-@item @code{@value{DIRPREFIX}clock_get_tod_timeval} - Get date and time in timeval format
-@item @code{@value{DIRPREFIX}clock_get_seconds_since_epoch} - Get seconds since epoch
-@item @code{@value{DIRPREFIX}clock_get_ticks_per_second} - Get ticks per second
-@item @code{@value{DIRPREFIX}clock_get_ticks_since_boot} - Get current ticks counter value
-@item @code{@value{DIRPREFIX}clock_tick_later} - Get tick value in the future
-@item @code{@value{DIRPREFIX}clock_tick_later_usec} - Get tick value in the future in microseconds
-@item @code{@value{DIRPREFIX}clock_tick_before} - Is tick value is before a point in time
-@item @code{@value{DIRPREFIX}clock_get_uptime} - Get time since boot
-@item @code{@value{DIRPREFIX}clock_get_uptime_timeval} - Get time since boot in timeval format
-@item @code{@value{DIRPREFIX}clock_get_uptime_seconds} - Get seconds since boot
-@item @code{@value{DIRPREFIX}clock_get_uptime_nanoseconds} - Get nanoseconds since boot
-@item @code{@value{DIRPREFIX}clock_set_nanoseconds_extension} - Install the nanoseconds since last tick handler
-@item @code{@value{DIRPREFIX}clock_tick} - Announce a clock tick
-@end itemize
-
-@section Background
-
-@subsection Required Support
-
-For the features provided by the clock manager to be
-utilized, periodic timer interrupts are required. Therefore, a
-real-time clock or hardware timer is necessary to create the
-timer interrupts. The @code{@value{DIRPREFIX}clock_tick}
-directive is normally called
-by the timer ISR to announce to RTEMS that a system clock tick
-has occurred. Elapsed time is measured in ticks. A tick is
-defined to be an integral number of microseconds which is
-specified by the user in the Configuration Table.
-
-@subsection Time and Date Data Structures
-
-The clock facilities of the clock manager operate
-upon calendar time. These directives utilize the following date
-and time @value{STRUCTURE} for the native time and date format:
-
-
-@ifset is-C
-@findex rtems_time_of_day
-@example
-struct rtems_tod_control @{
- uint32_t year; /* greater than 1987 */
- uint32_t month; /* 1 - 12 */
- uint32_t day; /* 1 - 31 */
- uint32_t hour; /* 0 - 23 */
- uint32_t minute; /* 0 - 59 */
- uint32_t second; /* 0 - 59 */
- uint32_t ticks; /* elapsed between seconds */
-@};
-
-typedef struct rtems_tod_control rtems_time_of_day;
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-type Time_Of_Day is
- record
- Year : RTEMS.Unsigned32; -- year, A.D.
- Month : RTEMS.Unsigned32; -- month, 1 .. 12
- Day : RTEMS.Unsigned32; -- day, 1 .. 31
- Hour : RTEMS.Unsigned32; -- hour, 0 .. 23
- Minute : RTEMS.Unsigned32; -- minute, 0 .. 59
- Second : RTEMS.Unsigned32; -- second, 0 .. 59
- Ticks : RTEMS.Unsigned32; -- elapsed ticks between seconds
- end record;
-@end example
-@end ifset
-
-
-The native date and time format is the only format
-supported when setting the system date and time using the
-@code{@value{DIRPREFIX}clock_set} directive. Some applications
-expect to operate on a "UNIX-style" date and time data structure. The
-@code{@value{DIRPREFIX}clock_get_tod_timeval} always returns
-the date and time in @code{struct timeval} format. The
-@code{@value{DIRPREFIX}clock_get} directive can optionally return
-the current date and time in this format.
-
-The @code{struct timeval} data structure has two fields: @code{tv_sec}
-and @code{tv_usec} which are seconds and microseconds, respectively.
-The @code{tv_sec} field in this data structure is the number of seconds
-since the POSIX epoch of January 1, 1970 but will never be prior to
-the RTEMS epoch of January 1, 1988.
-
-@subsection Clock Tick and Timeslicing
-
-@cindex timeslicing
-
-Timeslicing is a task scheduling discipline in which
-tasks of equal priority are executed for a specific period of
-time before control of the CPU is passed to another task. It is
-also sometimes referred to as the automatic round-robin
-scheduling algorithm. The length of time allocated to each task
-is known as the quantum or timeslice.
-
-The system's timeslice is defined as an integral
-number of ticks, and is specified in the Configuration Table.
-The timeslice is defined for the entire system of tasks, but
-timeslicing is enabled and disabled on a per task basis.
-
-The @code{@value{DIRPREFIX}clock_tick}
-directive implements timeslicing by
-decrementing the running task's time-remaining counter when both
-timeslicing and preemption are enabled. If the task's timeslice
-has expired, then that task will be preempted if there exists a
-ready task of equal priority.
-
-@subsection Delays
-
-@cindex delays
-
-A sleep timer allows a task to delay for a given
-interval or up until a given time, and then wake and continue
-execution. This type of timer is created automatically by the
-@code{@value{DIRPREFIX}task_wake_after}
-and @code{@value{DIRPREFIX}task_wake_when} directives and, as a result,
-does not have an RTEMS ID. Once activated, a sleep timer cannot
-be explicitly deleted. Each task may activate one and only one
-sleep timer at a time.
-
-@subsection Timeouts
-
-@cindex timeouts
-
-Timeouts are a special type of timer automatically
-created when the timeout option is used on the
-@code{@value{DIRPREFIX}message_queue_receive},
-@code{@value{DIRPREFIX}event_receive},
-@code{@value{DIRPREFIX}semaphore_obtain} and
-@code{@value{DIRPREFIX}region_get_segment} directives.
-Each task may have one and only one timeout active at a time.
-When a timeout expires, it unblocks the task with a timeout status code.
-
-@section Operations
-
-@subsection Announcing a Tick
-
-RTEMS provides the @code{@value{DIRPREFIX}clock_tick} directive which is
-called from the user's real-time clock ISR to inform RTEMS that
-a tick has elapsed. The tick frequency value, defined in
-microseconds, is a configuration parameter found in the
-Configuration Table. RTEMS divides one million microseconds
-(one second) by the number of microseconds per tick to determine
-the number of calls to the
-@code{@value{DIRPREFIX}clock_tick} directive per second. The
-frequency of @code{@value{DIRPREFIX}clock_tick}
-calls determines the resolution
-(granularity) for all time dependent RTEMS actions. For
-example, calling @code{@value{DIRPREFIX}clock_tick}
-ten times per second yields a higher
-resolution than calling @code{@value{DIRPREFIX}clock_tick}
-two times per second. The @code{@value{DIRPREFIX}clock_tick}
-directive is responsible for maintaining both
-calendar time and the dynamic set of timers.
-
-@subsection Setting the Time
-
-The @code{@value{DIRPREFIX}clock_set} directive allows a task or an ISR to
-set the date and time maintained by RTEMS. If setting the date
-and time causes any outstanding timers to pass their deadline,
-then the expired timers will be fired during the invocation of
-the @code{@value{DIRPREFIX}clock_set} directive.
-
-@subsection Obtaining the Time
-
-The @code{@value{DIRPREFIX}clock_get} directive allows a task or an ISR to
-obtain the current date and time or date and time related
-information. The current date and time can be returned in
-either native or UNIX-style format. Additionally, the
-application can obtain date and time related information such as
-the number of seconds since the RTEMS epoch, the number of ticks
-since the executive was initialized, and the number of ticks per
-second. The information returned by the
-@code{@value{DIRPREFIX}clock_get} directive is
-dependent on the option selected by the caller. This
-is specified using one of the following constants
-associated with the enumerated type
-@code{@value{DIRPREFIX}clock_get_options}:
-
-@findex rtems_clock_get_options
-
-@itemize @bullet
-@item @code{@value{RPREFIX}CLOCK_GET_TOD} - obtain native style date and time
-
-@item @code{@value{RPREFIX}CLOCK_GET_TIME_VALUE} - obtain UNIX-style
-date and time
-
-@item @code{@value{RPREFIX}CLOCK_GET_TICKS_SINCE_BOOT} - obtain number of ticks
-since RTEMS was initialized
-
-@item @code{@value{RPREFIX}CLOCK_GET_SECONDS_SINCE_EPOCH} - obtain number
-of seconds since RTEMS epoch
-
-@item @code{@value{RPREFIX}CLOCK_GET_TICKS_PER_SECOND} - obtain number of clock
-ticks per second
-
-@end itemize
-
-Calendar time operations will return an error code if
-invoked before the date and time have been set.
-
-@section Directives
-
-This section details the clock manager's directives.
-A subsection is dedicated to each of this manager's directives
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-@c
-@c
-@c
-@page
-@subsection CLOCK_SET - Set date and time
-
-@subheading CALLING SEQUENCE:
-
-@cindex set the time of day
-
-@ifset is-C
-@findex rtems_clock_set
-@example
-rtems_status_code rtems_clock_set(
- rtems_time_of_day *time_buffer
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Clock_Set (
- Time_Buffer : in RTEMS.Time_Of_Day;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - date and time set successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{time_buffer} is NULL@*
-@code{@value{RPREFIX}INVALID_CLOCK} - invalid time of day
-
-@subheading DESCRIPTION:
-
-This directive sets the system date and time. The
-date, time, and ticks in the time_buffer @value{STRUCTURE} are all
-range-checked, and an error is returned if any one is out of its
-valid range.
-
-@subheading NOTES:
-
-Years before 1988 are invalid.
-
-The system date and time are based on the configured
-tick rate (number of microseconds in a tick).
-
-Setting the time forward may cause a higher priority
-task, blocked waiting on a specific time, to be made ready. In
-this case, the calling task will be preempted after the next
-clock tick.
-
-Re-initializing RTEMS causes the system date and time
-to be reset to an uninitialized state. Another call to
-@code{@value{DIRPREFIX}clock_set} is required to re-initialize
-the system date and time to application specific specifications.
-
-@c
-@c
-@c
-@page
-@subsection CLOCK_GET - Get date and time information
-
-@cindex obtain the time of day
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_clock_get
-@example
-rtems_status_code rtems_clock_get(
- rtems_clock_get_options option,
- void *time_buffer
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Clock_Get (
- Option : in RTEMS.Clock_Get_Options;
- Time_Buffer : in RTEMS.Address;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - current time obtained successfully@*
-@code{@value{RPREFIX}NOT_DEFINED} - system date and time is not set@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{time_buffer} is NULL
-
-@subheading DESCRIPTION:
-
-This directive is deprecated.
-
-This directive obtains the system date and time. If
-the caller is attempting to obtain the date and time (i.e.
-option is set to either @code{@value{RPREFIX}CLOCK_GET_SECONDS_SINCE_EPOCH},
-@code{@value{RPREFIX}CLOCK_GET_TOD}, or
-@code{@value{RPREFIX}CLOCK_GET_TIME_VALUE}) and the date and time
-has not been set with a previous call to
-@code{@value{DIRPREFIX}clock_set}, then the
-@code{@value{RPREFIX}NOT_DEFINED} status code is returned.
-The caller can always obtain the number of ticks per second (option is
-@code{@value{RPREFIX}CLOCK_GET_TICKS_PER_SECOND}) and the number of
-ticks since the executive was initialized option is
-@code{@value{RPREFIX}CLOCK_GET_TICKS_SINCE_BOOT}).
-
-The @code{option} argument may taken on any value of the enumerated
-type @code{rtems_clock_get_options}. The data type expected for
-@code{time_buffer} is based on the value of @code{option} as
-indicated below:
-
-@findex rtems_clock_get_options
-@ifset is-C
-@itemize @bullet
-@item @code{@value{RPREFIX}CLOCK_GET_TOD} - (rtems_time_of_day *)
-
-@item @code{@value{RPREFIX}CLOCK_GET_SECONDS_SINCE_EPOCH} - (rtems_interval *)
-
-@item @code{@value{RPREFIX}CLOCK_GET_TICKS_SINCE_BOOT} - (rtems_interval *)
-
-@item @code{@value{RPREFIX}CLOCK_GET_TICKS_PER_SECOND} - (rtems_interval *)
-
-@item @code{@value{RPREFIX}CLOCK_GET_TIME_VALUE} - (struct timeval *)
-
-@end itemize
-@end ifset
-
-@ifset is-Ada
-@itemize @bullet
-@item @code{@value{RPREFIX}Clock_Get_TOD} - Address of an variable of
-type RTEMS.Time_Of_Day
-
-@item @code{@value{RPREFIX}Clock_Get_Seconds_Since_Epoch} - Address of an
-variable of type RTEMS.Interval
-
-@item @code{@value{RPREFIX}Clock_Get_Ticks_Since_Boot} - Address of an
-variable of type RTEMS.Interval
-
-@item @code{@value{RPREFIX}Clock_Get_Ticks_Per_Second} - Address of an
-variable of type RTEMS.Interval
-
-@item @code{@value{RPREFIX}Clock_Get_Time_Value} - Address of an variable of
-type RTEMS.Clock_Time_Value
-
-@end itemize
-@end ifset
-
-@subheading NOTES:
-
-This directive is callable from an ISR.
-
-This directive will not cause the running task to be
-preempted. Re-initializing RTEMS causes the system date and
-time to be reset to an uninitialized state. Another call to
-@code{@value{DIRPREFIX}clock_set} is required to re-initialize the
-system date and time to application specific specifications.
-
-@c
-@c
-@c
-@page
-@subsection CLOCK_GET_TOD - Get date and time in TOD format
-
-@cindex obtain the time of day
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_clock_get_tod
-@example
-rtems_status_code rtems_clock_get_tod(
- rtems_time_of_day *time_buffer
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Clock_Get_TOD (
- Time_Buffer : in RTEMS.Time_Of_Day;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - current time obtained successfully@*
-@code{@value{RPREFIX}NOT_DEFINED} - system date and time is not set@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{time_buffer} is NULL
-
-@subheading DESCRIPTION:
-
-This directive obtains the system date and time. If the date and time
-has not been set with a previous call to
-@code{@value{DIRPREFIX}clock_set}, then the
-@code{@value{RPREFIX}NOT_DEFINED} status code is returned.
-
-@subheading NOTES:
-
-This directive is callable from an ISR.
-
-This directive will not cause the running task to be
-preempted. Re-initializing RTEMS causes the system date and
-time to be reset to an uninitialized state. Another call to
-@code{@value{DIRPREFIX}clock_set} is required to re-initialize the
-system date and time to application specific specifications.
-
-@c
-@c
-@c
-@page
-@subsection CLOCK_GET_TOD_TIMEVAL - Get date and time in timeval format
-
-@cindex obtain the time of day
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_clock_get_tod_timeval
-@example
-rtems_status_code rtems_clock_get_tod(
- struct timeval *time
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Clock_Get_TOD_Timeval (
- Time : in RTEMS.Timeval;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - current time obtained successfully@*
-@code{@value{RPREFIX}NOT_DEFINED} - system date and time is not set@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{time} is NULL
-
-@subheading DESCRIPTION:
-
-This directive obtains the system date and time in POSIX
-@code{struct timeval} format. If the date and time
-has not been set with a previous call to
-@code{@value{DIRPREFIX}clock_set}, then the
-@code{@value{RPREFIX}NOT_DEFINED} status code is returned.
-
-@subheading NOTES:
-
-This directive is callable from an ISR.
-
-This directive will not cause the running task to be
-preempted. Re-initializing RTEMS causes the system date and
-time to be reset to an uninitialized state. Another call to
-@code{@value{DIRPREFIX}clock_set} is required to re-initialize the
-system date and time to application specific specifications.
-
-@c
-@c
-@c
-@page
-@subsection CLOCK_GET_SECONDS_SINCE_EPOCH - Get seconds since epoch
-
-@cindex obtain seconds since epoch
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_clock_get_seconds_since_epoch
-@example
-rtems_status_code rtems_clock_get_seconds_since_epoch(
- rtems_interval *the_interval
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Clock_Get_Seconds_Since_Epoch(
- The_Interval : out RTEMS.Interval;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - current time obtained successfully@*
-@code{@value{RPREFIX}NOT_DEFINED} - system date and time is not set@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{the_interval} is NULL
-
-@subheading DESCRIPTION:
-
-This directive returns the number of seconds since the RTEMS
-epoch and the current system date and time. If the date and time
-has not been set with a previous call to
-@code{@value{DIRPREFIX}clock_set}, then the
-@code{@value{RPREFIX}NOT_DEFINED} status code is returned.
-
-@subheading NOTES:
-
-This directive is callable from an ISR.
-
-This directive will not cause the running task to be
-preempted. Re-initializing RTEMS causes the system date and
-time to be reset to an uninitialized state. Another call to
-@code{@value{DIRPREFIX}clock_set} is required to re-initialize the
-system date and time to application specific specifications.
-
-@c
-@c
-@c
-@page
-@subsection CLOCK_GET_TICKS_PER_SECOND - Get ticks per second
-
-@cindex obtain seconds since epoch
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_clock_get_ticks_per_second
-@example
-rtems_interval rtems_clock_get_ticks_per_second(void);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-function Clock_Get_Ticks_Per_Seconds
-return RTEMS.Interval;
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-NONE
-
-@subheading DESCRIPTION:
-
-This directive returns the number of clock ticks per second. This
-is strictly based upon the microseconds per clock tick that the
-application has configured.
-
-@subheading NOTES:
-
-This directive is callable from an ISR.
-
-This directive will not cause the running task to be preempted.
-
-@c
-@c
-@c
-@page
-@subsection CLOCK_GET_TICKS_SINCE_BOOT - Get current ticks counter value
-
-@cindex obtain ticks since boot
-@cindex get current ticks counter value
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_clock_get_ticks_since_boot
-@example
-rtems_interval rtems_clock_get_ticks_since_boot(void);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-function Clock_Get_Ticks_Since_Boot
-return RTEMS.Interval;
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-NONE
-
-@subheading DESCRIPTION:
-
-This directive returns the current tick counter value. With a 1ms clock tick,
-this counter overflows after 50 days since boot. This is the historical
-measure of uptime in an RTEMS system. The newer service
-@code{@value{DIRPREFIX}clock_get_uptime} is another and potentially more
-accurate way of obtaining similar information.
-
-@subheading NOTES:
-
-This directive is callable from an ISR.
-
-This directive will not cause the running task to be preempted.
-
-@c
-@c
-@c
-@page
-@subsection CLOCK_TICK_LATER - Get tick value in the future
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_clock_tick_later
-@example
-rtems_interval rtems_clock_tick_later(
- rtems_interval delta
-);
-@end example
-@end ifset
-
-@subheading DESCRIPTION:
-
-Returns the ticks counter value delta ticks in the future.
-
-@subheading NOTES:
-
-This directive is callable from an ISR.
-
-This directive will not cause the running task to be preempted.
-
-@c
-@c
-@c
-@page
-@subsection CLOCK_TICK_LATER_USEC - Get tick value in the future in microseconds
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_clock_tick_later_usec
-@example
-rtems_interval rtems_clock_tick_later_usec(
- rtems_interval delta_in_usec
-);
-@end example
-@end ifset
-
-@subheading DESCRIPTION:
-
-Returns the ticks counter value at least delta microseconds in the future.
-
-@subheading NOTES:
-
-This directive is callable from an ISR.
-
-This directive will not cause the running task to be preempted.
-
-@c
-@c
-@c
-@page
-@subsection CLOCK_TICK_BEFORE - Is tick value is before a point in time
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_clock_tick_before
-@example
-rtems_interval rtems_clock_tick_before(
- rtems_interval tick
-);
-@end example
-@end ifset
-
-@subheading DESCRIPTION:
-
-Returns true if the current ticks counter value indicates a time before the
-time specified by the tick value and false otherwise.
-
-@subheading NOTES:
-
-This directive is callable from an ISR.
-
-This directive will not cause the running task to be preempted.
-
-@subheading EXAMPLE:
-
-@example
-@group
-status busy( void )
-@{
- rtems_interval timeout = rtems_clock_tick_later_usec( 10000 );
-
- do @{
- if ( ok() ) @{
- return success;
- @}
- @} while ( rtems_clock_tick_before( timeout ) );
-
- return timeout;
-@}
-@end group
-@end example
-
-@c
-@c
-@c
-@page
-@subsection CLOCK_GET_UPTIME - Get the time since boot
-
-@cindex clock get uptime
-@cindex uptime
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_clock_get_uptime
-@example
-rtems_status_code rtems_clock_get_uptime(
- struct timespec *uptime
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Clock_Get_Uptime (
- Uptime : out RTEMS.Timespec;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - clock tick processed successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{time_buffer} is NULL
-
-@subheading DESCRIPTION:
-
-This directive returns the seconds and nanoseconds since the
-system was booted. If the BSP supports nanosecond clock
-accuracy, the time reported will probably be different on every
-call.
-
-@subheading NOTES:
-
-This directive may be called from an ISR.
-
-@c
-@c
-@c
-@page
-@subsection CLOCK_GET_UPTIME_TIMEVAL - Get the time since boot in timeval format
-
-@cindex clock get uptime
-@cindex uptime
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_clock_get_uptime_timeval
-@example
-void rtems_clock_get_uptime_timeval(
- struct timeval *uptime
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-NONE
-
-@subheading DESCRIPTION:
-
-This directive returns the seconds and microseconds since the
-system was booted. If the BSP supports nanosecond clock
-accuracy, the time reported will probably be different on every
-call.
-
-@subheading NOTES:
-
-This directive may be called from an ISR.
-
-@c
-@c
-@c
-@page
-@subsection CLOCK_GET_UPTIME_SECONDS - Get the seconds since boot
-
-@cindex clock get uptime
-@cindex uptime
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_clock_get_uptime_seconds
-@example
-time_t rtems_clock_get_uptime_seconds(void);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-The system uptime in seconds.
-
-@subheading DESCRIPTION:
-
-This directive returns the seconds since the system was booted.
-
-@subheading NOTES:
-
-This directive may be called from an ISR.
-
-@c
-@c
-@c
-@page
-@subsection CLOCK_GET_UPTIME_NANOSECONDS - Get the nanoseconds since boot
-
-@cindex clock get nanoseconds uptime
-@cindex uptime
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_clock_get_uptime_nanoseconds
-@example
-uint64_t rtems_clock_get_uptime_nanoseconds(void);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-The system uptime in nanoseconds.
-
-@subheading DESCRIPTION:
-
-This directive returns the nanoseconds since the system was booted.
-
-@subheading NOTES:
-
-This directive may be called from an ISR.
-
-@c
-@c
-@c
-@page
-@subsection CLOCK_SET_NANOSECONDS_EXTENSION - Install the nanoseconds since last tick handler
-
-@cindex clock set nanoseconds extension
-@cindex nanoseconds extension
-@cindex nanoseconds time accuracy
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_clock_set_nanoseconds_extension
-@example
-rtems_status_code rtems_clock_set_nanoseconds_extension(
- rtems_nanoseconds_extension_routine routine
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-NOT SUPPORTED FROM Ada BINDING
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - clock tick processed successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{time_buffer} is NULL
-
-@subheading DESCRIPTION:
-
-This directive is used by the Clock device driver to install the
-@code{routine} which will be invoked by the internal RTEMS method used to
-obtain a highly accurate time of day. It is usually called during
-the initialization of the driver.
-
-When the @code{routine} is invoked, it will determine the number of
-nanoseconds which have elapsed since the last invocation of
-the @code{@value{DIRPREFIX}clock_tick} directive. It should do
-this as quickly as possible with as little impact as possible
-on the device used as a clock source.
-
-@subheading NOTES:
-
-This directive may be called from an ISR.
-
-This directive is called as part of every service to obtain the
-current date and time as well as timestamps.
-
-@c
-@c
-@c
-@page
-@subsection CLOCK_TICK - Announce a clock tick
-
-@cindex clock tick
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_clock_tick
-@example
-rtems_status_code rtems_clock_tick( void );
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Clock_Tick (
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - clock tick processed successfully
-
-@subheading DESCRIPTION:
-
-This directive announces to RTEMS that a system clock
-tick has occurred. The directive is usually called from the
-timer interrupt ISR of the local processor. This directive
-maintains the system date and time, decrements timers for
-delayed tasks, timeouts, rate monotonic periods, and implements
-timeslicing.
-
-@subheading NOTES:
-
-This directive is typically called from an ISR.
-
-The @code{microseconds_per_tick} and @code{ticks_per_timeslice}
-parameters in the Configuration Table contain the number of
-microseconds per tick and number of ticks per timeslice,
-respectively.
diff --git a/doc/user/concepts.t b/doc/user/concepts.t
deleted file mode 100644
index 183d3225ae..0000000000
--- a/doc/user/concepts.t
+++ /dev/null
@@ -1,405 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2007.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@c
-@c The following figure was replaced with an ASCII equivalent.
-@c Figure 2-1 Object ID Composition
-@c
-
-@chapter Key Concepts
-
-@section Introduction
-
-The facilities provided by RTEMS are built upon a
-foundation of very powerful concepts. These concepts must be
-understood before the application developer can efficiently
-utilize RTEMS. The purpose of this chapter is to familiarize
-one with these concepts.
-
-@section Objects
-
-@cindex objects
-
-RTEMS provides directives which can be used to
-dynamically create, delete, and manipulate a set of predefined
-object types. These types include tasks, message queues,
-semaphores, memory regions, memory partitions, timers, ports,
-and rate monotonic periods. The object-oriented nature of RTEMS
-encourages the creation of modular applications built upon
-re-usable "building block" routines.
-
-All objects are created on the local node as required
-by the application and have an RTEMS assigned ID. All objects
-have a user-assigned name. Although a relationship exists
-between an object's name and its RTEMS assigned ID, the name and
-ID are not identical. Object names are completely arbitrary and
-selected by the user as a meaningful "tag" which may commonly
-reflect the object's use in the application. Conversely, object
-IDs are designed to facilitate efficient object manipulation by
-the executive.
-
-@subsection Object Names
-
-@cindex object name
-@findex rtems_name
-
-An object name is an unsigned thirty-two bit entity
-associated with the object by the user. The data type
-@code{@value{DIRPREFIX}name} is used to store object names.
-
-@findex rtems_build_name
-
-Although not required by RTEMS, object names are often
-composed of four ASCII characters which help identify that object.
-For example, a task which causes a light to blink might be
-called "LITE". The @code{@value{DIRPREFIX}build_name} routine
-is provided to build an object name from four ASCII characters.
-The following example illustrates this:
-
-@ifset is-C
-@example
-rtems_name my_name;
-
-my_name = rtems_build_name( 'L', 'I', 'T', 'E' );
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-My_Name : RTEMS.Name;
-
-My_Name = RTEMS.Build_Name( 'L', 'I', 'T', 'E' );
-@end example
-@end ifset
-
-However, it is not required that the application use ASCII
-characters to build object names. For example, if an
-application requires one-hundred tasks, it would be difficult to
-assign meaningful ASCII names to each task. A more convenient
-approach would be to name them the binary values one through
-one-hundred, respectively.
-
-@ifset is-C
-@findex rtems_object_get_name
-
-RTEMS provides a helper routine, @code{@value{DIRPREFIX}object_get_name},
-which can be used to obtain the name of any RTEMS object using just
-its ID. This routine attempts to convert the name into a printable string.
-
-The following example illustrates the use of this method to print
-an object name:
-
-@example
-#include <rtems.h>
-#include <rtems/bspIo.h>
-
-void print_name(rtems_id id)
-@{
- char buffer[10]; /* name assumed to be 10 characters or less */
- char *result;
-
- result = rtems_object_get_name( id, sizeof(buffer), buffer );
- printk( "ID=0x%08x name=%s\n", id, ((result) ? result : "no name") );
-@}
-@end example
-@end ifset
-
-
-@subsection Object IDs
-
-@cindex object ID
-@cindex object ID composition
-@findex rtems_id
-
-@need 3000
-
-An object ID is a unique unsigned integer value which uniquely identifies
-an object instance. Object IDs are passed as arguments to many directives
-in RTEMS and RTEMS translates the ID to an internal object pointer. The
-efficient manipulation of object IDs is critical to the performance
-of RTEMS services. Because of this, there are two object Id formats
-defined. Each target architecture specifies which format it will use.
-There is a thirty-two bit format which is used for most of the supported
-architectures and supports multiprocessor configurations. There is also
-a simpler sixteen bit format which is appropriate for smaller target
-architectures and does not support multiprocessor configurations.
-
-@subsubsection Thirty-Two Object ID Format
-
-The thirty-two bit format for an object ID is composed of four parts: API,
-object class, node, and index. The data type @code{@value{DIRPREFIX}id}
-is used to store object IDs.
-
-
-@float Figure,fig:Object-Id-32
-@caption{Thirty-Two Bit Object Id}
-
-@ifset use-ascii
-@example
-@group
- 31 27 26 24 23 16 15 0
- +---------+-------+--------------+-------------------------------+
- | | | | |
- | Class | API | Node | Index |
- | | | | |
- +---------+-------+--------------+-------------------------------+
-@end group
-@end example
-@end ifset
-
-@ifset use-tex
-@sp1
-@center{@image{ObjectId-32Bits,,2in,Thirty-Two Bit Object Id}}
-@end ifset
-
-@ifset use-html
-@html
-<P ALIGN="center"><IMG SRC="ObjectId-32Bits.png"
- WIDTH=550 HEIGHT=400 ALT="Thirty-Two Bit Object Id"></P>
-@end html
-@end ifset
-@end float
-
-The most significant five bits are the object class. The next
-three bits indicate the API to which the object class belongs.
-The next eight bits (16-23) are the number of the node on which
-this object was created. The node number is always one (1) in a single
-processor system. The least significant sixteen bits form an
-identifier within a particular object type. This identifier,
-called the object index, ranges in value from 1 to the maximum
-number of objects configured for this object type.
-
-@subsubsection Sixteen Bit Object ID Format
-
-The sixteen bit format for an object ID is composed of three parts: API,
-object class, and index. The data type @code{@value{DIRPREFIX}id}
-is used to store object IDs.
-
-@float Figure,fig:Object-Id-16
-@caption{Sixteen Bit Object Id}
-
-
-@ifset use-ascii
-@example
-@group
- 15 11 10 8 7 0
- +---------+-------+--------------+
- | | | |
- | Class | API | Index |
- | | | |
- +---------+-------+--------------+
-@end group
-@end example
-@end ifset
-
-@ifset use-tex
-@sp1
-@center{@image{ObjectId-16Bits,,2in,Sixteen Bit Object Id}}
-@end ifset
-
-@ifset use-html
-@html
-<P ALIGN="center"><IMG SRC="ObjectId-16Bits.png"
- WIDTH=550 HEIGHT=400 ALT="16 Bit Object Id"></P>
-@end html
-@end ifset
-@end float
-
-The sixteen-bit format is designed to be as similar as possible to the
-thrity-two bit format. The differences are limited to the eliminatation
-of the node field and reduction of the index field from sixteen-bits
-to 8-bits. Thus the sixteen bit format only supports up to 255 object
-instances per API/Class combination and single processor systems.
-As this format is typically utilized by sixteen-bit processors with
-limited address space, this is more than enough object instances.
-
-@subsection Object ID Description
-
-The components of an object ID make it possible
-to quickly locate any object in even the most complicated
-multiprocessor system. Object ID's are associated with an
-object by RTEMS when the object is created and the corresponding
-ID is returned by the appropriate object create directive. The
-object ID is required as input to all directives involving
-objects, except those which create an object or obtain the ID of
-an object.
-
-The object identification directives can be used to
-dynamically obtain a particular object's ID given its name.
-This mapping is accomplished by searching the name table
-associated with this object type. If the name is non-unique,
-then the ID associated with the first occurrence of the name
-will be returned to the application. Since object IDs are
-returned when the object is created, the object identification
-directives are not necessary in a properly designed single
-processor application.
-
-In addition, services are provided to portably examine the
-subcomponents of an RTEMS ID. These services are
-described in detail later in this manual but are prototyped
-as follows:
-
-@cindex obtaining class from object ID
-@cindex obtaining node from object ID
-@cindex obtaining index from object ID
-@cindex get class from object ID
-@cindex get node from object ID
-@cindex get index from object ID
-@findex rtems_object_id_get_api
-@findex rtems_object_id_get_class
-@findex rtems_object_id_get_node
-@findex rtems_object_id_get_index
-
-@example
-uint32_t rtems_object_id_get_api( rtems_id );
-uint32_t rtems_object_id_get_class( rtems_id );
-uint32_t rtems_object_id_get_node( rtems_id );
-uint32_t rtems_object_id_get_index( rtems_id );
-@end example
-
-An object control block is a data structure defined
-by RTEMS which contains the information necessary to manage a
-particular object type. For efficiency reasons, the format of
-each object type's control block is different. However, many of
-the fields are similar in function. The number of each type of
-control block is application dependent and determined by the
-values specified in the user's Configuration Table. An object
-control block is allocated at object create time and freed when
-the object is deleted. With the exception of user extension
-routines, object control blocks are not directly manipulated by
-user applications.
-
-@section Communication and Synchronization
-
-@cindex communication and synchronization
-
-In real-time multitasking applications, the ability
-for cooperating execution threads to communicate and synchronize
-with each other is imperative. A real-time executive should
-provide an application with the following capabilities:
-
-@itemize @bullet
-@item Data transfer between cooperating tasks
-@item Data transfer between tasks and ISRs
-@item Synchronization of cooperating tasks
-@item Synchronization of tasks and ISRs
-@end itemize
-
-Most RTEMS managers can be used to provide some form
-of communication and/or synchronization. However, managers
-dedicated specifically to communication and synchronization
-provide well established mechanisms which directly map to the
-application's varying needs. This level of flexibility allows
-the application designer to match the features of a particular
-manager with the complexity of communication and synchronization
-required. The following managers were specifically designed for
-communication and synchronization:
-
-@itemize @bullet
-@item Semaphore
-@item Message Queue
-@item Event
-@item Signal
-@end itemize
-
-The semaphore manager supports mutual exclusion
-involving the synchronization of access to one or more shared
-user resources. Binary semaphores may utilize the optional
-priority inheritance algorithm to avoid the problem of priority
-inversion. The message manager supports both communication and
-synchronization, while the event manager primarily provides a
-high performance synchronization mechanism. The signal manager
-supports only asynchronous communication and is typically used
-for exception handling.
-
-@section Time
-
-@cindex time
-
-The development of responsive real-time applications
-requires an understanding of how RTEMS maintains and supports
-time-related operations. The basic unit of time in RTEMS is
-known as a tick. The frequency of clock ticks is completely
-application dependent and determines the granularity and
-accuracy of all interval and calendar time operations.
-
-@findex rtems_interval
-
-By tracking time in units of ticks, RTEMS is capable
-of supporting interval timing functions such as task delays,
-timeouts, timeslicing, the delayed execution of timer service
-routines, and the rate monotonic scheduling of tasks. An
-interval is defined as a number of ticks relative to the current
-time. For example, when a task delays for an interval of ten
-ticks, it is implied that the task will not execute until ten
-clock ticks have occurred.
-All intervals are specified using data type
-@code{@value{DIRPREFIX}interval}.
-
-A characteristic of interval timing is that the
-actual interval period may be a fraction of a tick less than the
-interval requested. This occurs because the time at which the
-delay timer is set up occurs at some time between two clock
-ticks. Therefore, the first countdown tick occurs in less than
-the complete time interval for a tick. This can be a problem if
-the clock granularity is large.
-
-The rate monotonic scheduling algorithm is a hard
-real-time scheduling methodology. This methodology provides
-rules which allows one to guarantee that a set of independent
-periodic tasks will always meet their deadlines -- even under
-transient overload conditions. The rate monotonic manager
-provides directives built upon the Clock Manager's interval
-timer support routines.
-
-Interval timing is not sufficient for the many
-applications which require that time be kept in wall time or
-true calendar form. Consequently, RTEMS maintains the current
-date and time. This allows selected time operations to be
-scheduled at an actual calendar date and time. For example, a
-task could request to delay until midnight on New Year's Eve
-before lowering the ball at Times Square.
-The data type @code{@value{DIRPREFIX}time_of_day} is used to specify
-calendar time in RTEMS services.
-@xref{Clock Manager Time and Date Data Structures, , Time and Date Data Structures}.
-@findex rtems_time_of_day
-
-Obviously, the directives which use intervals or wall
-time cannot operate without some external mechanism which
-provides a periodic clock tick. This clock tick is typically
-provided by a real time clock or counter/timer device.
-
-@section Memory Management
-
-@cindex memory management
-
-RTEMS memory management facilities can be grouped
-into two classes: dynamic memory allocation and address
-translation. Dynamic memory allocation is required by
-applications whose memory requirements vary through the
-application's course of execution. Address translation is
-needed by applications which share memory with another CPU or an
-intelligent Input/Output processor. The following RTEMS
-managers provide facilities to manage memory:
-
-@itemize @bullet
-@item Region
-
-@item Partition
-
-@item Dual Ported Memory
-@end itemize
-
-RTEMS memory management features allow an application
-to create simple memory pools of fixed size buffers and/or more
-complex memory pools of variable size segments. The partition
-manager provides directives to manage and maintain pools of
-fixed size entities such as resource control blocks.
-Alternatively, the region manager provides a more general
-purpose memory allocation scheme that supports variable size
-blocks of memory which are dynamically obtained and freed by the
-application. The dual-ported memory manager provides executive
-support for address translation between internal and external
-dual-ported RAM address space.
diff --git a/doc/user/conf.t b/doc/user/conf.t
deleted file mode 100644
index 560b221464..0000000000
--- a/doc/user/conf.t
+++ /dev/null
@@ -1,5421 +0,0 @@
-@c COPYRIGHT (c) 1988-2015.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@c TODO:
-@c + Ensure all macros are documented.
-@c + Verify which structures may actually be defined by a user
-@c + Add Go configuration.
-
-@c Questions:
-@c + Should there be examples of defining your own
-@c Device Driver Table, Init task table, etc.?
-@c
-
-@chapter Configuring a System
-
-@c
-@c === Introduction ===
-@c
-@section Introduction
-
-RTEMS must be configured for an application. This configuration
-encompasses a variety of information including the length of each clock
-tick, the maximum number of each information RTEMS object that can
-be created, the application initialization tasks, the task scheduling
-algorithm to be used, and the device drivers in the application.
-
-Although this information is contained in data structures that are used
-by RTEMS at system initialization time, the data structures themselves
-should only rarely to be generated by hand. RTEMS provides a set of
-macros system which provides a simple standard mechanism to automate
-the generation of these structures.
-
-@ifset is-Ada
-System configuration is ALWAYS done from C. When developing
-an Ada application, the user is responsible for creating at
-least one C file which contains the Ada run-time initialization
-and the RTEMS System Configuration. There is no Ada binding
-for RTEMS System Configuration information. Thus all examples
-and data structures shown in this chapter are in C.
-@end ifset
-
-@cindex confdefs.h
-@findex confdefs.h
-@cindex <rtems/confdefs.h>
-@findex <rtems/confdefs.h>
-
-The RTEMS header file @code{<rtems/confdefs.h>} is at the core of the
-automatic generation of system configuration. It is based on the idea
-of setting macros which define configuration parameters of interest to
-the application and defaulting or calculating all others. This variety
-of macros can automatically produce all of the configuration data
-required for an RTEMS application.
-
-Trivia: @code{confdefs} is shorthand for a @b{Configuration Defaults}.
-
-As a general rule, application developers only specify values
-for the configuration parameters of interest to them. They define what
-resources or features they require. In most cases, when a parameter is
-not specified, it defaults to zero (0) instances, a standards compliant
-value, or disabled as appropriate. For example, by default there will be
-256 task priority levels but this can be lowered by the application. This
-number of priority levels is required to be compliant with the RTEID/ORKID
-standards upon which the Classic API is based. There are similar cases
-where the default is selected to be compliant with with the POSIX standard.
-
-For each configuration parameter in the configuration tables, the macro
-corresponding to that field is discussed. The RTEMS Maintainers
-expect that all systems can be easily configured using the
-@code{<rtems/confdefs.h>} mechanism and that using this mechanism will
-avoid internal RTEMS configuration changes impacting applications.
-
-@c
-@c === Philosophy ===
-@c
-@section Default Value Selection Philosophy
-
-The user should be aware that the defaults are intentionally set as
-low as possible. By default, no application resources are configured.
-The @code{<rtems/confdefs.h>} file ensures that at least one application
-task or thread is configured and that at least one of the initialization
-task/thread tables is configured.
-
-@c
-@c === Sizing the RTEMS Workspace ===
-@c
-@section Sizing the RTEMS Workspace
-
-The RTEMS Workspace is a user-specified block of memory reserved for
-use by RTEMS. The application should NOT modify this memory. This area
-consists primarily of the RTEMS data structures whose exact size depends
-upon the values specified in the Configuration Table. In addition,
-task stacks and floating point context areas are dynamically allocated
-from the RTEMS Workspace.
-
-The @code{<rtems/confdefs.h>} mechanism calculates the size of the RTEMS
-Workspace automatically. It assumes that all tasks are floating point and
-that all will be allocated the minimum stack space. This calculation
-includes the amount of memory that will be allocated for internal use
-by RTEMS. The automatic calculation may underestimate the workspace
-size truly needed by the application, in which case one can use the
-@code{CONFIGURE_MEMORY_OVERHEAD} macro to add a value to the estimate. See
-@ref{Configuring a System Specify Memory Overhead} for more details.
-
-The memory area for the RTEMS Workspace is determined by the BSP. In case the
-RTEMS Workspace is too large for the available memory, then a fatal run-time
-error occurs and the system terminates.
-
-The file @code{<rtems/confdefs.h>} will calculate the value of the
-@code{work_space_size} parameter of the Configuration Table. There
-are many parameters the application developer can specify to
-help @code{<rtems/confdefs.h>} in its calculations. Correctly
-specifying the application requirements via parameters such as
-@code{CONFIGURE_EXTRA_TASK_STACKS} and @code{CONFIGURE_MAXIMUM_TASKS}
-is critical for production software.
-
-For each class of objects, the allocation can operate in one of two ways.
-The default way has an ceiling on the maximum number of object instances
-which can concurrently exist in the system. Memory for all instances of
-that object class is reserved at system initialization. The second
-way allocates memory for an initial number of objects and increases the
-current allocation by a fixed increment when required. Both ways allocate
-space from inside the RTEMS Workspace.
-
-See @ref{Configuring a System Unlimited Objects} for more details about
-the second way, which allows for dynamic allocation of objects and
-therefore does not provide determinism. This mode is useful mostly for
-when the number of objects cannot be determined ahead of time or when
-porting software for which you do not know the object requirements.
-
-The space needed for stacks and for RTEMS objects will vary from
-one version of RTEMS and from one target processor to another.
-Therefore it is safest to use @code{<rtems/confdefs.h>} and specify
-your application's requirements in terms of the numbers of objects and
-multiples of @code{RTEMS_MINIMUM_STACK_SIZE}, as far as is possible. The
-automatic estimates of space required will in general change when:
-
-@itemize @bullet
-@item a configuration parameter is changed,
-@item task or interrupt stack sizes change,
-@item the floating point attribute of a task changes,
-@item task floating point attribute is altered,
-@item RTEMS is upgraded, or
-@item the target processor is changed.
-@end itemize
-
-Failure to provide enough space in the RTEMS Workspace may result in fatal
-run-time errors terminating the system.
-
-@c
-@c === Potential Issues ===
-@c
-@section Potential Issues with RTEMS Workspace Size Estimation
-
-The @code{<rtems/confdefs.h>} file estimates the amount of memory
-required for the RTEMS Workspace. This estimate is only as accurate
-as the information given to @code{<rtems/confdefs.h>} and may be either
-too high or too low for a variety of reasons. Some of the reasons that
-@code{<rtems/confdefs.h>} may reserve too much memory for RTEMS are:
-
-@itemize @bullet
-@item All tasks/threads are assumed to be floating point.
-@end itemize
-
-Conversely, there are many more reasons that the resource estimate could be
-too low:
-
-@itemize @bullet
-@item Task/thread stacks greater than minimum size must be
-accounted for explicitly by developer.
-
-@item Memory for messages is not included.
-
-@item Device driver requirements are not included.
-
-@item Network stack requirements are not included.
-
-@item Requirements for add-on libraries are not included.
-@end itemize
-
-In general, @code{<rtems/confdefs.h>} is very accurate when given enough
-information. However, it is quite easy to use a library and forget to
-account for its resources.
-
-@c
-@c === Format to be followed for making changes in this file ===
-@c
-@section Format to be followed for making changes in this file
-
-@itemize @bullet
-@item MACRO NAME
-Should be alphanumeric. Can have '_' (underscore).
-
-@item DATA TYPE
-Please refer to all existing formats.
-
-@item RANGE:
-The range depends on the Data Type of the macro.
-@itemize @minus
-@item If the data type is of type task priority, then its value should
-be an integer in the range of 1 to 255.
-
-@item If the data type is an integer, then it can have numbers, characters
-(in case the value is defined using another macro) and arithmetic operations
-(+, -, *, /).
-
-@item If the data type is a function pointer the first character
-should be an alphabet or an underscore. The rest of the string
-can be alphanumeric.
-
-@item If the data type is RTEMS Attributes or RTEMS Mode then
-the string should be alphanumeric.
-
-@item If the data type is RTEMS NAME then the value should be
-an integer>=0 or RTEMS_BUILD_NAME( 'U', 'I', '1', ' ' )
-@end itemize
-
-@item DEFAULT VALUE
-The default value should be in the following formats-
-Please note that the '.' (full stop) is necessary.
-
-@itemize @minus
-@item In case the value is not defined then:
- This is not defined by default.
-
-@item If we know the default value then:
- The default value is XXX.
-
-@item If the default value is BSP Specific then:
- This option is BSP specific.
-@end itemize
-
-@item DESCRIPTION
-The description of the macro. (No specific format)
-
-@item NOTES
-Any further notes. (No specific format)
-
-@end itemize
-
-@c
-@c === Configuration Example ===
-@c
-@section Configuration Example
-
-In the following example, the configuration information for a system
-with a single message queue, four (4) tasks, and a timeslice of
-fifty (50) milliseconds is as follows:
-
-@example
-@group
-#include <bsp.h>
-
-#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
-#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
-
-#define CONFIGURE_MICROSECONDS_PER_TICK 1000 /* 1 millisecond */
-#define CONFIGURE_TICKS_PER_TIMESLICE 50 /* 50 milliseconds */
-
-#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
-
-#define CONFIGURE_MAXIMUM_TASKS 4
-#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 1
-
-#define CONFIGURE_MESSAGE_BUFFER_MEMORY \
- CONFIGURE_MESSAGE_BUFFERS_FOR_QUEUE(20, sizeof(struct USER_MESSAGE))
-
-#define CONFIGURE_INIT
-#include <rtems/confdefs.h>
-@end group
-@end example
-
-In this example, only a few configuration parameters are specified. The
-impact of these are as follows:
-
-@itemize @bullet
-
-@item The example specified @code{CONFIGURE_RTEMS_INIT_TASK_TABLE}
-but did not specify any additional parameters. This results in a
-configuration of an application which will begin execution of a single
-initialization task named @code{Init} which is non-preemptible and at
-priority one (1).
-
-@item By specifying @code{CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER},
-this application is configured to have a clock tick device
-driver. Without a clock tick device driver, RTEMS has no way to know
-that time is passing and will be unable to support delays and wall
-time. Further configuration details about time are
-provided. Per @code{CONFIGURE_MICROSECONDS_PER_TICK} and
-@code{CONFIGURE_TICKS_PER_TIMESLICE}, the user specified they wanted a
-clock tick to occur each millisecond, and that the length of a timeslice
-would be fifty (50) milliseconds.
-
-@item By specifying @code{CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER},
-the application will include a console device driver. Although the
-console device driver may support a combination of multiple serial
-ports and display and keyboard combinations, it is only required to
-provide a single device named @code{/dev/console}. This device will
-be used for Standard Input, Output and Error I/O Streams. Thus when
-@code{CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER} is specified, implicitly
-three (3) file descriptors are reserved for the Standard I/O Streams and
-those file descriptors are associated with @code{/dev/console} during
-initialization. All console devices are expected to support the POSIX
-@i{termios} interface.
-
-@item The example above specifies via @code{CONFIGURE_MAXIMUM_TASKS}
-that the application requires a maximum of four (4)
-simultaneously existing Classic API tasks. Similarly, by specifying
-@code{CONFIGURE_MAXIMUM_MESSAGE_QUEUES}, there may be a maximum of only
-one (1) concurrently existent Classic API message queues.
-
-@item The most surprising configuration parameter in this example is the
-use of @code{CONFIGURE_MESSAGE_BUFFER_MEMORY}. Message buffer memory is
-allocated from the RTEMS Workspace and must be accounted for. In this
-example, the single message queue will have up to twenty (20) messages
-of type @code{struct USER_MESSAGE}.
-
-@item The @code{CONFIGURE_INIT} constant must be defined in order to
-make @code{<rtems/confdefs.h>} instantiate the configuration data
-structures. This can only be defined in one source file per
-application that includes @code{<rtems/confdefs.h>} or the symbol
-table will be instantiated multiple times and linking errors
-produced.
-
-@end itemize
-
-This example illustrates that parameters have default values. Among
-other things, the application implicitly used the following defaults:
-
-@itemize @bullet
-@item All unspecified types of communications and synchronization objects
-in the Classic and POSIX Threads API have maximums of zero (0).
-
-@item The filesystem will be the default filesystem which is the In-Memory File
-System (IMFS).
-
-@item The application will have the default number of priority levels.
-
-@item The minimum task stack size will be that recommended by RTEMS for
-the target architecture.
-@end itemize
-
-@c
-@c === Unlimited Objects ===
-@c
-@subsection Unlimited Objects
-
-In real-time embedded systems the RAM is normally a limited, critical
-resource and dynamic allocation is avoided as much as possible to
-ensure predictable, deterministic execution times. For such cases, see
-@ref{Configuring a System Sizing the RTEMS Workspace} for an overview
-of how to tune the size of the workspace. Frequently when users are
-porting software to RTEMS the precise resource requirements of the
-software is unknown. In these situations users do not need to control
-the size of the workspace very tightly because they just want to get
-the new software to run; later they can tune the workspace size as needed.
-
-The following API-independent object classes can be configured in
-unlimited mode:
-
-@itemize @bullet
-@item POSIX Keys
-@item POSIX Key Value Pairs
-@end itemize
-
-The following object classes in the Classic API can be configured in
-unlimited mode:
-
-@itemize @bullet
-@item Tasks
-@item Timers
-@item Semaphores
-@item Message Queues
-@item Periods
-@item Barriers
-@item Partitions
-@item Regions
-@item Ports
-@end itemize
-
-Additionally, the following object classes from the POSIX API can be
-configured in unlimited mode:
-
-@itemize @bullet
-@item Threads
-@item Mutexes
-@item Condition Variables
-@item Timers
-@item Message Queues
-@item Message Queue Descriptors
-@item Semaphores
-@item Barriers
-@item Read/Write Locks
-@item Spinlocks
-@end itemize
-
-The following object classes can @strong{not} be configured in unlimited mode:
-@itemize @bullet
-@item Drivers
-@item File Descriptors
-@item User Extensions
-@item POSIX Queued Signals
-@end itemize
-
-Due to the memory requirements of unlimited objects it is strongly recommended
-to use them only in combination with the unified work areas. See
-@ref{Configuring a System Separate or Unified Work Areas} for more information
-on unified work areas.
-
-The following example demonstrates how the two simple configuration defines for
-unlimited objects and unified works areas can replace many seperate
-configuration defines for supported object classes:
-@example
-#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
-#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
-
-#define CONFIGURE_UNIFIED_WORK_AREAS
-#define CONFIGURE_UNLIMITED_OBJECTS
-
-#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
-
-#define CONFIGURE_INIT
-
-#include <rtems/confdefs.h>
-@end example
-
-Users are cautioned that using unlimited objects is not recommended for
-production software unless the dynamic growth is absolutely required. It
-is generally considered a safer embedded systems programming practice to
-know the system limits rather than experience an out of memory error
-at an arbitrary and largely unpredictable time in the field.
-
-@c
-@c === Per Object Class Unlimited Object Instances ===
-@c
-@subsection Per Object Class Unlimited Object Instances
-
-@findex rtems_resource_unlimited
-When the number of objects is not known ahead of time, RTEMS provides an
-auto-extending mode that can be enabled individually for each object
-type by using the macro @code{rtems_resource_unlimited}. This takes a value
-as a parameter, and is used to set the object maximum number field in
-an API Configuration table. The value is an allocation unit size. When
-RTEMS is required to grow the object table it is grown by this
-size. The kernel will return the object memory back to the RTEMS Workspace
-when an object is destroyed. The kernel will only return an allocated
-block of objects to the RTEMS Workspace if at least half the allocation
-size of free objects remain allocated. RTEMS always keeps one
-allocation block of objects allocated. Here is an example of using
-@code{rtems_resource_unlimited}:
-
-@example
-#define CONFIGURE_MAXIMUM_TASKS rtems_resource_unlimited(5)
-@end example
-
-@findex rtems_resource_is_unlimited
-@findex rtems_resource_maximum_per_allocation
-Object maximum specifications can be evaluated with the
-@code{rtems_resource_is_unlimited} and
-@code{rtems_resource_maximum_per_allocation} macros.
-
-@c
-@c === Unlimited Object Instances ===
-@c
-@subsection Unlimited Object Instances
-
-To ease the burden of developers who are porting new software RTEMS
-also provides the capability to make all object classes listed above
-operate in unlimited mode in a simple manner. The application developer
-is only responsible for enabling unlimited objects and specifying the
-allocation size.
-
-@c
-@c === CONFIGURE_UNLIMITED_OBJECTS ===
-@c
-@subsection Enable Unlimited Object Instances
-
-@findex CONFIGURE_UNLIMITED_OBJECTS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_UNLIMITED_OBJECTS}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_UNLIMITED_OBJECTS} enables @code{rtems_resource_unlimited}
-mode for Classic API and POSIX API objects that do not already have a
-specific maximum limit defined.
-
-@subheading NOTES:
-When using unlimited objects, it is common practice to also specify
-@code{CONFIGURE_UNIFIED_WORK_AREAS} so the system operates with a single
-pool of memory for both RTEMS and application memory allocations.
-
-@c
-@c === CONFIGURE_UNLIMITED_ALLOCATION_SIZE ===
-@c
-@subsection Specify Unlimited Objects Allocation Size
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_UNLIMITED_ALLOCATION_SIZE}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Positive.
-
-@item DEFAULT VALUE:
-If not defined and @code{CONFIGURE_UNLIMITED_OBJECTS} is defined, the
-default value is eight (8).
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_UNLIMITED_ALLOCATION_SIZE} provides an
-allocation size to use for @code{rtems_resource_unlimited} when using
-@code{CONFIGURE_UNLIMITED_OBJECTS}.
-
-@subheading NOTES:
-By allowing users to declare all resources as being unlimited
-the user can avoid identifying and limiting the resources used.
-@code{CONFIGURE_UNLIMITED_OBJECTS} does not support varying the allocation
-sizes for different objects; users who want that much control can define
-the @code{rtems_resource_unlimited} macros themselves.
-
-@example
-#define CONFIGURE_UNLIMITED_OBJECTS
-#define CONFIGURE_UNLIMITED_ALLOCATION_SIZE 5
-@end example
-
-@c
-@c === Classic API Configuration ===
-@c
-@section Classic API Configuration
-
-This section defines the Classic API related system configuration
-parameters supported by @code{<rtems/confdefs.h>}.
-
-@c
-@c === CONFIGURE_MAXIMUM_TASKS ===
-@c
-@subsection Specify Maximum Classic API Tasks
-
-@findex CONFIGURE_MAXIMUM_TASKS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_TASKS}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_TASKS} is the maximum number of Classic API
-Tasks that can be concurrently active.
-
-@subheading NOTES:
-This object class can be configured in unlimited allocation mode.
-
-The calculations for the required memory in the RTEMS Workspace
-for tasks assume that each task has a minimum stack size and
-has floating point support enabled. The configuration parameter
-@code{CONFIGURE_EXTRA_TASK_STACKS} is used to specify task stack
-requirements @b{ABOVE} the minimum size required. See
-@ref{Configuring a System Reserve Task/Thread Stack Memory Above Minimum}
-for more information about @code{CONFIGURE_EXTRA_TASK_STACKS}.
-
-The maximum number of POSIX threads is specified by
-@code{CONFIGURE_MAXIMUM_POSIX_THREADS}.
-@c XXX - Add xref to CONFIGURE_MAXIMUM_POSIX_THREADS.
-
-A future enhancement to @code{<rtems/confdefs.h>} could be to eliminate
-the assumption that all tasks have floating point enabled. This would
-require the addition of a new configuration parameter to specify the
-number of tasks which enable floating point support.
-
-@c
-@c === CONFIGURE_MAXIMUM_TIMERS ===
-@c
-@subsection Specify Maximum Classic API Timers
-
-@findex CONFIGURE_MAXIMUM_TIMERS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_TIMERS}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_TIMERS} is the maximum number of Classic API
-Timers that can be concurrently active.
-
-@subheading NOTES:
-This object class can be configured in unlimited allocation mode.
-
-@c
-@c === CONFIGURE_MAXIMUM_SEMAPHORES ===
-@c
-@subsection Specify Maximum Classic API Semaphores
-
-@findex CONFIGURE_MAXIMUM_SEMAPHORES
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_SEMAPHORES}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_SEMAPHORES} is the maximum number of Classic
-API Semaphores that can be concurrently active.
-
-@subheading NOTES:
-This object class can be configured in unlimited allocation mode.
-
-@c
-@c === CONFIGURE_MAXIMUM_MRSP_SEMAPHORES ===
-@c
-@subsection Specify Maximum Classic API Semaphores usable with MrsP
-
-@findex CONFIGURE_MAXIMUM_MRSP_SEMAPHORES
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_MRSP_SEMAPHORES}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_MRSP_SEMAPHORES} is the
-maximum number of Classic API Semaphores using the Multiprocessor Resource
-Sharing Protocol (MrsP) that can be concurrently active.
-
-@subheading NOTES:
-This configuration option is only used on SMP configurations. On uni-processor
-configurations the Priority Ceiling Protocol is used for MrsP semaphores and
-thus no extra memory is necessary.
-
-@c
-@c === CONFIGURE_MAXIMUM_MESSAGE_QUEUES ===
-@c
-@subsection Specify Maximum Classic API Message Queues
-
-@findex CONFIGURE_MAXIMUM_MESSAGE_QUEUES
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_MESSAGE_QUEUES}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_MESSAGE_QUEUES} is the maximum number of Classic
-API Message Queues that can be concurrently active.
-
-@subheading NOTES:
-This object class can be configured in unlimited allocation mode.
-
-@c
-@c === CONFIGURE_MAXIMUM_BARRIERS ===
-@c
-@subsection Specify Maximum Classic API Barriers
-
-@findex CONFIGURE_MAXIMUM_BARRIERS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_BARRIERS}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_BARRIERS} is the maximum number of Classic
-API Barriers that can be concurrently active.
-
-@subheading NOTES:
-This object class can be configured in unlimited allocation mode.
-
-@c
-@c === CONFIGURE_MAXIMUM_PERIODS ===
-@c
-@subsection Specify Maximum Classic API Periods
-
-@findex CONFIGURE_MAXIMUM_PERIODS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_PERIODS}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_PERIODS} is the maximum number of Classic
-API Periods that can be concurrently active.
-
-@subheading NOTES:
-This object class can be configured in unlimited allocation mode.
-
-@c
-@c === CONFIGURE_MAXIMUM_PARTITIONS ===
-@c
-@subsection Specify Maximum Classic API Partitions
-
-@findex CONFIGURE_MAXIMUM_PARTITIONS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_PARTITIONS}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_PARTITIONS} is the maximum number of Classic
-API Partitions that can be concurrently active.
-
-@subheading NOTES:
-This object class can be configured in unlimited allocation mode.
-
-@c
-@c === CONFIGURE_MAXIMUM_REGIONS ===
-@c
-@subsection Specify Maximum Classic API Regions
-
-@findex CONFIGURE_MAXIMUM_REGIONS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_REGIONS}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_REGIONS} is the maximum number of Classic
-API Regions that can be concurrently active.
-
-@subheading NOTES:
-None.
-
-@c
-@c === CONFIGURE_MAXIMUM_PORTS ===
-@c
-@subsection Specify Maximum Classic API Ports
-
-@findex CONFIGURE_MAXIMUM_PORTS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_PORTS}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_PORTS} is the maximum number of Classic
-API Ports that can be concurrently active.
-
-@subheading NOTES:
-This object class can be configured in unlimited allocation mode.
-
-@c
-@c === CONFIGURE_MAXIMUM_USER_EXTENSIONS ===
-@c
-@subsection Specify Maximum Classic API User Extensions
-
-@findex CONFIGURE_MAXIMUM_USER_EXTENSIONS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_USER_EXTENSIONS}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_USER_EXTENSIONS} is the maximum number of Classic
-API User Extensions that can be concurrently active.
-
-@subheading NOTES:
-This object class can be configured in unlimited allocation mode.
-
-@c
-@c === Classic API Initialization Task Configuration ===
-@c
-@section Classic API Initialization Tasks Table Configuration
-
-The @code{<rtems/confdefs.h>} configuration system can automatically
-generate an Initialization Tasks Table named
-@code{Initialization_tasks} with a single entry. The following
-parameters control the generation of that table.
-
-@c
-@c === CONFIGURE_RTEMS_INIT_TASKS_TABLE ===
-@c
-@subsection Instantiate Classic API Initialization Task Table
-
-@findex CONFIGURE_RTEMS_INIT_TASKS_TABLE
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_RTEMS_INIT_TASKS_TABLE}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_RTEMS_INIT_TASKS_TABLE} is defined if the user wishes
-to use a Classic RTEMS API Initialization Task Table. The table built by
-@code{<rtems/confdefs.h>} specifies the parameters for a single task. This
-is sufficient for applications which initialization the system from a
-single task.
-
-By default, this field is not defined as the user MUST select their own
-API for initialization tasks.
-
-@subheading NOTES:
-The application may choose to use the initialization tasks or threads
-table from another API.
-
-A compile time error will be generated if the user does not configure
-any initialization tasks or threads.
-
-@c
-@c === CONFIGURE_INIT_TASK_ENTRY_POINT ===
-@c
-@subsection Specifying Classic API Initialization Task Entry Point
-
-@findex CONFIGURE_INIT_TASK_ENTRY_POINT
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_INIT_TASK_ENTRY_POINT}
-
-@item DATA TYPE:
-Task entry function pointer (@code{rtems_task_entry}).
-
-@item RANGE:
-Valid task entry function pointer.
-
-@item DEFAULT VALUE:
-The default value is @code{Init}.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_INIT_TASK_ENTRY_POINT} is the entry point (a.k.a. function
-name) of the single initialization task defined by the Classic API
-Initialization Tasks Table.
-
-@subheading NOTES:
-The user must implement the function @code{Init} or the function name provided
-in this configuration parameter.
-
-@c
-@c === CONFIGURE_INIT_TASK_NAME ===
-@c
-@subsection Specifying Classic API Initialization Task Name
-
-@findex CONFIGURE_INIT_TASK_NAME
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_INIT_TASK_NAME}
-
-@item DATA TYPE:
-RTEMS Name (@code{rtems_name}).
-
-@item RANGE:
-Any value.
-
-@item DEFAULT VALUE:
-The default value is @code{rtems_build_name( 'U', 'I', '1', ' ' )}.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_INIT_TASK_NAME} is the name of the single initialization
-task defined by the Classic API Initialization Tasks Table.
-
-@subheading NOTES:
-None.
-
-@c
-@c === CONFIGURE_INIT_TASK_STACK_SIZE ===
-@c
-@subsection Specifying Classic API Initialization Task Stack Size
-
-@findex CONFIGURE_INIT_TASK_STACK_SIZE
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_INIT_TASK_STACK_SIZE}
-
-@item DATA TYPE:
-Unsigned integer (@code{size_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is RTEMS_MINIMUM_STACK_SIZE.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_INIT_TASK_STACK_SIZE} is the stack size of the single
-initialization task defined by the Classic API Initialization Tasks Table.
-
-@subheading NOTES:
-If the stack size specified is greater than the configured minimum,
-it must be accounted for in @code{CONFIGURE_EXTRA_TASK_STACKS}.
-See @ref{Configuring a System Reserve Task/Thread Stack Memory Above Minimum}
-for more information about @code{CONFIGURE_EXTRA_TASK_STACKS}.
-
-@c
-@c === CONFIGURE_INIT_TASK_PRIORITY ===
-@c
-@subsection Specifying Classic API Initialization Task Priority
-
-@findex CONFIGURE_INIT_TASK_PRIORITY
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_INIT_TASK_PRIORITY}
-
-@item DATA TYPE:
-RTEMS Task Priority (@code{rtems_task_priority}).
-
-@item RANGE:
-One (1) to CONFIGURE_MAXIMUM_PRIORITY.
-
-@item DEFAULT VALUE:
-The default value is 1, which is the highest priority in the
-Classic API.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_INIT_TASK_PRIORITY} is the initial priority of the single
-initialization task defined by the Classic API Initialization Tasks Table.
-
-@subheading NOTES:
-None.
-
-@c
-@c === CONFIGURE_INIT_TASK_ATTRIBUTES ===
-@c
-@subsection Specifying Classic API Initialization Task Attributes
-
-@findex CONFIGURE_INIT_TASK_ATTRIBUTES
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_INIT_TASK_ATTRIBUTES}
-
-
-@item DATA TYPE:
-RTEMS Attributes (@code{rtems_attribute}).
-
-@item RANGE:
-Valid task attribute sets.
-
-@item DEFAULT VALUE:
-The default value is @code{RTEMS_DEFAULT_ATTRIBUTES}.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_INIT_TASK_ATTRIBUTES} is the task attributes of the single
-initialization task defined by the Classic API Initialization Tasks Table.
-
-@subheading NOTES:
-None.
-
-@c
-@c === CONFIGURE_INIT_TASK_INITIAL_MODES ===
-@c
-@subsection Specifying Classic API Initialization Task Modes
-
-@findex CONFIGURE_INIT_TASK_INITIAL_MODES
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_INIT_TASK_INITIAL_MODES}
-
-@item DATA TYPE:
-RTEMS Mode (@code{rtems_mode}).
-
-@item RANGE:
-Valid task mode sets.
-
-@item DEFAULT VALUE:
-The default value is @code{RTEMS_NO_PREEMPT}.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_INIT_TASK_INITIAL_MODES} is the initial execution mode of
-the single initialization task defined by the Classic API Initialization
-Tasks Table.
-
-@subheading NOTES:
-None.
-
-@c
-@c === CONFIGURE_INIT_TASK_ARGUMENTS ===
-@c
-@subsection Specifying Classic API Initialization Task Arguments
-
-@findex CONFIGURE_INIT_TASK_ARGUMENTS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_INIT_TASK_ARGUMENTS}
-
-@item DATA TYPE:
-RTEMS Task Argument (@code{rtems_task_argument}).
-
-@item RANGE:
-Complete range of the type.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_INIT_TASK_ARGUMENTS} is the task argument of the single
-initialization task defined by the Classic API Initialization Tasks Table.
-
-@subheading NOTES:
-None.
-
-@c
-@c === CONFIGURE_HAS_OWN_INIT_TASK_TABLE ===
-@c
-@subsection Not Using Generated Initialization Tasks Table
-
-@findex CONFIGURE_HAS_OWN_INIT_TASK_TABLE
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_HAS_OWN_INIT_TASK_TABLE}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_HAS_OWN_INIT_TASK_TABLE} is defined if the user wishes
-to define their own Classic API Initialization Tasks Table. This table
-should be named @code{Initialization_tasks}.
-
-@subheading NOTES:
-This is a seldom used configuration parameter. The most likely use case
-is when an application desires to have more than one initialization task.
-
-@c
-@c === POSIX API Configuration ===
-@c
-@section POSIX API Configuration
-
-The parameters in this section are used to configure resources
-for the RTEMS POSIX API. They are only relevant if the POSIX API
-is enabled at configure time using the @code{--enable-posix} option.
-
-@c
-@c === CONFIGURE_MAXIMUM_POSIX_THREADS ===
-@c
-@subsection Specify Maximum POSIX API Threads
-
-@findex CONFIGURE_MAXIMUM_POSIX_THREADS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_POSIX_THREADS}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_POSIX_THREADS} is the maximum number of POSIX API
-Threads that can be concurrently active.
-
-@subheading NOTES:
-This object class can be configured in unlimited allocation mode.
-
-This calculations for the required memory in the RTEMS Workspace
-for threads assume that each thread has a minimum stack size and
-has floating point support enabled. The configuration parameter
-@code{CONFIGURE_EXTRA_TASK_STACKS} is used to specify thread stack
-requirements @b{ABOVE} the minimum size required.
-See @ref{Configuring a System Reserve Task/Thread Stack Memory Above Minimum}
-for more information about @code{CONFIGURE_EXTRA_TASK_STACKS}.
-
-The maximum number of Classic API Tasks is specified by
-@code{CONFIGURE_MAXIMUM_TASKS}.
-
-All POSIX threads have floating point enabled.
-
-@c XXX - Add xref to CONFIGURE_MAXIMUM_TASKS.
-
-@c
-@c === CONFIGURE_MAXIMUM_POSIX_MUTEXES ===
-@c
-@subsection Specify Maximum POSIX API Mutexes
-
-@findex CONFIGURE_MAXIMUM_POSIX_MUTEXES
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_POSIX_MUTEXES}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_POSIX_MUTEXES} is the maximum number of POSIX
-API Mutexes that can be concurrently active.
-
-@subheading NOTES:
-This object class can be configured in unlimited allocation mode.
-
-@c
-@c === CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES ===
-@c
-@subsection Specify Maximum POSIX API Condition Variables
-
-@findex CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES} is the maximum number
-of POSIX API Condition Variables that can be concurrently active.
-
-@subheading NOTES:
-This object class can be configured in unlimited allocation mode.
-
-@c
-@c === CONFIGURE_MAXIMUM_POSIX_KEYS ===
-@c
-@subsection Specify Maximum POSIX API Keys
-
-@findex CONFIGURE_MAXIMUM_POSIX_KEYS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_POSIX_KEYS}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_POSIX_KEYS} is the maximum number of POSIX
-API Keys that can be concurrently active.
-
-@subheading NOTES:
-This object class can be configured in unlimited allocation mode.
-
-@c XXX - Key pairs
-
-@c
-@c === CONFIGURE_MAXIMUM_POSIX_TIMERS ===
-@c
-@subsection Specify Maximum POSIX API Timers
-
-@findex CONFIGURE_MAXIMUM_POSIX_TIMERS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_POSIX_TIMERS}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_POSIX_TIMERS} is the maximum number of POSIX
-API Timers that can be concurrently active.
-
-@subheading NOTES:
-This object class can be configured in unlimited allocation mode.
-
-@c
-@c === CONFIGURE_MAXIMUM_POSIX_QUEUED_SIGNALS ===
-@c
-@subsection Specify Maximum POSIX API Queued Signals
-
-@findex CONFIGURE_MAXIMUM_POSIX_QUEUED_SIGNALS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_POSIX_QUEUED_SIGNALS}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_POSIX_QUEUED_SIGNALS} is the maximum number of POSIX
-API Queued Signals that can be concurrently active.
-
-@subheading NOTES:
-None.
-
-@c
-@c === CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES ===
-@c
-@subsection Specify Maximum POSIX API Message Queues
-
-@findex CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES} is the maximum number of POSIX
-API Message Queues that can be concurrently active.
-
-@subheading NOTES:
-This object class can be configured in unlimited allocation mode.
-
-@c XXX - memory for buffers note
-
-@c
-@c === CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUE_DESCRIPTORS ===
-@c
-@subsection Specify Maximum POSIX API Message Queue Descriptors
-
-@findex CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUE_DESCRIPTORS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUE_DESCRIPTORS}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-greater than or equal to @code{CONFIGURE_MAXIMUM_POSIX_MESSAGES_QUEUES}
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUE_DESCRIPTORS} is the maximum
-number of POSIX API Message Queue Descriptors that can be concurrently
-active.
-
-@subheading NOTES:
-This object class can be configured in unlimited allocation mode.
-
-@code{CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUE_DESCRIPTORS} should be
-greater than or equal to @code{CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES}.
-
-@c
-@c === CONFIGURE_MAXIMUM_POSIX_SEMAPHORES ===
-@c
-@subsection Specify Maximum POSIX API Semaphores
-
-@findex CONFIGURE_MAXIMUM_POSIX_SEMAPHORES
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_POSIX_SEMAPHORES}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_POSIX_SEMAPHORES} is the maximum number of POSIX
-API Semaphores that can be concurrently active.
-
-@subheading NOTES:
-None.
-
-@c
-@c === CONFIGURE_MAXIMUM_POSIX_BARRIERS ===
-@c
-@subsection Specify Maximum POSIX API Barriers
-
-@findex CONFIGURE_MAXIMUM_POSIX_BARRIERS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_POSIX_BARRIERS}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_POSIX_BARRIERS} is the maximum number of POSIX
-API Barriers that can be concurrently active.
-
-@subheading NOTES:
-This object class can be configured in unlimited allocation mode.
-
-@c
-@c === CONFIGURE_MAXIMUM_POSIX_SPINLOCKS ===
-@c
-@subsection Specify Maximum POSIX API Spinlocks
-
-@findex CONFIGURE_MAXIMUM_POSIX_SPINLOCKS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_POSIX_SPINLOCKS}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_POSIX_SPINLOCKS} is the maximum number of POSIX
-API Spinlocks that can be concurrently active.
-
-@subheading NOTES:
-This object class can be configured in unlimited allocation mode.
-
-@c
-@c === CONFIGURE_MAXIMUM_POSIX_RWLOCKS ===
-@c
-@subsection Specify Maximum POSIX API Read/Write Locks
-
-@findex CONFIGURE_MAXIMUM_POSIX_RWLOCKS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_POSIX_RWLOCKS}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_POSIX_RWLOCKS} is the maximum number of POSIX
-API Read/Write Locks that can be concurrently active.
-
-@subheading NOTES:
-This object class can be configured in unlimited allocation mode.
-
-@c
-@c === POSIX Initialization Threads Table Configuration ===
-@c
-@section POSIX Initialization Threads Table Configuration
-
-The @code{<rtems/confdefs.h>} configuration system can automatically
-generate a POSIX Initialization Threads Table named
-@code{POSIX_Initialization_threads} with a single entry. The following
-parameters control the generation of that table.
-
-@c
-@c === CONFIGURE_POSIX_INIT_THREAD_TABLE ===
-@c
-@subsection Instantiate POSIX API Initialization Thread Table
-
-@findex CONFIGURE_POSIX_INIT_THREAD_TABLE
-
-@table @b
-@item CONSTANT:
-@findex CONFIGURE_POSIX_INIT_THREAD_TABLE
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This field is not defined by default, as the user MUST select their own
-API for initialization tasks.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_POSIX_INIT_THREAD_TABLE} is defined if the user wishes
-to use a POSIX API Initialization Threads Table. The table built
-by @code{<rtems/confdefs.h>} specifies the parameters for a single
-thread. This is sufficient for applications which initialization the
-system from a
-single task.
-
-By default, this field is not defined as the user MUST select their own
-API for initialization tasks.
-
-@subheading NOTES:
-The application may choose to use the initialization tasks or threads
-table from another API.
-
-A compile time error will be generated if the user does not configure
-any initialization tasks or threads.
-
-@c
-@c === CONFIGURE_POSIX_INIT_THREAD_ENTRY_POINT ===
-@c
-@subsection Specifying POSIX API Initialization Thread Entry Point
-
-@findex CONFIGURE_POSIX_INIT_THREAD_ENTRY_POINT
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_POSIX_INIT_THREAD_ENTRY_POINT}
-
-@item DATA TYPE:
-POSIX thread function pointer (@code{void *(*entry_point)(void *)}).
-
-@item RANGE:
-Undefined or a valid POSIX thread function pointer.
-
-@item DEFAULT VALUE:
-The default value is @code{POSIX_Init}.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_POSIX_INIT_THREAD_ENTRY_POINT} is the entry point
-(a.k.a. function name) of the single initialization thread defined by
-the POSIX API Initialization Threads Table.
-
-@subheading NOTES:
-The user must implement the function @code{POSIX_Init} or the function name
-provided in this configuration parameter.
-
-@c
-@c === CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE ===
-@c
-@subsection Specifying POSIX API Initialization Thread Stack Size
-
-@findex CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE}
-
-@item DATA TYPE:
-Unsigned integer (@code{size_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 2 * RTEMS_MINIMUM_STACK_SIZE.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE} is the stack size of the
-single initialization thread defined by the POSIX API Initialization
-Threads Table.
-
-@subheading NOTES:
-If the stack size specified is greater than the configured minimum,
-it must be accounted for in @code{CONFIGURE_EXTRA_TASK_STACKS}.
-See @ref{Configuring a System Reserve Task/Thread Stack Memory Above Minimum}
-for more information about @code{CONFIGURE_EXTRA_TASK_STACKS}.
-
-@c
-@c === CONFIGURE_POSIX_HAS_OWN_INIT_THREAD_TABLE ===
-@c
-@subsection Not Using Generated POSIX Initialization Threads Table
-
-@findex CONFIGURE_POSIX_HAS_OWN_INIT_THREAD_TABLE
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_POSIX_HAS_OWN_INIT_THREAD_TABLE}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_POSIX_HAS_OWN_INIT_THREAD_TABLE} is defined if the
-user wishes to define their own POSIX API Initialization Threads Table.
-This table should be named @code{POSIX_Initialization_threads}.
-
-@subheading NOTES:
-This is a seldom used configuration parameter. The most likely use case
-is when an application desires to have more than one initialization task.
-
-@c
-@c === Basic System Information ===
-@c
-@section Basic System Information
-
-This section defines the general system configuration parameters supported by
-@code{<rtems/confdefs.h>}.
-
-@c
-@c === CONFIGURE_UNIFIED_WORK_AREAS ===
-@c
-@subsection Separate or Unified Work Areas
-
-@findex CONFIGURE_UNIFIED_WORK_AREAS
-@cindex unified work areas
-@cindex separate work areas
-@cindex RTEMS Workspace
-@cindex C Program Heap
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_UNIFIED_WORK_AREAS}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default, which specifies that the C Program Heap
-and the RTEMS Workspace will be separate.
-
-@end table
-
-@subheading DESCRIPTION:
-When defined, the C Program Heap and the RTEMS Workspace will be one pool
-of memory.
-
-When not defined, there will be separate memory pools for the RTEMS
-Workspace and C Program Heap.
-
-@subheading NOTES:
-Having separate pools does have some advantages in the event a task blows
-a stack or writes outside its memory area. However, in low memory systems
-the overhead of the two pools plus the potential for unused memory in
-either pool is very undesirable.
-
-In high memory environments, this is desirable when you want to use the
-RTEMS "unlimited" objects option. You will be able to create objects
-until you run out of all available memory rather then just until you
-run out of RTEMS Workspace.
-
-@c
-@c === CONFIGURE_MICROSECONDS_PER_TICK ===
-@c
-@subsection Length of Each Clock Tick
-
-@findex CONFIGURE_MICROSECONDS_PER_TICK
-@cindex tick quantum
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MICROSECONDS_PER_TICK}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Positive.
-
-@item DEFAULT VALUE:
-This is not defined by default. When not defined,
-the clock tick quantum is configured to be 10,000
-microseconds which is ten (10) milliseconds.
-
-@end table
-
-@subheading DESCRIPTION:
-This constant is used to specify the length of time between clock ticks.
-
-When the clock tick quantum value is too low, the system will spend so
-much time processing clock ticks that it does not have processing time
-available to perform application work. In this case, the system will
-become unresponsive.
-
-The lowest practical time quantum varies widely based upon the speed
-of the target hardware and the architectural overhead associated with
-interrupts. In general terms, you do not want to configure it lower than
-is needed for the application.
-
-The clock tick quantum should be selected such that it all blocking and
-delay times in the application are evenly divisible by it. Otherwise,
-rounding errors will be introduced which may negatively impact the
-application.
-
-@subheading NOTES:
-This configuration parameter has no impact if the Clock Tick Device
-driver is not configured.
-
-There may be BSP specific limits on the resolution or maximum value of
-a clock tick quantum.
-
-@c
-@c === CONFIGURE_TICKS_PER_TIMESLICE ===
-@c
-@subsection Specifying Timeslicing Quantum
-
-@findex CONFIGURE_TICKS_PER_TIMESLICE
-@cindex ticks per timeslice
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_TICKS_PER_TIMESLICE}
-
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Positive.
-
-@item DEFAULT VALUE:
-The default value is 50.
-
-@end table
-
-@subheading DESCRIPTION:
-This configuration parameter specifies the length of the timeslice
-quantum in ticks for each task.
-
-@subheading NOTES:
-This configuration parameter has no impact if the Clock Tick Device
-driver is not configured.
-
-@c
-@c === CONFIGURE_MAXIMUM_PRIORITY ===
-@c
-@subsection Specifying the Number of Thread Priority Levels
-
-@findex CONFIGURE_MAXIMUM_PRIORITY
-@cindex maximum priority
-@cindex number of priority levels
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_PRIORITY}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint8_t}).
-
-@item RANGE:
-Valid values for this configuration parameter must be one (1) less than
-than a power of two (2) between 4 and 256 inclusively. In other words,
-valid values are 3, 7, 31, 63, 127, and 255.
-
-@item DEFAULT VALUE:
-The default value is 255, because RTEMS must support 256 priority levels to be
-compliant with various standards. These priorities range from zero (0) to 255.
-
-@end table
-
-@subheading DESCRIPTION:
-This configuration parameter specified the maximum numeric priority
-of any task in the system and one less that the number of priority levels
-in the system.
-
-Reducing the number of priorities in the system reduces the amount of
-memory allocated from the RTEMS Workspace.
-
-@subheading NOTES:
-The numerically greatest priority is the logically lowest priority in
-the system and will thus be used by the IDLE task.
-
-Priority zero (0) is reserved for internal use by RTEMS and is not
-available to applications.
-
-With some schedulers, reducing the number of priorities can reduce the
-amount of memory used by the scheduler. For example, the Deterministic
-Priority Scheduler (DPS) used by default uses three pointers of storage
-per priority level. Reducing the number of priorities from 256 levels
-to sixteen (16) can reduce memory usage by about three (3) kilobytes.
-
-@c
-@c === CONFIGURE_MINIMUM_TASK_STACK_SIZE ===
-@c
-@subsection Specifying the Minimum Task Size
-
-@findex CONFIGURE_MINIMUM_TASK_STACK_SIZE
-@cindex minimum task stack size
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MINIMUM_TASK_STACK_SIZE}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Positive.
-
-@item DEFAULT VALUE:
-This is not defined by default, which sets the executive to the recommended
-minimum stack size for this processor.
-
-@end table
-
-@subheading DESCRIPTION:
-The configuration parameter is set to the number of bytes the application
-wants the minimum stack size to be for every task or thread in the system.
-
-Adjusting this parameter should be done with caution. Examining the actual
-usage using the Stack Checker Usage Reporting facility is recommended.
-
-@subheading NOTES:
-This parameter can be used to lower the minimum from that
-recommended. This can be used in low memory systems to reduce memory
-consumption for stacks. However, this must be done with caution as it
-could increase the possibility of a blown task stack.
-
-This parameter can be used to increase the minimum from that
-recommended. This can be used in higher memory systems to reduce the
-risk of stack overflow without performing analysis on actual consumption.
-
-@c
-@c === CONFIGURE_INTERRUPT_STACK_SIZE ===
-@c
-@subsection Configuring the Size of the Interrupt Stack
-
-@findex CONFIGURE_INTERRUPT_STACK_SIZE
-@cindex interrupt stack size
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_INTERRUPT_STACK_SIZE}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Positive.
-
-@item DEFAULT VALUE:
-The default value is CONFIGURE_MINIMUM_TASK_STACK_SIZE, which is the minimum
-interrupt stack size.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_INTERRUPT_STACK_SIZE} is set to the size of the
-interrupt stack. The interrupt stack size is often set by the BSP but
-since this memory may be allocated from the RTEMS Workspace, it must be
-accounted for.
-
-@subheading NOTES:
-In some BSPs, changing this constant does NOT change the
-size of the interrupt stack, only the amount of memory
-reserved for it.
-
-Patches which result in this constant only being used in memory
-calculations when the interrupt stack is intended to be allocated
-from the RTEMS Workspace would be welcomed by the RTEMS Project.
-
-@c
-@c === CONFIGURE_EXTRA_TASK_STACKS ===
-@c
-@subsection Reserve Task/Thread Stack Memory Above Minimum
-
-@findex CONFIGURE_EXTRA_TASK_STACKS
-@cindex memory for task tasks
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_EXTRA_TASK_STACKS}
-
-@item DATA TYPE:
-Unsigned integer (@code{size_t}).
-
-@item RANGE:
-Undefined or positive.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-This configuration parameter is set to the number of bytes the
-applications wishes to add to the task stack requirements calculated
-by @code{<rtems/confdefs.h>}.
-
-@subheading NOTES:
-This parameter is very important. If the application creates tasks with
-stacks larger then the minimum, then that memory is NOT accounted for
-by @code{<rtems/confdefs.h>}.
-
-@c
-@c === CONFIGURE_ZERO_WORKSPACE_AUTOMATICALLY ===
-@c
-@subsection Automatically Zeroing the RTEMS Workspace and C Program Heap
-
-@findex CONFIGURE_ZERO_WORKSPACE_AUTOMATICALLY
-@cindex clear C Program Heap
-@cindex clear RTEMS Workspace
-@cindex zero C Program Heap
-@cindex zero RTEMS Workspace
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_ZERO_WORKSPACE_AUTOMATICALLY}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default, unless overridden by the BSP.
-The default is @b{NOT} to zero out the RTEMS Workspace or C Program Heap.
-
-@end table
-
-@subheading DESCRIPTION:
-This macro indicates whether RTEMS should zero the RTEMS Workspace and
-C Program Heap as part of its initialization. If defined, the memory
-regions are zeroed. Otherwise, they are not.
-
-@subheading NOTES:
-Zeroing memory can add significantly to system boot time. It is not
-necessary for RTEMS but is often assumed by support libraries.
-
-@c
-@c === CONFIGURE_STACK_CHECKER_ENABLED ===
-@c
-@subsection Enable The Task Stack Usage Checker
-
-@findex CONFIGURE_STACK_CHECKER_ENABLED
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_STACK_CHECKER_ENABLED}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default, and thus stack checking is disabled.
-
-@end table
-
-@subheading DESCRIPTION:
-This configuration parameter is defined when the application wishes to
-enable run-time stack bounds checking.
-
-
-@subheading NOTES:
-In 4.9 and older, this configuration parameter was named
-@code{STACK_CHECKER_ON}.
-
-This increases the time required to create tasks as well as adding
-overhead to each context switch.
-
-@c
-@c === CONFIGURE_INITIAL_EXTENSIONS ===
-@c
-@subsection Specify Application Specific User Extensions
-
-@findex CONFIGURE_INITIAL_EXTENSIONS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_INITIAL_EXTENSIONS}
-
-@item DATA TYPE:
-List of user extension initializers (@code{rtems_extensions_table}).
-
-@item RANGE:
-Undefined or a list of one or more user extensions.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-If @code{CONFIGURE_INITIAL_EXTENSIONS} is defined by the application,
-then this application specific set of initial extensions will be placed
-in the initial extension table.
-
-@subheading NOTES:
-None.
-
-@c
-@c === Custom Stack Allocator ===
-@c
-@section Configuring Custom Task Stack Allocation
-
-RTEMS allows the application or BSP to define its own allocation and
-deallocation methods for task stacks. This can be used to place task
-stacks in special areas of memory or to utilize a Memory Management Unit
-so that stack overflows are detected in hardware.
-
-@c
-@c === CONFIGURE_TASK_STACK_ALLOCATOR_INIT ===
-@c
-@subsection Custom Task Stack Allocator Initialization
-
-@findex CONFIGURE_TASK_STACK_ALLOCATOR_INIT
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_TASK_STACK_ALLOCATOR_INIT}
-
-@item DATA TYPE:
-Function pointer.
-
-@item RANGE:
-Undefined, NULL or valid function pointer.
-
-@item DEFAULT VALUE:
-The default value is NULL, which indicates that
-task stacks will be allocated from the RTEMS Workspace.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_TASK_STACK_ALLOCATOR_INIT} configures the initialization
-method for an application or BSP specific task stack allocation
-implementation.
-
-@subheading NOTES:
-A correctly configured system must configure the following to be consistent:
-
-@itemize @bullet
-@item @code{CONFIGURE_TASK_STACK_ALLOCATOR_INIT}
-@item @code{CONFIGURE_TASK_STACK_ALLOCATOR}
-@item @code{CONFIGURE_TASK_STACK_DEALLOCATOR}
-@end itemize
-
-@c
-@c === CONFIGURE_TASK_STACK_ALLOCATOR ===
-@c
-@subsection Custom Task Stack Allocator
-
-@findex CONFIGURE_TASK_STACK_ALLOCATOR
-
-@cindex task stack allocator
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_TASK_STACK_ALLOCATOR}
-
-@item DATA TYPE:
-Function pointer.
-
-@item RANGE:
-Undefined or valid function pointer.
-
-@item DEFAULT VALUE:
-The default value is @code{_Workspace_Allocate}, which indicates
-that task stacks will be allocated from the RTEMS Workspace.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_TASK_STACK_ALLOCATOR} may point to a user provided
-routine to allocate task stacks.
-
-@subheading NOTES:
-A correctly configured system must configure the following to be consistent:
-
-@itemize @bullet
-@item @code{CONFIGURE_TASK_STACK_ALLOCATOR_INIT}
-@item @code{CONFIGURE_TASK_STACK_ALLOCATOR}
-@item @code{CONFIGURE_TASK_STACK_DEALLOCATOR}
-@end itemize
-
-@c
-@c === CONFIGURE_TASK_STACK_DEALLOCATOR ===
-@c
-@subsection Custom Task Stack Deallocator
-
-@findex CONFIGURE_TASK_STACK_DEALLOCATOR
-@cindex task stack deallocator
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_TASK_STACK_DEALLOCATOR}
-
-@item DATA TYPE:
-Function pointer.
-
-@item RANGE:
-Undefined or valid function pointer.
-
-@item DEFAULT VALUE:
-The default value is @code{_Workspace_Free}, which indicates that
-task stacks will be allocated from the RTEMS Workspace.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_TASK_STACK_DEALLOCATOR} may point to a user provided
-routine to free task stacks.
-
-@subheading NOTES:
-A correctly configured system must configure the following to be consistent:
-
-@itemize @bullet
-@item @code{CONFIGURE_TASK_STACK_ALLOCATOR_INIT}
-@item @code{CONFIGURE_TASK_STACK_ALLOCATOR}
-@item @code{CONFIGURE_TASK_STACK_DEALLOCATOR}
-@end itemize
-
-@c
-@c === Classic API Message Buffers ===
-@c
-@section Configuring Memory for Classic API Message Buffers
-
-This section describes the configuration parameters related to specifying
-the amount of memory reserved for Classic API Message Buffers.
-
-@c
-@c === CONFIGURE_MESSAGE_BUFFERS_FOR_QUEUE ===
-@c
-@subsection Calculate Memory for a Single Classic Message API Message Queue
-
-@findex CONFIGURE_MESSAGE_BUFFERS_FOR_QUEUE
-@cindex memory for a single message queue's buffers
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MESSAGE_BUFFERS_FOR_QUEUE(max_messages, size_per)}
-
-@item DATA TYPE:
-Unsigned integer (@code{size_t}).
-
-@item RANGE:
-Positive.
-
-@item DEFAULT VALUE:
-The default value is None.
-
-@end table
-
-@subheading DESCRIPTION:
-This is a helper macro which is used to assist in computing the total
-amount of memory required for message buffers. Each message queue will
-have its own configuration with maximum message size and maximum number
-of pending messages.
-
-The interface for this macro is as follows:
-
-@example
-CONFIGURE_MESSAGE_BUFFERS_FOR_QUEUE(max_messages, size_per)
-@end example
-
-Where @code{max_messages} is the maximum number of pending messages
-and @code{size_per} is the size in bytes of the user message.
-
-@subheading NOTES:
-This macro is only used in support of @code{CONFIGURE_MESSAGE_BUFFER_MEMORY}.
-
-@c
-@c === CONFIGURE_MESSAGE_BUFFER_MEMORY ===
-@c
-@subsection Reserve Memory for All Classic Message API Message Queues
-
-@findex CONFIGURE_MESSAGE_BUFFER_MEMORY
-@cindex configure message queue buffer memory
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MESSAGE_BUFFER_MEMORY}
-
-@item DATA TYPE:
-integer summation macro
-
-@item RANGE:
-undefined (zero) or calculation resulting in a positive integer
-
-@item DEFAULT VALUE:
-This is not defined by default, and zero (0) memory is reserved.
-
-@end table
-
-@subheading DESCRIPTION:
-This macro is set to the number of bytes the application requires to be
-reserved for pending Classic API Message Queue buffers.
-
-@subheading NOTES:
-The following illustrates how the help macro
-@code{CONFIGURE_MESSAGE_BUFFERS_FOR_QUEUE} can be used to assist in
-calculating the message buffer memory required. In this example, there
-are two message queues used in this application. The first message
-queue has maximum of 24 pending messages with the message structure
-defined by the type @code{one_message_type}. The other message queue
-has maximum of 500 pending messages with the message structure defined
-by the type @code{other_message_type}.
-
-@example
-@group
-#define CONFIGURE_MESSAGE_BUFFER_MEMORY \
- (CONFIGURE_MESSAGE_BUFFERS_FOR_QUEUE( \
- 24, sizeof(one_message_type) + \
- CONFIGURE_MESSAGE_BUFFERS_FOR_QUEUE( \
- 500, sizeof(other_message_type) \
- )
-@end group
-@end example
-
-@c
-@c === Seldom Used Configuration Parameters ===
-@c
-@section Seldom Used Configuration Parameters
-
-This section describes configuration parameters supported by
-@code{<rtems/confdefs.h>} which are seldom used by applications. These
-parameters tend to be oriented to debugging system configurations
-and providing work-arounds when the memory estimated by
-@code{<rtems/confdefs.h>} is incorrect.
-
-@c
-@c === CONFIGURE_MEMORY_OVERHEAD ===
-@c
-@subsection Specify Memory Overhead
-
-@findex CONFIGURE_MEMORY_OVERHEAD
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MEMORY_OVERHEAD}
-
-@item DATA TYPE:
-Unsigned integer (@code{size_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-Thie parameter is set to the number of kilobytes the application wishes
-to add to the requirements calculated by @code{<rtems/confdefs.h>}.
-
-@subheading NOTES:
-This configuration parameter should only be used when it is suspected that
-a bug in @code{<rtems/confdefs.h>} has resulted in an underestimation.
-Typically the memory allocation will be too low when an application does
-not account for all message queue buffers or task stacks.
-
-@c
-@c === CONFIGURE_HAS_OWN_CONFIGURATION_TABLE ===
-@c
-@subsection Do Not Generate Configuration Information
-
-@findex CONFIGURE_HAS_OWN_CONFIGURATION_TABLE
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_HAS_OWN_CONFIGURATION_TABLE}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-This configuration parameter should only be defined if the application
-is providing their own complete set of configuration tables.
-
-@subheading NOTES:
-None.
-
-@c
-@c === C Library Support Configuration ===
-@c
-@section C Library Support Configuration
-
-This section defines the file system and IO library
-related configuration parameters supported by
-@code{<rtems/confdefs.h>}.
-
-@c
-@c === CONFIGURE_LIBIO_MAXIMUM_FILE_DESCRIPTORS ===
-@c
-@subsection Specify Maximum Number of File Descriptors
-
-@findex CONFIGURE_LIBIO_MAXIMUM_FILE_DESCRIPTORS
-@cindex maximum file descriptors
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_LIBIO_MAXIMUM_FILE_DESCRIPTORS}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-
-If @code{CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER} is defined, then the
-default value is 3, otherwise the default value is 0.
-
-Three file descriptors allows RTEMS to support standard input, output, and
-error I/O streams on @code{/dev/console}.
-
-@end table
-
-@subheading DESCRIPTION:
-This configuration parameter is set to the maximum number of file like objects
-that can be concurrently open.
-
-@subheading NOTES:
-None.
-
-@c
-@c === CONFIGURE_TERMIOS_DISABLED ===
-@c
-@subsection Disable POSIX Termios Support
-
-@findex CONFIGURE_TERMIOS_DISABLED
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_TERMIOS_DISABLED}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default, and resources are reserved for the
-termios functionality.
-
-@end table
-
-@subheading DESCRIPTION:
-This configuration parameter is defined if the software implementing
-POSIX termios functionality is not going to be used by this application.
-
-@subheading NOTES:
-The termios support library should not be included in an application
-executable unless it is directly referenced by the application or a
-device driver.
-
-@c
-@c === CONFIGURE_NUMBER_OF_TERMIOS_PORTS ===
-@c
-@subsection Specify Maximum Termios Ports
-
-@findex CONFIGURE_NUMBER_OF_TERMIOS_PORTS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_NUMBER_OF_TERMIOS_PORTS}
-
-@item DATA TYPE:
-Unsigned integer.
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 1, so a console port can be used.
-
-@end table
-
-@subheading DESCRIPTION:
-This configuration parameter is set to the number of ports using the
-termios functionality. Each concurrently active termios port requires
-resources.
-
-@subheading NOTES:
-If the application will be using serial ports
-including, but not limited to, the Console Device
-(e.g. @code{CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER}), then it is
-highly likely that this configuration parameter should NOT be is defined.
-
-@c
-@c === File System Configuration Parameters ===
-@c
-@section File System Configuration Parameters
-
-This section defines File System related configuration parameters.
-
-@c
-@c === CONFIGURE_HAS_OWN_MOUNT_TABLE ===
-@c
-@subsection Providing Application Specific Mount Table
-
-@findex CONFIGURE_HAS_OWN_MOUNT_TABLE
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_HAS_OWN_MOUNT_TABLE}
-
-@item DATA TYPE:
-Undefined or an array of type @code{rtems_filesystem_mount_table_t}.
-
-@item RANGE:
-Undefined or an array of type @code{rtems_filesystem_mount_table_t}.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-This configuration parameter is defined when the application
-provides their own filesystem mount table. The mount table is an
-array of @code{rtems_filesystem_mount_table_t} entries pointed
-to by the global variable @code{rtems_filesystem_mount_table}.
-The number of entries in this table is in an integer variable named
-@code{rtems_filesystem_mount_table_t}.
-
-@c XXX - is the variable name for the count right?
-
-@subheading NOTES:
-None.
-@c XXX - Please provide an example
-
-@c
-@c === CONFIGURE_USE_DEVFS_AS_BASE_FILESYSTEM ===
-@c
-@subsection Configure devFS as Root File System
-
-@findex CONFIGURE_USE_DEVFS_AS_BASE_FILESYSTEM
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_USE_DEVFS_AS_BASE_FILESYSTEM}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default. If no other root file system
-configuration parameters are specified, the IMFS will be used as the
-root file system.
-
-@end table
-
-@subheading DESCRIPTION:
-This configuration parameter is defined if the application wishes to
-use the device-only filesytem as the root file system.
-
-@subheading NOTES:
-The device-only filesystem supports only device nodes and is smaller in
-executable code size than the full IMFS and miniIMFS.
-
-The devFS is comparable in functionality to the pseudo-filesystem name
-space provided before RTEMS release 4.5.0.
-
-@c
-@c === CONFIGURE_MAXIMUM_DEVICES ===
-@c
-@subsection Specifying Maximum Devices for devFS
-
-@findex CONFIGURE_MAXIMUM_DEVICES
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_DEVICES}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Positive.
-
-@item DEFAULT VALUE:
-If @code{BSP_MAXIMUM_DEVICES} is defined, then the
-default value is @code{BSP_MAXIMUM_DEVICES}, otherwise the default value is 4.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_DEVICES} is defined to the number of
-individual devices that may be registered in the device file system (devFS).
-
-@subheading NOTES:
-This option is specific to the device file system (devFS) and should not be
-confused with the @code{CONFIGURE_MAXIMUM_DRIVERS} option. This parameter only
-impacts the devFS and thus is only used by @code{<rtems/confdefs.h>} when
-@code{CONFIGURE_USE_DEVFS_AS_BASE_FILESYSTEM} is specified.
-
-@c
-@c === CONFIGURE_APPLICATION_DISABLE_FILESYSTEM ===
-@c
-@subsection Disable File System Support
-
-@findex CONFIGURE_APPLICATION_DISABLE_FILESYSTEM
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_APPLICATION_DISABLE_FILESYSTEM}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default. If no other root file system
-configuration parameters are specified, the IMFS will be used as the
-root file system.
-
-@end table
-
-@subheading DESCRIPTION:
-This configuration parameter is defined if the application dose not
-intend to use any kind of filesystem support. This include the device
-infrastructure necessary to support @code{printf()}.
-
-@subheading NOTES:
-None.
-
-@c
-@c === CONFIGURE_USE_MINIIMFS_AS_BASE_FILESYSTEM ===
-@c
-@subsection Use a Root IMFS with a Minimalistic Feature Set
-
-@findex CONFIGURE_USE_MINIIMFS_AS_BASE_FILESYSTEM
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_USE_MINIIMFS_AS_BASE_FILESYSTEM}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-In case this configuration option is defined, then the following configuration
-options will be defined as well
-@itemize @bullet
-@item @code{CONFIGURE_IMFS_DISABLE_CHMOD},
-@item @code{CONFIGURE_IMFS_DISABLE_CHOWN},
-@item @code{CONFIGURE_IMFS_DISABLE_UTIME},
-@item @code{CONFIGURE_IMFS_DISABLE_LINK},
-@item @code{CONFIGURE_IMFS_DISABLE_SYMLINK},
-@item @code{CONFIGURE_IMFS_DISABLE_READLINK},
-@item @code{CONFIGURE_IMFS_DISABLE_RENAME}, and
-@item @code{CONFIGURE_IMFS_DISABLE_UNMOUNT}.
-@end itemize
-
-@c
-@c === CONFIGURE_IMFS_MEMFILE_BYTES_PER_BLOCK ===
-@c
-@subsection Specify Block Size for IMFS
-
-@findex CONFIGURE_IMFS_MEMFILE_BYTES_PER_BLOCK
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_IMFS_MEMFILE_BYTES_PER_BLOCK}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Valid values for this configuration parameter are a power of two (2)
-between 16 and 512 inclusive. In other words, valid values are 16,
-32, 64, 128, 256,and 512.
-
-@item DEFAULT VALUE:
-The default IMFS block size is 128 bytes.
-
-@end table
-
-@subheading DESCRIPTION:
-This configuration parameter specifies the block size for in-memory files
-managed by the IMFS. The configured block size has two impacts. The first
-is the average amount of unused memory in the last block of each file. For
-example, when the block size is 512, on average one-half of the last block
-of each file will remain unused and the memory is wasted. In contrast,
-when the block size is 16, the average unused memory per file is only
-8 bytes. However, it requires more allocations for the same size file
-and thus more overhead per block for the dynamic memory management.
-
-Second, the block size has an impact on the maximum size file that can
-be stored in the IMFS. With smaller block size, the maximum file size
-is correspondingly smaller. The following shows the maximum file size
-possible based on the configured block size:
-
-@itemize @bullet
-@item when the block size is 16 bytes, the maximum file size is 1,328
-bytes.
-@item when the block size is 32 bytes, the maximum file size is 18,656
-bytes.
-@item when the block size is 64 bytes, the maximum file size is 279,488
-bytes.
-@item when the block size is 128 bytes, the maximum file size is
-4,329,344 bytes.
-@item when the block size is 256 bytes, the maximum file size is
-68,173,568 bytes.
-@item when the block size is 512 bytes, the maximum file size is
-1,082,195,456 bytes.
-@end itemize
-
-
-@c
-@c === CONFIGURE_IMFS_DISABLE_CHOWN ===
-@c
-@subsection Disable Change Owner Support of Root IMFS
-
-@findex CONFIGURE_IMFS_DISABLE_CHOWN
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_IMFS_DISABLE_CHOWN}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-In case this configuration option is defined, then the support to change the
-owner is disabled in the root IMFS.
-
-@c
-@c === CONFIGURE_IMFS_DISABLE_CHMOD ===
-@c
-@subsection Disable Change Mode Support of Root IMFS
-
-@findex CONFIGURE_IMFS_DISABLE_CHMOD
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_IMFS_DISABLE_CHMOD}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-In case this configuration option is defined, then the support to change the
-mode is disabled in the root IMFS.
-
-@c
-@c === CONFIGURE_IMFS_DISABLE_UTIME ===
-@c
-@subsection Disable Change Times Support of Root IMFS
-
-@findex CONFIGURE_IMFS_DISABLE_UTIME
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_IMFS_DISABLE_UTIME}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-In case this configuration option is defined, then the support to change times
-is disabled in the root IMFS.
-
-@c
-@c === CONFIGURE_IMFS_DISABLE_LINK ===
-@c
-@subsection Disable Create Hard Link Support of Root IMFS
-
-@findex CONFIGURE_IMFS_DISABLE_LINK
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_IMFS_DISABLE_LINK}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-In case this configuration option is defined, then the support to create hard
-links is disabled in the root IMFS.
-
-@c
-@c === CONFIGURE_IMFS_DISABLE_SYMLINK ===
-@c
-@subsection Disable Create Symbolic Link Support of Root IMFS
-
-@findex CONFIGURE_IMFS_DISABLE_SYMLINK
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_IMFS_DISABLE_SYMLINK}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-In case this configuration option is defined, then the support to create
-symbolic links is disabled in the root IMFS.
-
-@c
-@c === CONFIGURE_IMFS_DISABLE_READLINK ===
-@c
-@subsection Disable Read Symbolic Link Support of Root IMFS
-
-@findex CONFIGURE_IMFS_DISABLE_READLINK
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_IMFS_DISABLE_READLINK}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-In case this configuration option is defined, then the support to read symbolic
-links is disabled in the root IMFS.
-
-@c
-@c === CONFIGURE_IMFS_DISABLE_RENAME ===
-@c
-@subsection Disable Rename Support of Root IMFS
-
-@findex CONFIGURE_IMFS_DISABLE_RENAME
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_IMFS_DISABLE_RENAME}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-In case this configuration option is defined, then the support to rename nodes
-is disabled in the root IMFS.
-
-@c
-@c === CONFIGURE_IMFS_DISABLE_READDIR ===
-@c
-@subsection Disable Directory Read Support of Root IMFS
-
-@findex CONFIGURE_IMFS_DISABLE_READDIR
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_IMFS_DISABLE_READDIR}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-In case this configuration option is defined, then the support to read a
-directory is disabled in the root IMFS. It is still possible to open nodes in
-a directory.
-
-@c
-@c === CONFIGURE_IMFS_DISABLE_MOUNT ===
-@c
-@subsection Disable Mount Support of Root IMFS
-
-@findex CONFIGURE_IMFS_DISABLE_MOUNT
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_IMFS_DISABLE_MOUNT}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-In case this configuration option is defined, then the support to mount other
-file systems is disabled in the root IMFS.
-
-@c
-@c === CONFIGURE_IMFS_DISABLE_UNMOUNT ===
-@c
-@subsection Disable Unmount Support of Root IMFS
-
-@findex CONFIGURE_IMFS_DISABLE_UNMOUNT
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_IMFS_DISABLE_UNMOUNT}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-In case this configuration option is defined, then the support to unmount file
-systems is disabled in the root IMFS.
-
-@c
-@c === CONFIGURE_IMFS_DISABLE_MKNOD ===
-@c
-@subsection Disable Make Nodes Support of Root IMFS
-
-@findex CONFIGURE_IMFS_DISABLE_MKNOD
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_IMFS_DISABLE_MKNOD}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-In case this configuration option is defined, then the support to make
-directories, devices, regular files and FIFOs is disabled in the root IMFS.
-
-@c
-@c === CONFIGURE_IMFS_DISABLE_MKNOD_FILE ===
-@c
-@subsection Disable Make Files Support of Root IMFS
-
-@findex CONFIGURE_IMFS_DISABLE_MKNOD_FILE
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_IMFS_DISABLE_MKNOD_FILE}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-In case this configuration option is defined, then the support to make regular
-files is disabled in the root IMFS.
-
-@c
-@c === CONFIGURE_IMFS_DISABLE_RMNOD ===
-@c
-@subsection Disable Remove Nodes Support of Root IMFS
-
-@findex CONFIGURE_IMFS_DISABLE_RMNOD
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_IMFS_DISABLE_RMNOD}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-In case this configuration option is defined, then the support to remove nodes
-is disabled in the root IMFS.
-
-@c
-@c === Block Device Cache Configuration ===
-@c
-@section Block Device Cache Configuration
-
-This section defines Block Device Cache (bdbuf) related configuration
-parameters.
-
-@c
-@c === CONFIGURE_APPLICATION_NEEDS_LIBBLOCK ===
-@c
-@subsection Enable Block Device Cache
-
-@findex CONFIGURE_APPLICATION_NEEDS_LIBBLOCK
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_APPLICATION_NEEDS_LIBBLOCK}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-Provides a Block Device Cache configuration.
-
-@subheading NOTES:
-Each option of the Block Device Cache configuration can be explicitly set by
-the user with the configuration options below. The Block Device Cache is used
-for example by the RFS and DOSFS file systems.
-
-@c
-@c === CONFIGURE_BDBUF_CACHE_MEMORY_SIZE ===
-@c
-@subsection Size of the Cache Memory
-
-@findex CONFIGURE_BDBUF_CACHE_MEMORY_SIZE
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_BDBUF_CACHE_MEMORY_SIZE}
-
-@item DATA TYPE:
-Unsigned integer (@code{size_t}).
-
-@item RANGE:
-Positive.
-
-@item DEFAULT VALUE:
-The default value is 32768 bytes.
-
-@end table
-
-@subheading DESCRIPTION:
-Size of the cache memory in bytes.
-
-@subheading NOTES:
-None.
-
-@c
-@c === CONFIGURE_BDBUF_BUFFER_MIN_SIZE ===
-@c
-@subsection Minimum Size of a Buffer
-
-@findex CONFIGURE_BDBUF_BUFFER_MIN_SIZE
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_BDBUF_BUFFER_MIN_SIZE}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Positive.
-
-@item DEFAULT VALUE:
-The default value is 512 bytes.
-
-@end table
-
-@subheading DESCRIPTION:
-Defines the minimum size of a buffer in bytes.
-
-@subheading NOTES:
-None.
-
-@c
-@c === CONFIGURE_BDBUF_BUFFER_MAX_SIZE ===
-@c
-@subsection Maximum Size of a Buffer
-
-@findex CONFIGURE_BDBUF_BUFFER_MAX_SIZE
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_BDBUF_BUFFER_MAX_SIZE}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-It must be positive and an integral multiple of the buffer minimum size.
-
-@item DEFAULT VALUE:
-The default value is 4096 bytes.
-
-@end table
-
-@subheading DESCRIPTION:
-Defines the maximum size of a buffer in bytes.
-
-@subheading NOTES:
-None.
-
-@c
-@c === CONFIGURE_SWAPOUT_SWAP_PERIOD ===
-@c
-@subsection Swapout Task Swap Period
-
-@findex CONFIGURE_SWAPOUT_SWAP_PERIOD
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_SWAPOUT_SWAP_PERIOD}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Positive.
-
-@item DEFAULT VALUE:
-The default value is 250 milliseconds.
-
-@end table
-
-@subheading DESCRIPTION:
-Defines the swapout task swap period in milliseconds.
-
-@subheading NOTES:
-None.
-
-@c
-@c === CONFIGURE_SWAPOUT_BLOCK_HOLD ===
-@c
-@subsection Swapout Task Maximum Block Hold Time
-
-@findex CONFIGURE_SWAPOUT_BLOCK_HOLD
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_SWAPOUT_BLOCK_HOLD}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Positive.
-
-@item DEFAULT VALUE:
-The default value is 1000 milliseconds.
-
-@end table
-
-@subheading DESCRIPTION:
-Defines the swapout task maximum block hold time in milliseconds.
-
-@subheading NOTES:
-None.
-
-@c
-@c === CONFIGURE_SWAPOUT_TASK_PRIORITY ===
-@c
-@subsection Swapout Task Priority
-
-@findex CONFIGURE_SWAPOUT_TASK_PRIORITY
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_SWAPOUT_TASK_PRIORITY}
-
-@item DATA TYPE:
-Task priority (@code{rtems_task_priority}).
-
-@item RANGE:
-Valid task priority.
-
-@item DEFAULT VALUE:
-The default value is 15.
-
-@end table
-
-@subheading DESCRIPTION:
-Defines the swapout task priority.
-
-@subheading NOTES:
-None.
-
-@c
-@c === CONFIGURE_BDBUF_MAX_READ_AHEAD_BLOCKS ===
-@c
-@subsection Maximum Blocks per Read-Ahead Request
-
-@findex CONFIGURE_BDBUF_MAX_READ_AHEAD_BLOCKS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_BDBUF_MAX_READ_AHEAD_BLOCKS}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Positive.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-Defines the maximum blocks per read-ahead request.
-
-@subheading NOTES:
-A value of 0 disables the read-ahead task (default). The read-ahead task will
-issue speculative read transfers if a sequential access pattern is detected.
-This can improve the performance on some systems.
-
-@c
-@c === CONFIGURE_BDBUF_MAX_WRITE_BLOCKS ===
-@c
-@subsection Maximum Blocks per Write Request
-
-@findex CONFIGURE_BDBUF_MAX_WRITE_BLOCKS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_BDBUF_MAX_WRITE_BLOCKS}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Positive.
-
-@item DEFAULT VALUE:
-The default value is 16.
-
-@end table
-
-@subheading DESCRIPTION:
-Defines the maximum blocks per write request.
-
-@subheading NOTES:
-None.
-
-@c
-@c === CONFIGURE_BDBUF_TASK_STACK_SIZE ===
-@c
-@subsection Task Stack Size of the Block Device Cache Tasks
-
-@findex CONFIGURE_BDBUF_TASK_STACK_SIZE
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_BDBUF_TASK_STACK_SIZE}
-
-@item DATA TYPE:
-Unsigned integer (@code{size_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is RTEMS_MINIMUM_STACK_SIZE.
-
-@end table
-
-@subheading DESCRIPTION:
-Defines the task stack size of the Block Device Cache tasks in bytes.
-
-@subheading NOTES:
-None.
-
-@c
-@c === CONFIGURE_BDBUF_READ_AHEAD_TASK_PRIORITY ===
-@c
-@subsection Read-Ahead Task Priority
-
-@findex CONFIGURE_BDBUF_READ_AHEAD_TASK_PRIORITY
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_BDBUF_READ_AHEAD_TASK_PRIORITY}
-
-@item DATA TYPE:
-Task priority (@code{rtems_task_priority}).
-
-@item RANGE:
-Valid task priority.
-
-@item DEFAULT VALUE:
-The default value is 15.
-
-@end table
-
-@subheading DESCRIPTION:
-Defines the read-ahead task priority.
-
-@subheading NOTES:
-None.
-
-@c
-@c === CONFIGURE_SWAPOUT_WORKER_TASKS ===
-@c
-@subsection Swapout Worker Task Count
-
-@findex CONFIGURE_SWAPOUT_WORKER_TASKS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_SWAPOUT_WORKER_TASKS}
-
-@item DATA TYPE:
-Unsigned integer (@code{size_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-Defines the swapout worker task count.
-
-@subheading NOTES:
-None.
-
-@c
-@c === CONFIGURE_SWAPOUT_WORKER_TASK_PRIORITY ===
-@c
-@subsection Swapout Worker Task Priority
-
-@findex CONFIGURE_SWAPOUT_WORKER_TASK_PRIORITY
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_SWAPOUT_WORKER_TASK_PRIORITY}
-
-@item DATA TYPE:
-Task priority (@code{rtems_task_priority}).
-
-@item RANGE:
-Valid task priority.
-
-@item DEFAULT VALUE:
-The default value is 15.
-
-@end table
-
-@subheading DESCRIPTION:
-Defines the swapout worker task priority.
-
-@subheading NOTES:
-None.
-
-@c
-@c === BSP Specific Settings ===
-@c
-@section BSP Specific Settings
-
-This section describes BSP specific configuration settings used by
-@code{<rtems/confdefs.h>}. The BSP specific configuration settings are
-defined in @code{<bsp.h>}.
-
-@c
-@c === Disable BSP Settings ===
-@c
-@subsection Disable BSP Configuration Settings
-
-@findex CONFIGURE_DISABLE_BSP_SETTINGS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_DISABLE_BSP_SETTINGS}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-All BSP specific configuration settings can be disabled by the application
-with the @code{CONFIGURE_DISABLE_BSP_SETTINGS} option.
-
-@subheading NOTES:
-None.
-
-@c
-@c === CONFIGURE_MALLOC_BSP_SUPPORTS_SBRK ===
-@c
-@subsection Specify BSP Supports sbrk()
-
-@findex CONFIGURE_MALLOC_BSP_SUPPORTS_SBRK
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MALLOC_BSP_SUPPORTS_SBRK}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This option is BSP specific.
-
-@end table
-
-@subheading DESCRIPTION:
-This configuration parameter is defined by a BSP to indicate that it
-does not allocate all available memory to the C Program Heap used by
-the Malloc Family of routines.
-
-If defined, when @code{malloc()} is unable to allocate memory, it will
-call the BSP supplied @code{sbrk()} to obtain more memory.
-
-@subheading NOTES:
-This parameter should not be defined by the application. Only the BSP
-knows how it allocates memory to the C Program Heap.
-
-@c
-@c === BSP_IDLE_TASK_BODY ===
-@c
-@subsection Specify BSP Specific Idle Task
-
-@findex BSP_IDLE_TASK_BODY
-
-@table @b
-@item CONSTANT:
-@code{BSP_IDLE_TASK_BODY}
-
-@item DATA TYPE:
-Function pointer.
-
-@item RANGE:
-Undefined or valid function pointer.
-
-@item DEFAULT VALUE:
-This option is BSP specific.
-
-@end table
-
-@subheading DESCRIPTION:
-If @code{BSP_IDLE_TASK_BODY} is defined by the BSP and
-@code{CONFIGURE_IDLE_TASK_BODY} is not defined by the application,
-then this BSP specific idle task body will be used.
-
-@subheading NOTES:
-As it has knowledge of the specific CPU model, system controller logic,
-and peripheral buses, a BSP specific IDLE task may be capable of turning
-components off to save power during extended periods of no task activity
-
-@c
-@c === BSP_IDLE_TASK_STACK_SIZE ===
-@c
-@subsection Specify BSP Suggested Value for IDLE Task Stack Size
-
-@findex BSP_IDLE_TASK_STACK_SIZE
-
-@table @b
-@item CONSTANT:
-@code{BSP_IDLE_TASK_STACK_SIZE}
-
-@item DATA TYPE:
-Unsigned integer (@code{size_t}).
-
-@item RANGE:
-Undefined or positive.
-
-@item DEFAULT VALUE:
-This option is BSP specific.
-
-@end table
-
-@subheading DESCRIPTION:
-If @code{BSP_IDLE_TASK_STACK_SIZE} is defined by the BSP and
-@code{CONFIGURE_IDLE_TASK_STACK_SIZE} is not defined by the application,
-then this BSP suggested idle task stack size will be used.
-
-
-@subheading NOTES:
-The order of precedence for configuring the IDLE task stack size is:
-
-@itemize @bullet
-@item RTEMS default minimum stack size.
-@item If defined, then @code{CONFIGURE_MINIMUM_TASK_STACK_SIZE}.
-@item If defined, then the BSP specific @code{BSP_IDLE_TASK_SIZE}.
-@item If defined, then the application specified
-@code{CONFIGURE_IDLE_TASK_SIZE}.
-@end itemize
-
-@c XXX - add cross references to other related values.
-
-@c
-@c === BSP_INITIAL_EXTENSION ===
-@c
-@subsection Specify BSP Specific User Extensions
-
-@findex BSP_INITIAL_EXTENSION
-
-@table @b
-@item CONSTANT:
-@code{BSP_INITIAL_EXTENSION}
-
-@item DATA TYPE:
-List of user extension initializers (@code{rtems_extensions_table}).
-
-@item RANGE:
-Undefined or a list of user extension initializers.
-
-@item DEFAULT VALUE:
-This option is BSP specific.
-
-@end table
-
-@subheading DESCRIPTION:
-If @code{BSP_INITIAL_EXTENSION} is defined by the BSP, then this BSP
-specific initial extension will be placed as the last entry in the initial
-extension table.
-
-@subheading NOTES:
-None.
-
-@c
-@c === BSP_INTERRUPT_STACK_SIZE ===
-@c
-@subsection Specifying BSP Specific Interrupt Stack Size
-
-@findex BSP_INTERRUPT_STACK_SIZE
-
-@table @b
-@item CONSTANT:
-@code{BSP_INTERRUPT_STACK_SIZE}
-
-@item DATA TYPE:
-Unsigned integer (@code{size_t}).
-
-@item RANGE:
-Undefined or positive.
-
-@item DEFAULT VALUE:
-This option is BSP specific.
-
-@end table
-
-@subheading DESCRIPTION:
-If @code{BSP_INTERRUPT_STACK_SIZE} is defined by the BSP and
-@code{CONFIGURE_INTERRUPT_STACK_SIZE} is not defined by the application,
-then this BSP specific interrupt stack size will be used.
-
-@subheading NOTES:
-None.
-
-@c
-@c === BSP_MAXIMUM_DEVICES ===
-@c
-@subsection Specifying BSP Specific Maximum Devices
-
-@findex BSP_MAXIMUM_DEVICES
-
-@table @b
-@item CONSTANT:
-@code{BSP_MAXIMUM_DEVICES}
-
-@item DATA TYPE:
-Unsigned integer (@code{size_t}).
-
-@item RANGE:
-Undefined or positive.
-
-@item DEFAULT VALUE:
-This option is BSP specific.
-
-@end table
-
-@subheading DESCRIPTION:
-If @code{BSP_MAXIMUM_DEVICES} is defined by the BSP and
-@code{CONFIGURE_MAXIMUM_DEVICES} is not defined by the application,
-then this BSP specific maximum device count will be used.
-
-@subheading NOTES:
-This option is specific to the device file system (devFS) and should not be
-confused with the @code{CONFIGURE_MAXIMUM_DRIVERS} option. This parameter only
-impacts the devFS and thus is only used by @code{<rtems/confdefs.h>} when
-@code{CONFIGURE_USE_DEVFS_AS_BASE_FILESYSTEM} is specified.
-
-@c
-@c === BSP_ZERO_WORKSPACE_AUTOMATICALLY ===
-@c
-@subsection BSP Recommends RTEMS Workspace be Cleared
-
-@findex BSP_ZERO_WORKSPACE_AUTOMATICALLY
-
-@table @b
-@item CONSTANT:
-@code{BSP_ZERO_WORKSPACE_AUTOMATICALLY}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This option is BSP specific.
-
-@end table
-
-@subheading DESCRIPTION:
-If @code{BSP_ZERO_WORKSPACE_AUTOMATICALLY} is defined by the BSP and
-@code{CONFIGURE_ZERO_WORKSPACE_AUTOMATICALLY} is not defined by the
-application, then the workspace will be zeroed automatically.
-
-@subheading NOTES:
-Zeroing memory can add significantly to system boot time. It is not
-necessary for RTEMS but is often assumed by support libraries.
-
-@c
-@c === CONFIGURE_BSP_PREREQUISITE_DRIVERS ===
-@c
-@subsection Specify BSP Prerequisite Drivers
-
-@findex CONFIGURE_BSP_PREREQUISITE_DRIVERS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_BSP_PREREQUISITE_DRIVERS}
-
-@item DATA TYPE:
-List of device driver initializers (@code{rtems_driver_address_table}).
-
-@item RANGE:
-Undefined or array of device drivers.
-
-@item DEFAULT VALUE:
-This option is BSP specific.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_BSP_PREREQUISITE_DRIVERS} is defined if the BSP has device
-drivers it needs to include in the Device Driver Table. This should be
-defined to the set of device driver entries that will be placed in the
-table at the @b{FRONT} of the Device Driver Table and initialized before
-any other drivers @b{INCLUDING} any application prerequisite drivers.
-
-@subheading NOTES:
-@code{CONFIGURE_BSP_PREREQUISITE_DRIVERS} is typically used by BSPs
-to configure common infrastructure such as bus controllers or probe
-for devices.
-
-
-@c
-@c === Idle Task Configuration ===
-@c
-@section Idle Task Configuration
-
-This section defines the IDLE task related configuration parameters
-supported by @code{<rtems/confdefs.h>}.
-
-@c
-@c === CONFIGURE_IDLE_TASK_BODY ===
-@c
-@subsection Specify Application Specific Idle Task Body
-
-@findex CONFIGURE_IDLE_TASK_BODY
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_IDLE_TASK_BODY}
-
-@item DATA TYPE:
-Function pointer.
-
-@item RANGE:
-Undefined or valid function pointer.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_IDLE_TASK_BODY} is set to the function name corresponding
-to the application specific IDLE thread body. If not specified, the
-BSP or RTEMS default IDLE thread body will be used.
-
-@subheading NOTES:
-None.
-
-@c
-@c === CONFIGURE_IDLE_TASK_STACK_SIZE ===
-@c
-@subsection Specify Idle Task Stack Size
-
-@findex CONFIGURE_IDLE_TASK_STACK_SIZE
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_IDLE_TASK_STACK_SIZE}
-
-@item DATA TYPE:
-Unsigned integer (@code{size_t}).
-
-@item RANGE:
-Undefined or positive.
-
-@item DEFAULT VALUE:
-The default value is RTEMS_MINIMUM_STACK_SIZE.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_IDLE_TASK_STACK_SIZE} is set to the
-desired stack size for the IDLE task.
-
-@subheading NOTES:
-None.
-
-@c
-@c === CONFIGURE_IDLE_TASK_INITIALIZES_APPLICATION ===
-@c
-@subsection Specify Idle Task Performs Application Initialization
-
-@findex CONFIGURE_IDLE_TASK_INITIALIZES_APPLICATION
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_IDLE_TASK_INITIALIZES_APPLICATION}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default, the user is assumed
-to provide one or more initialization tasks.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_IDLE_TASK_INITIALIZES_APPLICATION} is set to
-indicate that the user has configured @b{NO} user initialization tasks
-or threads and that the user provided IDLE task will perform application
-initialization and then transform itself into an IDLE task.
-
-@subheading NOTES:
-If you use this option be careful, the user IDLE task @b{CANNOT} block
-at all during the initialization sequence. Further, once application
-initialization is complete, it must make itself preemptible and enter
-an IDLE body loop.
-
-The IDLE task must run at the lowest priority of all tasks in the system.
-
-@c
-@c === Scheduler Algorithm Configuration ===
-@c
-@section Scheduler Algorithm Configuration
-
-This section defines the configuration parameters related to selecting a
-scheduling algorithm for an application. For the schedulers built into
-RTEMS, the configuration is straightforward. All that is required is
-to define the configuration macro which specifies which scheduler you
-want for in your application. The currently available schedulers are:
-
-The pluggable scheduler interface also enables the user to provide their
-own scheduling algorithm. If you choose to do this, you must define
-multiple configuration macros.
-
-@c
-@c === CONFIGURE_SCHEDULER_PRIORITY ===
-@c
-@subsection Use Deterministic Priority Scheduler
-
-@findex CONFIGURE_SCHEDULER_PRIORITY
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_SCHEDULER_PRIORITY}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is defined by default.
-This is the default scheduler and specifying this
-configuration parameter is redundant.
-
-@end table
-
-@subheading DESCRIPTION:
-The Deterministic Priority Scheduler is the default scheduler in RTEMS
-for uni-processor applications and is designed for predictable performance
-under the highest loads. It can block or unblock a thread in a constant
-amount of time. This scheduler requires a variable amount of memory
-based upon the number of priorities configured in the system.
-
-@subheading NOTES:
-This scheduler may be explicitly selected by defining
-@code{CONFIGURE_SCHEDULER_PRIORITY} although this is equivalent to the
-default behavior.
-
-@c
-@c === CONFIGURE_SCHEDULER_SIMPLE ===
-@c
-@subsection Use Simple Priority Scheduler
-
-@findex CONFIGURE_SCHEDULER_SIMPLE
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_SCHEDULER_SIMPLE}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-When defined, the Simple Priority Scheduler is used at the thread
-scheduling algorithm. This is an alternative scheduler in RTEMS.
-It is designed to provide the same task scheduling behaviour as the
-Deterministic Priority Scheduler while being simpler in implementation
-and uses less memory for data management. It maintains a single sorted
-list of all ready threads. Thus blocking or unblocking a thread is not
-a constant time operation with this scheduler.
-
-This scheduler may be explicitly selected by defining
-@code{CONFIGURE_SCHEDULER_SIMPLE}.
-
-@subheading NOTES:
-This scheduler is appropriate for use in small systems where RAM is limited.
-
-@c
-@c === CONFIGURE_SCHEDULER_EDF ===
-@c
-@subsection Use Earliest Deadline First Scheduler
-
-@findex CONFIGURE_SCHEDULER_EDF
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_SCHEDULER_EDF}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-The Earliest Deadline First Scheduler (EDF) is an alternative scheduler in
-RTEMS for uni-processor applications. The EDF schedules tasks with dynamic
-priorities equal to deadlines. The deadlines are declared using only
-Rate Monotonic manager which handles periodic behavior. Period is always
-equal to deadline. If a task does not have any deadline declared or the
-deadline is cancelled, the task is considered a background task which is
-scheduled in case no deadline-driven tasks are ready to run. Moreover,
-multiple background tasks are scheduled according their priority assigned
-upon initialization. All ready tasks reside in a single ready queue.
-
-This scheduler may be explicitly selected by defining
-@code{CONFIGURE_SCHEDULER_EDF}.
-
-@subheading NOTES:
-None.
-
-
-@c
-@c === CONFIGURE_SCHEDULER_CBS ===
-@c
-@subsection Use Constant Bandwidth Server Scheduler
-
-@findex CONFIGURE_SCHEDULER_CBS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_SCHEDULER_CBS}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-The Constant Bandwidth Server Scheduler (CBS) is an alternative scheduler
-in RTEMS for uni-processor applications. The CBS is a budget aware extension
-of EDF scheduler. The goal of this scheduler is to ensure temporal
-isolation of tasks. The CBS is equipped with a set of additional rules
-and provides with an extensive API.
-
-This scheduler may be explicitly selected by defining
-@code{CONFIGURE_SCHEDULER_CBS}.
-@c XXX - add cross reference to API chapter
-
-@subheading NOTES:
-None.
-
-@c
-@c === CONFIGURE_SCHEDULER_PRIORITY_SMP ===
-@c
-@subsection Use Deterministic Priority SMP Scheduler
-
-@findex CONFIGURE_SCHEDULER_PRIORITY_SMP
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_SCHEDULER_PRIORITY_SMP}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-The Deterministic Priority SMP Scheduler is derived from the Deterministic
-Priority Scheduler but is capable of scheduling threads across multiple
-processors.
-
-In a configuration with SMP enabled at configure time, it may be
-explicitly selected by defining @code{CONFIGURE_SCHEDULER_PRIORITY_SMP}.
-
-@subheading NOTES:
-This scheduler is only available when RTEMS is configured with SMP
-support enabled.
-
-This scheduler is currently the default in SMP configurations and is
-only selected when @code{CONFIGURE_SMP_APPLICATION} is defined.
-
-@c
-@c === CONFIGURE_SCHEDULER_SIMPLE_SMP ===
-@c
-@subsection Use Simple SMP Priority Scheduler
-
-@findex CONFIGURE_SCHEDULER_SIMPLE_SMP
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_SCHEDULER_SIMPLE_SMP}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-The Simple SMP Priority Scheduler is derived from the Simple Priority
-Scheduler but is capable of scheduling threads across multiple processors.
-It is designed to provide the same task scheduling behaviour as the
-Deterministic Priority Scheduler while distributing threads across
-multiple processors. Being based upon the Simple Priority Scheduler, it also
-maintains a single sorted list of all ready threads. Thus blocking or
-unblocking a thread is not a constant time operation with this scheduler.
-
-In addition, when allocating threads to processors, the algorithm is not
-constant time. This algorithm was not designed with efficiency as a
-primary design goal. Its primary design goal was to provide an SMP-aware
-scheduling algorithm that is simple to understand.
-
-In a configuration with SMP enabled at configure time, it may be
-explicitly selected by defining @code{CONFIGURE_SCHEDULER_SIMPLE_SMP}.
-
-@subheading NOTES:
-This scheduler is only available when RTEMS is configured with SMP
-support enabled.
-
-@c
-@c === Configuring a Scheduler Name ===
-@c
-@subsection Configuring a Scheduler Name
-
-@findex CONFIGURE_SCHEDULER_NAME
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_SCHEDULER_NAME}
-
-@item DATA TYPE:
-RTEMS Name (@code{rtems_name}).
-
-@item RANGE:
-Any value.
-
-@item DEFAULT VALUE:
-The default name is
-@itemize @bullet
-@item @code{"UCBS"} for the Uni-Processor CBS scheduler,
-@item @code{"UEDF"} for the Uni-Processor EDF scheduler,
-@item @code{"UPD "} for the Uni-Processor Deterministic Priority scheduler,
-@item @code{"UPS "} for the Uni-Processor Simple Priority scheduler,
-@item @code{"MPA "} for the Multi-Processor Priority Affinity scheduler, and
-@item @code{"MPD "} for the Multi-Processor Deterministic Priority scheduler, and
-@item @code{"MPS "} for the Multi-Processor Simple Priority scheduler.
-@end itemize
-
-@end table
-
-@subheading DESCRIPTION:
-Schedulers can be identified via @code{rtems_scheduler_ident}. The name of the scheduler is determined by the configuration.
-
-@subheading NOTES:
-None.
-
-@c
-@c === Configuring a User Scheduler ===
-@c
-@subsection Configuring a User Provided Scheduler
-
-@findex CONFIGURE_SCHEDULER_USER
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_SCHEDULER_USER}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-RTEMS allows the application to provide its own task/thread
-scheduling algorithm. In order to do this, one must define
-@code{CONFIGURE_SCHEDULER_USER} to indicate the application provides its
-own scheduling algorithm. If @code{CONFIGURE_SCHEDULER_USER} is defined
-then the following additional macros must be defined:
-
-@itemize @bullet
-@item @code{CONFIGURE_SCHEDULER_CONTEXT} must be defined to a static definition
-of the scheduler context of the user scheduler.
-
-@item @code{CONFIGURE_SCHEDULER_CONTROLS} must be defined to a scheduler
-control initializer for the user scheduler.
-
-@item @code{CONFIGURE_SCHEDULER_USER_PER_THREAD} must be defined to the type of
-the per-thread information of the user scheduler.
-
-@end itemize
-
-@subheading NOTES:
-At this time, the mechanics and requirements for writing a
-new scheduler are evolving and not fully documented. It is
-recommended that you look at the existing Deterministic Priority
-Scheduler in @code{cpukit/score/src/schedulerpriority*.c} for
-guidance. For guidance on the configuration macros, please examine
-@code{cpukit/sapi/include/confdefs.h} for how these are defined for the
-Deterministic Priority Scheduler.
-
-@c
-@c === Configuring Clustered Schedulers ===
-@c
-@subsection Configuring Clustered Schedulers
-
-Clustered scheduling helps to control the worst-case latencies in a
-multi-processor system. The goal is to reduce the amount of shared state in
-the system and thus prevention of lock contention. Modern multi-processor
-systems tend to have several layers of data and instruction caches. With
-clustered scheduling it is possible to honour the cache topology of a system
-and thus avoid expensive cache synchronization traffic.
-
-We have clustered scheduling in case the set of processors of a system is
-partitioned into non-empty pairwise-disjoint subsets. These subsets are called
-clusters. Clusters with a cardinality of one are partitions. Each cluster is
-owned by exactly one scheduler instance. In order to use clustered
-scheduling the application designer has to answer two questions.
-
-@enumerate
-@item How is the set of processors partitioned into clusters?
-@item Which scheduler is used for which cluster?
-@end enumerate
-
-@subheading CONFIGURATION:
-
-The schedulers in an SMP system are statically configured on RTEMS. Firstly
-the application must select which scheduling algorithms are available with the
-following defines
-
-@itemize @bullet
-@item @code{CONFIGURE_SCHEDULER_PRIORITY_SMP},
-@item @code{CONFIGURE_SCHEDULER_SIMPLE_SMP}, and
-@item @code{CONFIGURE_SCHEDULER_PRIORITY_AFFINITY_SMP}.
-@end itemize
-
-This is necessary to calculate the per-thread overhead introduced by the
-schedulers. After these definitions the configuration file must @code{#include
-<rtems/scheduler.h>} to have access to scheduler specific configuration macros.
-Each scheduler needs a context to store state information at run-time. To
-provide a context for each scheduler is the next step. Use the following
-macros to create scheduler contexts
-
-@itemize @bullet
-@item @code{RTEMS_SCHEDULER_CONTEXT_PRIORITY_SMP(name, prio_count)},
-@item @code{RTEMS_SCHEDULER_CONTEXT_SIMPLE_SMP(name)}, and
-@item @code{RTEMS_SCHEDULER_CONTEXT_PRIORITY_AFFINITY_SMP(name, prio_count)}.
-@end itemize
-
-The @code{name} parameter is used as part of a designator for a global
-variable, so the usual C/C++ designator rules apply. Additional parameters are
-scheduler specific. The schedulers are registered in the system via the
-scheduler table. To create the scheduler table define
-@code{CONFIGURE_SCHEDULER_CONTROLS} to a list of the following scheduler
-control initializers
-
-@itemize @bullet
-@item @code{RTEMS_SCHEDULER_CONTROL_PRIORITY_SMP(name, obj_name)},
-@item @code{RTEMS_SCHEDULER_CONTROL_SIMPLE_SMP(name, obj_name)}, and
-@item @code{RTEMS_SCHEDULER_CONTROL_PRIORITY_AFFINITY_SMP(name, obj_name)}.
-@end itemize
-
-The @code{name} parameter must correspond to the parameter defining the
-scheduler context. The @code{obj_name} determines the scheduler object name
-and can be used in @code{rtems_scheduler_ident()} to get the scheduler object
-identifier.
-
-The last step is to define which processor uses which scheduler.
-For this purpose a scheduler assignment table must be defined. The entry count
-of this table must be equal to the configured maximum processors
-(@code{CONFIGURE_SMP_MAXIMUM_PROCESSORS}). A processor assignment to a
-scheduler can be optional or mandatory. The boot processor must have a
-scheduler assigned. In case the system needs more mandatory processors than
-available then a fatal run-time error will occur. To specify the scheduler
-assignments define @code{CONFIGURE_SMP_SCHEDULER_ASSIGNMENTS} to a list of
-@code{RTEMS_SCHEDULER_ASSIGN(index, attr)} and
-@code{RTEMS_SCHEDULER_ASSIGN_NO_SCHEDULER} macros. The @code{index} parameter
-must be a valid index into the scheduler table. The @code{attr} parameter
-defines the scheduler assignment attributes. By default a scheduler assignment
-to a processor is optional. For the scheduler assignment attribute use one of
-the mutually exclusive variants
-
-@itemize @bullet
-@item @code{RTEMS_SCHEDULER_ASSIGN_DEFAULT},
-@item @code{RTEMS_SCHEDULER_ASSIGN_PROCESSOR_MANDATORY}, and
-@item @code{RTEMS_SCHEDULER_ASSIGN_PROCESSOR_OPTIONAL}.
-@end itemize
-
-@subheading ERRORS:
-
-In case one of the scheduler indices in
-@code{CONFIGURE_SMP_SCHEDULER_ASSIGNMENTS} is invalid a link-time error will
-occur with an undefined reference to @code{RTEMS_SCHEDULER_INVALID_INDEX}.
-
-Some fatal errors may occur in case of scheduler configuration inconsistencies or a lack
-of processors on the system. The fatal source is
-@code{RTEMS_FATAL_SOURCE_SMP}. None of the errors is internal.
-
-@itemize @bullet
-@item @code{SMP_FATAL_BOOT_PROCESSOR_NOT_ASSIGNED_TO_SCHEDULER} - the boot
-processor must have a scheduler assigned.
-@item @code{SMP_FATAL_MANDATORY_PROCESSOR_NOT_PRESENT} - there exists a
-mandatory processor beyond the range of physically or virtually available
-processors. The processor demand must be reduced for this system.
-@item @code{SMP_FATAL_START_OF_MANDATORY_PROCESSOR_FAILED} - the start of a
-mandatory processor failed during system initialization. The system may not
-have this processor at all or it could be a problem with a boot loader for
-example. Check the @code{CONFIGURE_SMP_SCHEDULER_ASSIGNMENTS} definition.
-@item @code{SMP_FATAL_MULTITASKING_START_ON_UNASSIGNED_PROCESSOR} - it is not
-allowed to start multitasking on a processor with no scheduler assigned.
-@end itemize
-
-@subheading EXAMPLE:
-
-The following example shows a scheduler configuration for a hypothetical
-product using two chip variants. One variant has four processors which is used
-for the normal product line and another provides eight processors for the
-high-performance product line. The first processor performs hard-real time
-control of actuators and sensors. The second processor is not used by RTEMS at
-all and runs a Linux instance to provide a graphical user interface. The
-additional processors are used for a worker thread pool to perform data
-processing operations.
-
-The processors managed by RTEMS use two Deterministic Priority scheduler
-instances capable of dealing with 256 priority levels. The scheduler with
-index zero has the name @code{"IO "}. The scheduler with index one has the
-name @code{"WORK"}. The scheduler assignments of the first, third and fourth
-processor are mandatory, so the system must have at least four processors,
-otherwise a fatal run-time error will occur during system startup. The
-processor assignments for the fifth up to the eighth processor are optional so
-that the same application can be used for the normal and high-performance
-product lines. The second processor has no scheduler assigned and runs Linux.
-A hypervisor will ensure that the two systems cannot interfere in an
-undesirable way.
-
-@example
-@group
-#define CONFIGURE_SMP_MAXIMUM_PROCESSORS 8
-
-#define CONFIGURE_MAXIMUM_PRIORITY 255
-
-/* Make the scheduler algorithm available */
-
-#define CONFIGURE_SCHEDULER_PRIORITY_SMP
-
-#include <rtems/scheduler.h>
-
-/* Create contexts for the two scheduler instances */
-
-RTEMS_SCHEDULER_CONTEXT_PRIORITY_SMP(io, CONFIGURE_MAXIMUM_PRIORITY + 1);
-
-RTEMS_SCHEDULER_CONTEXT_PRIORITY_SMP(work, CONFIGURE_MAXIMUM_PRIORITY + 1);
-
-/* Define the scheduler table */
-
-#define CONFIGURE_SCHEDULER_CONTROLS \
- RTEMS_SCHEDULER_CONTROL_PRIORITY_SMP( \
- io, \
- rtems_build_name('I', 'O', ' ', ' ') \
- ), \
- RTEMS_SCHEDULER_CONTROL_PRIORITY_SMP( \
- work, \
- rtems_build_name('W', 'O', 'R', 'K') \
- )
-
-/* Define the processor to scheduler assignments */
-
-#define CONFIGURE_SMP_SCHEDULER_ASSIGNMENTS \
- RTEMS_SCHEDULER_ASSIGN(0, RTEMS_SCHEDULER_ASSIGN_PROCESSOR_MANDATORY), \
- RTEMS_SCHEDULER_ASSIGN_NO_SCHEDULER, \
- RTEMS_SCHEDULER_ASSIGN(1, RTEMS_SCHEDULER_ASSIGN_PROCESSOR_MANDATORY), \
- RTEMS_SCHEDULER_ASSIGN(1, RTEMS_SCHEDULER_ASSIGN_PROCESSOR_MANDATORY), \
- RTEMS_SCHEDULER_ASSIGN(1, RTEMS_SCHEDULER_ASSIGN_PROCESSOR_OPTIONAL), \
- RTEMS_SCHEDULER_ASSIGN(1, RTEMS_SCHEDULER_ASSIGN_PROCESSOR_OPTIONAL), \
- RTEMS_SCHEDULER_ASSIGN(1, RTEMS_SCHEDULER_ASSIGN_PROCESSOR_OPTIONAL), \
- RTEMS_SCHEDULER_ASSIGN(1, RTEMS_SCHEDULER_ASSIGN_PROCESSOR_OPTIONAL)
-@end group
-@end example
-
-@c
-@c === SMP Specific Configuration Parameters ===
-@c
-@section SMP Specific Configuration Parameters
-
-When RTEMS is configured to support SMP target systems, there are other
-configuration parameters which apply.
-
-@c XXX - add --enable-smp
-
-@c
-@c === CONFIGURE_SMP_APPLICATION ===
-@c
-@subsection Enable SMP Support for Applications
-
-@findex CONFIGURE_SMP_APPLICATION
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_SMP_APPLICATION}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_SMP_APPLICATION} must be defined to enable SMP support for the
-application.
-
-@subheading NOTES:
-This define may go away in the future in case all RTEMS components are SMP
-ready. This configuration define is ignored on uni-processor configurations.
-
-@c
-@c === CONFIGURE_SMP_MAXIMUM_PROCESSORS ===
-@c
-@subsection Specify Maximum Processors in SMP System
-
-@findex CONFIGURE_SMP_MAXIMUM_PROCESSORS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_SMP_MAXIMUM_PROCESSORS}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-The default value is 1, (if CONFIGURE_SMP_APPLICATION is defined).
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_SMP_MAXIMUM_PROCESSORS} must be set to the number of
-processors in the SMP configuration.
-
-@subheading NOTES:
-If there are more processors available than configured, the rest will be
-ignored. This configuration define is ignored on uni-processor configurations.
-
-@c
-@c === Device Driver Table ===
-@c
-@section Device Driver Table
-
-This section defines the configuration parameters related
-to the automatic generation of a Device Driver Table. As
-@code{<rtems/confdefs.h>} only is aware of a small set of
-standard device drivers, the generated Device Driver
-Table is suitable for simple applications with no
-custom device drivers.
-
-Note that network device drivers are not configured in the Device Driver Table.
-
-@c
-@c === CONFIGURE_MAXIMUM_DRIVERS ===
-@c
-@subsection Specifying the Maximum Number of Device Drivers
-
-@findex CONFIGURE_MAXIMUM_DRIVERS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_DRIVERS}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-This is computed by default, and is set to the number of device drivers
-configured using the @code{CONFIGURE_APPLICATIONS_NEEDS_XXX_DRIVER}
-configuration parameters.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_DRIVERS} is defined as the number of device
-drivers per node.
-
-@subheading NOTES:
-If the application will dynamically install device drivers, then this
-configuration parameter must be larger than the number of statically
-configured device drivers. Drivers configured using the
-@code{CONFIGURE_APPLICATIONS_NEEDS_XXX_DRIVER} configuration parameters
-are statically installed.
-
-@c
-@c === CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER ===
-@c
-@subsection Enable Console Device Driver
-
-@findex CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER} is defined if the
-application wishes to include the Console Device Driver.
-
-@subheading NOTES:
-This device driver is responsible for providing standard input and output
-using @i{/dev/console}.
-
-BSPs should be constructed in a manner that allows @code{printk()}
-to work properly without the need for the console driver to be configured.
-
-@c
-@c === CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER ===
-@c
-@subsection Enable Clock Driver
-
-@findex CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER} is defined if the
-application wishes to include the Clock Device Driver.
-
-@subheading NOTES:
-This device driver is responsible for providing a regular
-interrupt which invokes the @code{rtems_clock_tick} directive.
-
-If neither the Clock Driver not Benchmark Timer is enabled and
-the configuration parameter
-@code{CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER} is not defined,
-then a compile time error will occur.
-
-@c
-@c === CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER ===
-@c
-@subsection Enable the Benchmark Timer Driver
-
-@findex CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER} is defined if the
-application wishes to include the Timer Driver. This device driver is
-used to benchmark execution times by the RTEMS Timing Test Suites.
-
-@subheading NOTES:
-If neither the Clock Driver not Benchmark Timer is enabled and
-the configuration parameter
-@code{CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER} is not defined,
-then a compile time error will occur.
-
-@c
-@c === CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER ===
-@c
-@subsection Specify Clock and Benchmark Timer Drivers Are Not Needed
-
-@findex CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER} is defined when
-the application does @b{NOT} want the Clock Device Driver and is @b{NOT}
-using the Timer Driver. The inclusion or exclusion of the Clock Driver
-must be explicit in user applications.
-
-@subheading NOTES:
-This configuration parameter is intended to prevent the common user error
-of using the Hello World example as the baseline for an application and
-leaving out a clock tick source.
-
-@c
-@c === CONFIGURE_APPLICATION_NEEDS_RTC_DRIVER ===
-@c
-@subsection Enable Real-Time Clock Driver
-
-@findex CONFIGURE_APPLICATION_NEEDS_RTC_DRIVER
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_APPLICATION_NEEDS_RTC_DRIVER}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_APPLICATION_NEEDS_RTC_DRIVER} is defined if the
-application wishes to include the Real-Time Clock Driver.
-
-@subheading NOTES:
-Most BSPs do not include support for a real-time clock. This is because
-many boards do not include the required hardware.
-
-If this is defined and the BSP does not have this device driver, then
-the user will get a link time error for an undefined symbol.
-
-@c
-@c === CONFIGURE_APPLICATION_NEEDS_WATCHDOG_DRIVER ===
-@c
-@subsection Enable the Watchdog Device Driver
-
-@findex CONFIGURE_APPLICATION_NEEDS_WATCHDOG_DRIVER
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_APPLICATION_NEEDS_WATCHDOG_DRIVER}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_APPLICATION_NEEDS_WATCHDOG_DRIVER}
-is defined if the application wishes to include the Watchdog Driver.
-
-@subheading NOTES:
-Most BSPs do not include support for a watchdog device driver. This is
-because many boards do not include the required hardware.
-
-If this is defined and the BSP does not have this device driver, then
-the user will get a link time error for an undefined symbol.
-
-@c
-@c === CONFIGURE_APPLICATION_NEEDS_FRAME_BUFFER_DRIVER ===
-@c
-@subsection Enable the Graphics Frame Buffer Device Driver
-
-@findex CONFIGURE_APPLICATION_NEEDS_FRAME_BUFFER_DRIVER
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_APPLICATION_NEEDS_FRAME_BUFFER_DRIVER}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_APPLICATION_NEEDS_FRAME_BUFFER_DRIVER} is defined
-if the application wishes to include the BSP's Frame Buffer Device Driver.
-
-@subheading NOTES:
-Most BSPs do not include support for a Frame Buffer Device Driver. This is
-because many boards do not include the required hardware.
-
-If this is defined and the BSP does not have this device driver, then
-the user will get a link time error for an undefined symbol.
-
-@c
-@c === CONFIGURE_APPLICATION_NEEDS_STUB_DRIVER ===
-@c
-@subsection Enable Stub Device Driver
-
-@findex CONFIGURE_APPLICATION_NEEDS_STUB_DRIVER
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_APPLICATION_NEEDS_STUB_DRIVER}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_APPLICATION_NEEDS_STUB_DRIVER} is defined if the
-application wishes to include the Stub Device Driver.
-
-@subheading NOTES:
-This device driver simply provides entry points that return successful
-and is primarily a test fixture. It is supported by all BSPs.
-
-@c
-@c === CONFIGURE_APPLICATION_PREREQUISITE_DRIVERS ===
-@c
-@subsection Specify Application Prerequisite Device Drivers
-
-@findex CONFIGURE_APPLICATION_PREREQUISITE_DRIVERS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_APPLICATION_PREREQUISITE_DRIVERS}
-
-@item DATA TYPE:
-device driver entry structures
-
-@item RANGE:
-Undefined or set of device driver entry structures
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_APPLICATION_PREREQUISITE_DRIVERS} is defined if the
-application has device drivers it needs to include in the Device Driver
-Table. This should be defined to the set of device driver entries that
-will be placed in the table at the @b{FRONT} of the Device Driver Table
-and initialized before any other drivers @b{EXCEPT} any BSP prerequisite
-drivers.
-
-@subheading NOTES:
-In some cases, it is used by System On Chip BSPs to support peripheral
-buses beyond those normally found on the System On Chip. For example,
-this is used by one RTEMS system which has implemented a SPARC/ERC32
-based board with VMEBus. The VMEBus Controller initialization is performed
-by a device driver configured via this configuration parameter.
-
-@c XXX Add example
-
-@c
-@c === CONFIGURE_APPLICATION_EXTRA_DRIVERS ===
-@c
-@subsection Specify Extra Application Device Drivers
-
-@findex CONFIGURE_APPLICATION_EXTRA_DRIVERS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_APPLICATION_EXTRA_DRIVERS}
-
-@item DATA TYPE:
-device driver entry structures
-
-@item RANGE:
-Undefined or set of device driver entry structures
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_APPLICATION_EXTRA_DRIVERS} is defined if the
-application has device drivers it needs to include in the Device Driver
-Table. This should be defined to the set of device driver entries that
-will be placed in the table at the @b{END} of the Device Driver Table.
-
-@subheading NOTES:
-None.
-
-@c
-@c === CONFIGURE_APPLICATION_NEEDS_NULL_DRIVER ===
-@c
-@subsection Enable /dev/null Device Driver
-
-@findex CONFIGURE_APPLICATION_NEEDS_NULL_DRIVER
-@cindex /dev/null
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_APPLICATION_NEEDS_NULL_DRIVER}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-This configuration variable is specified to enable @i{/dev/null}
-device driver.
-
-@subheading NOTES:
-This device driver is supported by all BSPs.
-
-@c
-@c === CONFIGURE_APPLICATION_NEEDS_ZERO_DRIVER ===
-@c
-@subsection Enable /dev/zero Device Driver
-
-@findex CONFIGURE_APPLICATION_NEEDS_ZERO_DRIVER
-@cindex /dev/zero
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_APPLICATION_NEEDS_ZERO_DRIVER}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-This configuration variable is specified to enable @i{/dev/zero}
-device driver.
-
-@subheading NOTES:
-This device driver is supported by all BSPs.
-
-@c
-@c === CONFIGURE_HAS_OWN_DEVICE_DRIVER_TABLE ===
-@c
-@subsection Specifying Application Defined Device Driver Table
-
-@findex CONFIGURE_HAS_OWN_DEVICE_DRIVER_TABLE
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_HAS_OWN_DEVICE_DRIVER_TABLE}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default, indicating the @code{<rtems/confdefs.h>}
-is providing the device driver table.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_HAS_OWN_DEVICE_DRIVER_TABLE} is defined if the application
-wishes to provide their own Device Driver Table.
-
-The table must be an array of @code{rtems_driver_address_table} entries named
-@code{_IO_Driver_address_table}. The application must also provide a const
-variable @code{_IO_Number_of_drivers} of type @code{size_t} indicating the
-number of entries in the @code{_IO_Driver_address_table}.
-
-@subheading NOTES:
-It is expected that there the application would only rarely need to do this.
-
-@c
-@c === Multiprocessing Configuration ===
-@c
-@section Multiprocessing Configuration
-
-This section defines the multiprocessing related system configuration
-parameters supported by @code{<rtems/confdefs.h>}. They are only used
-if the Multiprocessing Support (distinct from the SMP support) is enabled
-at configure time using the @code{--enable-multiprocessing} option.
-
-Additionally, this class of Configuration Constants are only applicable if
-@code{CONFIGURE_MP_APPLICATION} is defined.
-
-@c
-@c === CONFIGURE_MP_APPLICATION ===
-@c
-@subsection Specify Application Will Use Multiprocessing
-
-@findex CONFIGURE_MP_APPLICATION
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MP_APPLICATION}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-This configuration parameter must be defined to indicate
-that the application intends to be part of a multiprocessing
-configuration. Additional configuration parameters are assumed to be
-provided.
-
-@subheading NOTES:
-This has no impact unless RTEMS was configured and built using the
-@code{--enable-multiprocessing} option.
-
-@c
-@c === CONFIGURE_MP_NODE_NUMBER ===
-@c
-@subsection Configure Node Number in Multiprocessor Configuration
-
-@findex CONFIGURE_MP_NODE_NUMBER
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MP_NODE_NUMBER}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Positive.
-
-@item DEFAULT VALUE:
-The default value is @code{NODE_NUMBER}, which is assumed to be
-set by the compilation environment.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MP_NODE_NUMBER} is the node number of
-this node in a multiprocessor system.
-
-@subheading NOTES:
-In the RTEMS Multiprocessing Test Suite, the node number is derived from
-the Makefile variable @code{NODE_NUMBER}. The same code is compiled with
-the @code{NODE_NUMBER} set to different values. The test programs behave
-differently based upon their node number.
-
-
-@c
-@c === CONFIGURE_MP_MAXIMUM_NODES ===
-@c
-@subsection Configure Maximum Node in Multiprocessor Configuration
-
-@findex CONFIGURE_MP_MAXIMUM_NODES
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MP_MAXIMUM_NODES}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Positive.
-
-@item DEFAULT VALUE:
-The default value is 2.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MP_MAXIMUM_NODES} is the maximum number of nodes in a
-multiprocessor system.
-
-@subheading NOTES:
-None.
-
-@c
-@c === CONFIGURE_MP_MAXIMUM_GLOBAL_OBJECTS ===
-@c
-@subsection Configure Maximum Global Objects in Multiprocessor Configuration
-
-@findex CONFIGURE_MP_MAXIMUM_GLOBAL_OBJECTS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MP_MAXIMUM_GLOBAL_OBJECTS}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Positive.
-
-@item DEFAULT VALUE:
-The default value is 32.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MP_MAXIMUM_GLOBAL_OBJECTS} is the maximum number of
-concurrently active global objects in a multiprocessor system.
-
-@subheading NOTES:
-This value corresponds to the total number of objects which can be
-created with the @code{RTEMS_GLOBAL} attribute.
-
-@c
-@c === CONFIGURE_MP_MAXIMUM_PROXIES ===
-@c
-@subsection Configure Maximum Proxies in Multiprocessor Configuration
-
-@findex CONFIGURE_MP_MAXIMUM_PROXIES
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MP_MAXIMUM_PROXIES}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Undefined or positive.
-
-@item DEFAULT VALUE:
-The default value is 32.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MP_MAXIMUM_PROXIES} is the maximum number of concurrently
-active thread/task proxies on this node in a multiprocessor system.
-
-@subheading NOTES:
-Since a proxy is used to represent a remote task/thread which is blocking on
-this node. This configuration parameter reflects the maximum number of
-remote tasks/threads which can be blocked on objects on this node.
-
-@c XXX - add xref to proxy discussion in MP chapter
-
-@c
-@c === CONFIGURE_MP_MPCI_TABLE_POINTER ===
-@c
-@subsection Configure MPCI in Multiprocessor Configuration
-
-@findex CONFIGURE_MP_MPCI_TABLE_POINTER
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MP_MPCI_TABLE_POINTER}
-
-@item DATA TYPE:
-pointer to @code{rtems_mpci_table}
-
-@item RANGE:
-undefined or valid pointer
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MP_MPCI_TABLE_POINTER} is the pointer to the
-MPCI Configuration Table. The default value of this field is
-@code{&MPCI_table}.
-
-@subheading NOTES:
-RTEMS provides a Shared Memory MPCI Device Driver which can be used on
-any Multiprocessor System assuming the BSP provides the proper set of
-supporting methods.
-
-@c
-@c === CONFIGURE_HAS_OWN_MULTIPROCESSING_TABLE ===
-@c
-@subsection Do Not Generate Multiprocessor Configuration Table
-
-@findex CONFIGURE_HAS_OWN_MULTIPROCESSING_TABLE
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_HAS_OWN_MULTIPROCESSING_TABLE}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_HAS_OWN_MULTIPROCESSING_TABLE} is defined if the
-application wishes to provide their own Multiprocessing Configuration
-Table. The generated table is named @code{Multiprocessing_configuration}.
-
-@subheading NOTES:
-This is a configuration parameter which is very unlikely to be used by
-an application. If you find yourself wanting to use it in an application,
-please reconsider and discuss this on the RTEMS Users mailing list.
-
-@c
-@c === Ada Tasks ===
-@c
-@section Ada Tasks
-
-This section defines the system configuration parameters supported
-by @code{<rtems/confdefs.h>} related to configuring RTEMS to support
-a task using Ada tasking with GNAT/RTEMS.
-
-These configuration parameters are only available when RTEMS is built with
-the @code{--enable-ada} configure option and the application specifies
-@code{CONFIGURE_GNAT_RTEMS}.
-
-Additionally RTEMS includes an Ada language binding to the Classic
-API which has a test suite. This test suite is enabled only when
-@code{--enable-tests} and @code{--enable-expada} are specified on the
-configure command.
-
-@c
-@c === CONFIGURE_GNAT_RTEMS ===
-@c
-@subsection Specify Application Includes Ada Code
-
-@findex CONFIGURE_GNAT_RTEMS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_GNAT_RTEMS}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_GNAT_RTEMS} is defined to inform RTEMS that the GNAT
-Ada run-time is to be used by the application.
-
-@subheading NOTES:
-This configuration parameter is critical as it makes
-@code{<rtems/confdefs.h>} configure the resources (POSIX API Threads,
-Mutexes, Condition Variables, and Keys) used implicitly by the GNAT
-run-time.
-
-@c
-@c === CONFIGURE_MAXIMUM_ADA_TASKS ===
-@c
-@subsection Specify the Maximum Number of Ada Tasks.
-
-@findex CONFIGURE_MAXIMUM_ADA_TASKS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_ADA_TASKS}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Undefined or positive.
-
-@item DEFAULT VALUE:
-If @code{CONFIGURE_GNAT_RTEMS} is defined, then the
-default value is 20, otherwise the default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_ADA_TASKS} is the number of Ada tasks that can
-be concurrently active in the system.
-
-@subheading NOTES:
-None.
-
-@c
-@c === CONFIGURE_MAXIMUM_FAKE_ADA_TASKS ===
-@c
-@subsection Specify the Maximum Fake Ada Tasks
-
-@findex CONFIGURE_MAXIMUM_FAKE_ADA_TASKS
-
-@table @b
-@item CONSTANT:
-@findex @code{CONFIGURE_MAXIMUM_FAKE_ADA_TASKS}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 0.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_FAKE_ADA_TASKS} is the number of @i{fake} Ada tasks
-that can be concurrently active in the system. A @i{fake} Ada task is
-a non-Ada task that makes calls back into Ada code and thus implicitly
-uses the Ada run-time.
-
-@subheading NOTES:
-None.
-
-@c
-@c === PCI Library ===
-@c
-@section PCI Library
-
-This section defines the system configuration parameters supported
-by @code{rtems/confdefs.h} related to configuring the PCI Library
-for RTEMS.
-
-The PCI Library startup behaviour can be configured in four different
-ways depending on how @code{CONFIGURE_PCI_CONFIG_LIB} is defined:
-
-@itemize @bullet
-@findex PCI_LIB_AUTO
-@item @code{PCI_LIB_AUTO} is used to enable the PCI auto configuration
-software. PCI will be automatically probed, PCI buses enumerated, all
-devices and bridges will be initialized using Plug & Play software
-routines. The PCI device tree will be populated based on the PCI devices
-found in the system, PCI devices will be configured by allocating address
-region resources automatically in PCI space according to the BSP or host
-bridge driver set up.
-
-@findex PCI_LIB_READ
-@item @code{PCI_LIB_READ} is used to enable the PCI read configuration
-software. The current PCI configuration is read to create the RAM
-representation (the PCI device tree) of the PCI devices present. PCI devices
-are assumed to already have been initialized and PCI buses enumerated, it is
-therefore required that a BIOS or a boot loader has set up configuration space
-prior to booting into RTEMS.
-
-@findex PCI_LIB_STATIC
-@item @code{PCI_LIB_STATIC} is used to enable the PCI static configuration
-software. The user provides a PCI tree with information how all PCI devices
-are to be configured at compile time by linking in a custom
-@code{struct pci_bus pci_hb} tree. The static PCI library will not probe PCI
-for devices, instead it will assume that all devices defined by the user are
-present, it will enumerate the PCI buses and configure all PCI devices in
-static configuration accordingly. Since probe and allocation software is not
-needed the startup is faster, has smaller footprint and does not require
-dynamic memory allocation.
-
-@findex PCI_LIB_PERIPHERAL
-@item @code{PCI_LIB_PERIPHERAL} is used to enable the PCI peripheral
-configuration. It is similar to @code{PCI_LIB_STATIC}, but it will never write
-the configuration to the PCI devices since PCI peripherals are not allowed to
-access PCI configuration space.
-
-@end itemize
-
-Note that selecting PCI_LIB_STATIC or PCI_LIB_PERIPHERAL but not defining
-@code{pci_hb} will reuslt in link errors. Note also that in these modes
-Plug & Play is not performed.
-
-@c
-@c === Go Tasks ===
-@c
-@section Go Tasks
-
-@c
-@c === CONFIGURE_ENABLE_GO ===
-@c
-@subsection Specify Application Includes Go Code
-
-@findex CONFIGURE_ENABLE_GO
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_ENABLE_GO}
-
-@item DATA TYPE:
-Boolean feature macro.
-
-@item RANGE:
-Defined or undefined.
-
-@item DEFAULT VALUE:
-This is not defined by default.
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_ENABLE_GO} is defined to inform RTEMS that the Go
-run-time is to be used by the application.
-
-@subheading NOTES:
-The Go language support is experimental
-
-@c
-@c === CONFIGURE_MAXIMUM_GOROUTINES ===
-@c
-@subsection Specify the maximum number of Go routines
-
-@findex CONFIGURE_MAXIMUM_GOROUTINES
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_GOROUTINES}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 400
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_GOROUTINES} is defined to specify the maximum number of
-Go routines.
-
-@subheading NOTES:
-The Go language support is experimental
-
-@c
-@c === CONFIGURE_MAXIMUM_GO_CHANNELS ===
-@c
-@subsection Specify the maximum number of Go Channels
-
-@findex CONFIGURE_MAXIMUM_GO_CHANNELS
-
-@table @b
-@item CONSTANT:
-@code{CONFIGURE_MAXIMUM_GO_CHANNELS}
-
-@item DATA TYPE:
-Unsigned integer (@code{uint32_t}).
-
-@item RANGE:
-Zero or positive.
-
-@item DEFAULT VALUE:
-The default value is 500
-
-@end table
-
-@subheading DESCRIPTION:
-@code{CONFIGURE_MAXIMUM_GO_CHANNELS} is defined to specify the maximum number
-of Go channels.
-
-@subheading NOTES:
-The Go language support is experimental
-
-@c
-@c === Configuration Data Structures ===
-@c
-@section Configuration Data Structures
-
-It is recommended that applications be configured using
-@code{<rtems/confdefs.h>} as it is simpler and insulates applications
-from changes in the underlying data structures. However, it is sometimes
-important to understand the data structures that are automatically filled
-in by the configuration parameters. This section describes the primary
-configuration data structures.
-
-If the user wishes to see the details of a particular data structure,
-they are are advised to look at the source code. After all, that is one
-of the advantages of RTEMS.
diff --git a/doc/user/cpuuse.t b/doc/user/cpuuse.t
deleted file mode 100644
index f3035d1daf..0000000000
--- a/doc/user/cpuuse.t
+++ /dev/null
@@ -1,160 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2007.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter CPU Usage Statistics
-
-@section Introduction
-
-The CPU usage statistics manager is an RTEMS support
-component that provides a convenient way to manipulate
-the CPU usage information associated with each task
-The routines provided by the CPU usage statistics manager are:
-
-@itemize @bullet
-@item @code{@value{DIRPREFIX}cpu_usage_report} - Report CPU Usage Statistics
-@item @code{@value{DIRPREFIX}cpu_usage_reset} - Reset CPU Usage Statistics
-@end itemize
-
-@section Background
-
-When analyzing and debugging real-time applications, it is important
-to be able to know how much CPU time each task in the system consumes.
-This support component provides a mechanism to easily obtain this
-information with little burden placed on the target.
-
-The raw data is gathered as part of performing a context switch. RTEMS
-keeps track of how many clock ticks have occurred which the task being
-switched out has been executing. If the task has been running less than
-1 clock tick, then for the purposes of the statistics, it is assumed to
-have executed 1 clock tick. This results in some inaccuracy but the
-alternative is for the task to have appeared to execute 0 clock ticks.
-
-RTEMS versions newer than the 4.7 release series, support the ability
-to obtain timestamps with nanosecond granularity if the BSP provides
-support. It is a desirable enhancement to change the way the usage
-data is gathered to take advantage of this recently added capability.
-Please consider sponsoring the core RTEMS development team to add
-this capability.
-
-@section Operations
-
-@subsection Report CPU Usage Statistics
-
-The application may dynamically report the CPU usage for every
-task in the system by calling the
-@code{@value{DIRPREFIX}cpu_usage_report} routine.
-This routine prints a table with the following information per task:
-
-@itemize @bullet
-@item task id
-@item task name
-@item number of clock ticks executed
-@item percentage of time consumed by this task
-@end itemize
-
-The following is an example of the report generated:
-
-@smallexample
-@group
--------------------------------------------------------------------------------
- CPU USAGE BY THREAD
-------------+----------------------------------------+---------------+---------
- ID | NAME | SECONDS | PERCENT
-------------+----------------------------------------+---------------+---------
- 0x04010001 | IDLE | 0 | 0.000
- 0x08010002 | TA1 | 1203 | 0.748
- 0x08010003 | TA2 | 203 | 0.126
- 0x08010004 | TA3 | 202 | 0.126
-------------+----------------------------------------+---------------+---------
- TICKS SINCE LAST SYSTEM RESET: 1600
- TOTAL UNITS: 1608
--------------------------------------------------------------------------------
-@end group
-@end smallexample
-
-Notice that the "TOTAL UNITS" is greater than the ticks per reset.
-This is an artifact of the way in which RTEMS keeps track of CPU
-usage. When a task is context switched into the CPU, the number
-of clock ticks it has executed is incremented. While the task
-is executing, this number is incremented on each clock tick.
-Otherwise, if a task begins and completes execution between
-successive clock ticks, there would be no way to tell that it
-executed at all.
-
-Another thing to keep in mind when looking at idle time, is that
-many systems -- especially during debug -- have a task providing
-some type of debug interface. It is usually fine to think of the
-total idle time as being the sum of the IDLE task and a debug
-task that will not be included in a production build of an application.
-
-@subsection Reset CPU Usage Statistics
-
-Invoking the @code{@value{DIRPREFIX}cpu_usage_reset} routine resets
-the CPU usage statistics for all tasks in the system.
-
-@section Directives
-
-This section details the CPU usage statistics manager's directives.
-A subsection is dedicated to each of this manager's directives
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-@page
-@subsection cpu_usage_report - Report CPU Usage Statistics
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-void rtems_cpu_usage_report( void );
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure CPU_Usage_Report;
-@end example
-@end ifset
-
-@subheading STATUS CODES: NONE
-
-@subheading DESCRIPTION:
-
-This routine prints out a table detailing the CPU usage statistics for
-all tasks in the system.
-
-@subheading NOTES:
-
-The table is printed using the @code{printk} routine.
-
-@page
-@subsection cpu_usage_reset - Reset CPU Usage Statistics
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-void rtems_cpu_usage_reset( void );
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure CPU_Usage_Reset;
-@end example
-@end ifset
-
-@subheading STATUS CODES: NONE
-
-@subheading DESCRIPTION:
-
-This routine re-initializes the CPU usage statistics for all tasks
-in the system to their initial state. The initial state is that
-a task has not executed and thus has consumed no CPU time.
-default state which is when zero period executions have occurred.
-
-@subheading NOTES:
-
-NONE
diff --git a/doc/user/datatypes.t b/doc/user/datatypes.t
deleted file mode 100644
index c8c78a812b..0000000000
--- a/doc/user/datatypes.t
+++ /dev/null
@@ -1,327 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter RTEMS Data Types
-
-@section Introduction
-
-This chapter contains a complete list of the RTEMS primitive
-data types in alphabetical order. This is intended to be
-an overview and the user is encouraged to look at the appropriate
-chapters in the manual for more information about the
-usage of the various data types.
-
-@section List of Data Types
-
-The following is a complete list of the RTEMS primitive
-data types in alphabetical order:
-
-@itemize @bullet
-
-@findex rtems_address
-@item @code{@value{DIRPREFIX}address} is the data type used to manage
-addresses. It is equivalent to
-@ifset is-C
-a "void *" pointer.
-@end ifset
-@ifset is-Ada
-the System.Address data type.
-@end ifset
-
-@findex rtems_asr
-@item @code{@value{DIRPREFIX}asr} is the return type for an
-RTEMS ASR.
-
-@findex rtems_asr_entry
-@item @code{@value{DIRPREFIX}asr_entry} is the address of
-the entry point to an RTEMS ASR.
-
-@findex rtems_attribute
-@item @code{@value{DIRPREFIX}attribute} is the data type used
-to manage the attributes for RTEMS objects. It is primarily
-used as an argument to object create routines to specify
-characteristics of the new object.
-
-@findex rtems_boolean
-@item @code{@value{DIRPREFIX}boolean} may only take on the
-values of @code{TRUE} and @code{FALSE}.
-
-This type is deprecated. Use "bool" instead.
-
-@findex rtems_context
-@item @code{@value{DIRPREFIX}context} is the CPU dependent
-data structure used to manage the integer and system
-register portion of each task's context.
-
-@findex rtems_context_fp
-@item @code{@value{DIRPREFIX}context_fp} is the CPU dependent
-data structure used to manage the floating point portion of
-each task's context.
-
-@findex rtems_device_driver
-@item @code{@value{DIRPREFIX}device_driver} is the
-return type for a RTEMS device driver routine.
-
-@findex rtems_device_driver_entry
-@item @code{@value{DIRPREFIX}device_driver_entry} is the
-entry point to a RTEMS device driver routine.
-
-@findex rtems_device_major_number
-@item @code{@value{DIRPREFIX}device_major_number} is the
-data type used to manage device major numbers.
-
-@findex rtems_device_minor_number
-@item @code{@value{DIRPREFIX}device_minor_number} is the
-data type used to manage device minor numbers.
-
-@findex rtems_double
-@item @code{@value{DIRPREFIX}double} is the RTEMS data
-type that corresponds to double precision floating point
-on the target hardware.
-
-This type is deprecated. Use "double" instead.
-
-@findex rtems_event_set
-@item @code{@value{DIRPREFIX}event_set} is the data
-type used to manage and manipulate RTEMS event sets
-with the Event Manager.
-
-@findex rtems_extension
-@item @code{@value{DIRPREFIX}extension} is the return type
-for RTEMS user extension routines.
-
-@findex rtems_fatal_extension
-@item @code{@value{DIRPREFIX}fatal_extension} is the
-entry point for a fatal error user extension handler routine.
-
-@findex rtems_id
-@item @code{@value{DIRPREFIX}id} is the data type used
-to manage and manipulate RTEMS object IDs.
-
-@findex rtems_interrupt_frame
-@item @code{@value{DIRPREFIX}interrupt_frame} is the
-data structure that defines the format of the interrupt
-stack frame as it appears to a user ISR. This data
-structure may not be defined on all ports.
-
-@findex rtems_interrupt_level
-@item @code{@value{DIRPREFIX}interrupt_level} is the
-data structure used with the @code{@value{DIRPREFIX}interrupt_disable},
-@code{@value{DIRPREFIX}interrupt_enable}, and
-@code{@value{DIRPREFIX}interrupt_flash} routines. This
-data type is CPU dependent and usually corresponds to
-the contents of the processor register containing
-the interrupt mask level.
-
-@findex rtems_interval
-@item @code{@value{DIRPREFIX}interval} is the data
-type used to manage and manipulate time intervals.
-Intervals are non-negative integers used to measure
-the length of time in clock ticks.
-
-@findex rtems_isr
-@item @code{@value{DIRPREFIX}isr} is the return type
-of a function implementing an RTEMS ISR.
-
-@findex rtems_isr_entry
-@item @code{@value{DIRPREFIX}isr_entry} is the address of
-the entry point to an RTEMS ISR. It is equivalent to the
-entry point of the function implementing the ISR.
-
-@findex rtems_mp_packet_classes
-@item @code{@value{DIRPREFIX}mp_packet_classes} is the
-enumerated type which specifies the categories of
-multiprocessing messages. For example, one of the
-classes is for messages that must be processed by
-the Task Manager.
-
-@findex rtems_mode
-@item @code{@value{DIRPREFIX}mode} is the data type
-used to manage and dynamically manipulate the execution
-mode of an RTEMS task.
-
-@findex rtems_mpci_entry
-@item @code{@value{DIRPREFIX}mpci_entry} is the return type
-of an RTEMS MPCI routine.
-
-@findex rtems_mpci_get_packet_entry
-@item @code{@value{DIRPREFIX}mpci_get_packet_entry} is the address of
-the entry point to the get packet routine for an MPCI implementation.
-
-@findex rtems_mpci_initialization_entry
-@item @code{@value{DIRPREFIX}mpci_initialization_entry} is the address of
-the entry point to the initialization routine for an MPCI implementation.
-
-@findex rtems_mpci_receive_packet_entry
-@item @code{@value{DIRPREFIX}mpci_receive_packet_entry} is the address of
-the entry point to the receive packet routine for an MPCI implementation.
-
-@findex rtems_mpci_return_packet_entry
-@item @code{@value{DIRPREFIX}mpci_return_packet_entry} is the address of
-the entry point to the return packet routine for an MPCI implementation.
-
-@findex rtems_mpci_send_packet_entry
-@item @code{@value{DIRPREFIX}mpci_send_packet_entry} is the address of
-the entry point to the send packet routine for an MPCI implementation.
-
-@findex rtems_mpci_table
-@item @code{@value{DIRPREFIX}mpci_table} is the data structure
-containing the configuration information for an MPCI.
-
-@findex rtems_name
-@item @code{@value{DIRPREFIX}name} is the data type used to
-contain the name of a Classic API object. It is an unsigned
-thirty-two bit integer which can be treated as a numeric
-value or initialized using @code{@value{DIRPREFIX}build_name} to
-contain four ASCII characters.
-
-@findex rtems_option
-@item @code{@value{DIRPREFIX}option} is the data type
-used to specify which behavioral options the caller desires.
-It is commonly used with potentially blocking directives to specify
-whether the caller is willing to block or return immediately with an error
-indicating that the resource was not available.
-
-@findex rtems_packet_prefix
-@item @code{@value{DIRPREFIX}packet_prefix} is the data structure
-that defines the first bytes in every packet sent between nodes
-in an RTEMS multiprocessor system. It contains routing information
-that is expected to be used by the MPCI layer.
-
-@findex rtems_signal_set
-@item @code{@value{DIRPREFIX}signal_set} is the data
-type used to manage and manipulate RTEMS signal sets
-with the Signal Manager.
-
-@findex int8_t
-@item @code{int8_t} is the C99 data type that corresponds to signed eight
-bit integers. This data type is defined by RTEMS in a manner that
-ensures it is portable across different target processors.
-
-@findex int16_t
-@item @code{int16_t} is the C99 data type that corresponds to signed
-sixteen bit integers. This data type is defined by RTEMS in a manner
-that ensures it is portable across different target processors.
-
-@findex int32_t
-@item @code{int32_t} is the C99 data type that corresponds to signed
-thirty-two bit integers. This data type is defined by RTEMS in a manner
-that ensures it is portable across different target processors.
-
-@findex int64_t
-@item @code{int64_t} is the C99 data type that corresponds to signed
-sixty-four bit integers. This data type is defined by RTEMS in a manner
-that ensures it is portable across different target processors.
-
-@findex rtems_single
-@item @code{@value{DIRPREFIX}single} is the RTEMS data
-type that corresponds to single precision floating point
-on the target hardware.
-
-This type is deprecated. Use "float" instead.
-
-@findex rtems_status_codes
-@item @code{@value{DIRPREFIX}status_codes} is the return type for most
-RTEMS services. This is an enumerated type of approximately twenty-five
-values. In general, when a service returns a particular status code, it
-indicates that a very specific error condition has occurred.
-
-@findex rtems_task
-@item @code{@value{DIRPREFIX}task} is the return type for an
-RTEMS Task.
-
-@findex rtems_task_argument
-@item @code{@value{DIRPREFIX}task_argument} is the data
-type for the argument passed to each RTEMS task. In RTEMS 4.7
-and older, this is an unsigned thirty-two bit integer. In
-RTEMS 4.8 and newer, this is based upon the C99 type @code{uintptr_t}
-which is guaranteed to be an integer large enough to hold a
-pointer on the target architecture.
-
-@findex rtems_task_begin_extension
-@item @code{@value{DIRPREFIX}task_begin_extension} is the
-entry point for a task beginning execution user extension handler routine.
-
-@findex rtems_task_create_extension
-@item @code{@value{DIRPREFIX}task_create_extension} is the
-entry point for a task creation execution user extension handler routine.
-
-@findex rtems_task_delete_extension
-@item @code{@value{DIRPREFIX}task_delete_extension} is the
-entry point for a task deletion user extension handler routine.
-
-@findex rtems_task_entry
-@item @code{@value{DIRPREFIX}task_entry} is the address of
-the entry point to an RTEMS ASR. It is equivalent to the
-entry point of the function implementing the ASR.
-
-@findex rtems_task_exitted_extension
-@item @code{@value{DIRPREFIX}task_exitted_extension} is the
-entry point for a task exitted user extension handler routine.
-
-@findex rtems_task_priority
-@item @code{@value{DIRPREFIX}task_priority} is the data type
-used to manage and manipulate task priorities.
-
-@findex rtems_task_restart_extension
-@item @code{@value{DIRPREFIX}task_restart_extension} is the
-entry point for a task restart user extension handler routine.
-
-@findex rtems_task_start_extension
-@item @code{@value{DIRPREFIX}task_start_extension} is the
-entry point for a task start user extension handler routine.
-
-@findex rtems_task_switch_extension
-@item @code{@value{DIRPREFIX}task_switch_extension} is the
-entry point for a task context switch user extension handler routine.
-
-@findex rtems_tcb
-@item @code{@value{DIRPREFIX}tcb} is the data structure associated
-with each task in an RTEMS system.
-
-@findex rtems_time_of_day
-@item @code{@value{DIRPREFIX}time_of_day} is the data structure
-used to manage and manipulate calendar time in RTEMS.
-
-@findex rtems_timer_service_routine
-@item @code{@value{DIRPREFIX}timer_service_routine} is the
-return type for an RTEMS Timer Service Routine.
-
-@findex rtems_timer_service_routine_entry
-@item @code{@value{DIRPREFIX}timer_service_routine_entry} is the address of
-the entry point to an RTEMS TSR. It is equivalent to the
-entry point of the function implementing the TSR.
-
-@findex rtems_vector_number
-@item @code{@value{DIRPREFIX}vector_number} is the data
-type used to manage and manipulate interrupt vector numbers.
-
-@findex uint8_t
-@item @code{uint8_t} is the C99 data type that corresponds to unsigned
-eight bit integers. This data type is defined by RTEMS in a manner that
-ensures it is portable across different target processors.
-
-@findex uint16_t
-@item @code{uint16_t} is the C99 data type that corresponds to unsigned
-sixteen bit integers. This data type is defined by RTEMS in a manner
-that ensures it is portable across different target processors.
-
-@findex uint32_t
-@item @code{uint32_t} is the C99 data type that corresponds to unsigned
-thirty-two bit integers. This data type is defined by RTEMS in a manner
-that ensures it is portable across different target processors.
-
-@findex uint64_t
-@item @code{uint64_t} is the C99 data type that corresponds to unsigned
-sixty-four bit integers. This data type is defined by RTEMS in a manner
-that ensures it is portable across different target processors.
-
-@findex uintptr_t
-@item @code{uintptr_t} is the C99 data type that corresponds to the
-unsigned integer type that is of sufficient size to represent addresses
-as unsigned integers. This data type is defined by RTEMS in a manner
-that ensures it is portable across different target processors.
-
-@end itemize
diff --git a/doc/user/dirstat.t b/doc/user/dirstat.t
deleted file mode 100644
index d9cf77e101..0000000000
--- a/doc/user/dirstat.t
+++ /dev/null
@@ -1,62 +0,0 @@
-@c
-@c COPYRIGHT (c) 1989-2011.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Directive Status Codes
-
-@section Introduction
-
-@table @b
-@item @code{@value{RPREFIX}SUCCESSFUL} - successful completion
-@item @code{@value{RPREFIX}TASK_EXITTED} - returned from a task
-@item @code{@value{RPREFIX}MP_NOT_CONFIGURED} - multiprocessing not configured
-@item @code{@value{RPREFIX}INVALID_NAME} - invalid object name
-@item @code{@value{RPREFIX}INVALID_ID} - invalid object id
-@item @code{@value{RPREFIX}TOO_MANY} - too many
-@item @code{@value{RPREFIX}TIMEOUT} - timed out waiting
-@item @code{@value{RPREFIX}OBJECT_WAS_DELETED} - object was deleted while waiting
-@item @code{@value{RPREFIX}INVALID_SIZE} - invalid specified size
-@item @code{@value{RPREFIX}INVALID_ADDRESS} - invalid address specified
-@item @code{@value{RPREFIX}INVALID_NUMBER} - number was invalid
-@item @code{@value{RPREFIX}NOT_DEFINED} - item not initialized
-@item @code{@value{RPREFIX}RESOURCE_IN_USE} - resources outstanding
-@item @code{@value{RPREFIX}UNSATISFIED} - request not satisfied
-@item @code{@value{RPREFIX}INCORRECT_STATE} - task is in wrong state
-@item @code{@value{RPREFIX}ALREADY_SUSPENDED} - task already in state
-@item @code{@value{RPREFIX}ILLEGAL_ON_SELF} - illegal for calling task
-@item @code{@value{RPREFIX}ILLEGAL_ON_REMOTE_OBJECT} - illegal for remote object
-@item @code{@value{RPREFIX}CALLED_FROM_ISR} - invalid environment
-@item @code{@value{RPREFIX}INVALID_PRIORITY} - invalid task priority
-@item @code{@value{RPREFIX}INVALID_CLOCK} - invalid time buffer
-@item @code{@value{RPREFIX}INVALID_NODE} - invalid node id
-@item @code{@value{RPREFIX}NOT_CONFIGURED} - directive not configured
-@item @code{@value{RPREFIX}NOT_OWNER_OF_RESOURCE} - not owner of resource
-@item @code{@value{RPREFIX}NOT_IMPLEMENTED} - directive not implemented
-@item @code{@value{RPREFIX}INTERNAL_ERROR} - RTEMS inconsistency detected
-@item @code{@value{RPREFIX}NO_MEMORY} - could not get enough memory
-@end table
-
-@section Directives
-
-@page
-@subsection STATUS_TEXT - Returns the enumeration name for a status code
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_status_text
-@example
-const char *rtems_status_text(
- rtems_status_code code
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES
-
-The status code enumeration name or "?" in case the status code is invalid.
-
-@subheading DESCRIPTION:
-
-Returns the enumeration name for the specified status code.
diff --git a/doc/user/dpmem.t b/doc/user/dpmem.t
deleted file mode 100644
index 78c3fbf8be..0000000000
--- a/doc/user/dpmem.t
+++ /dev/null
@@ -1,361 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Dual-Ported Memory Manager
-
-@cindex ports
-@cindex dual ported memory
-
-@section Introduction
-
-The dual-ported memory manager provides a mechanism
-for converting addresses between internal and external
-representations for multiple dual-ported memory areas (DPMA).
-The directives provided by the dual-ported memory manager are:
-
-@itemize @bullet
-@item @code{@value{DIRPREFIX}port_create} - Create a port
-@item @code{@value{DIRPREFIX}port_ident} - Get ID of a port
-@item @code{@value{DIRPREFIX}port_delete} - Delete a port
-@item @code{@value{DIRPREFIX}port_external_to_internal} - Convert external to internal address
-@item @code{@value{DIRPREFIX}port_internal_to_external} - Convert internal to external address
-@end itemize
-
-@section Background
-
-@cindex dual ported memory, definition
-@cindex external addresses, definition
-@cindex internal addresses, definition
-
-A dual-ported memory area (DPMA) is an contiguous
-block of RAM owned by a particular processor but which can be
-accessed by other processors in the system. The owner accesses
-the memory using internal addresses, while other processors must
-use external addresses. RTEMS defines a port as a particular
-mapping of internal and external addresses.
-
-There are two system configurations in which
-dual-ported memory is commonly found. The first is
-tightly-coupled multiprocessor computer systems where the
-dual-ported memory is shared between all nodes and is used for
-inter-node communication. The second configuration is computer
-systems with intelligent peripheral controllers. These
-controllers typically utilize the DPMA for high-performance data
-transfers.
-
-@section Operations
-
-@subsection Creating a Port
-
-The @code{@value{DIRPREFIX}port_create} directive creates a port into a DPMA
-with the user-defined name. The user specifies the association
-between internal and external representations for the port being
-created. RTEMS allocates a Dual-Ported Memory Control Block
-(DPCB) from the DPCB free list to maintain the newly created
-DPMA. RTEMS also generates a unique dual-ported memory port ID
-which is returned to the calling task. RTEMS does not
-initialize the dual-ported memory area or access any memory
-within it.
-
-@subsection Obtaining Port IDs
-
-When a port is created, RTEMS generates a unique port
-ID and assigns it to the created port until it is deleted. The
-port ID may be obtained by either of two methods. First, as the
-result of an invocation of the
-@code{@value{DIRPREFIX}port_create} directive, the task
-ID is stored in a user provided location. Second, the port ID
-may be obtained later using the
-@code{@value{DIRPREFIX}port_ident} directive. The port
-ID is used by other dual-ported memory manager directives to
-access this port.
-
-@subsection Converting an Address
-
-The @code{@value{DIRPREFIX}port_external_to_internal} directive is used to
-convert an address from external to internal representation for
-the specified port.
-The @code{@value{DIRPREFIX}port_internal_to_external} directive is
-used to convert an address from internal to external
-representation for the specified port. If an attempt is made to
-convert an address which lies outside the specified DPMA, then
-the address to be converted will be returned.
-
-@subsection Deleting a DPMA Port
-
-A port can be removed from the system and returned to
-RTEMS with the @code{@value{DIRPREFIX}port_delete} directive. When a port is deleted,
-its control block is returned to the DPCB free list.
-
-@section Directives
-
-This section details the dual-ported memory manager's
-directives. A subsection is dedicated to each of this manager's
-directives and describes the calling sequence, related
-constants, usage, and status codes.
-
-@c
-@c
-@c
-@page
-@subsection PORT_CREATE - Create a port
-
-@cindex create a port
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_port_create
-@example
-rtems_status_code rtems_port_create(
- rtems_name name,
- void *internal_start,
- void *external_start,
- uint32_t length,
- rtems_id *id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Port_Create (
- Name : in RTEMS.Name;
- Internal_Start : in RTEMS.Address;
- External_Start : in RTEMS.Address;
- Length : in RTEMS.Unsigned32;
- ID : out RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - port created successfully@*
-@code{@value{RPREFIX}INVALID_NAME} - invalid port name@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - address not on four byte boundary@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{id} is NULL@*
-@code{@value{RPREFIX}TOO_MANY} - too many DP memory areas created
-
-@subheading DESCRIPTION:
-
-This directive creates a port which resides on the
-local node for the specified DPMA. The assigned port id is
-returned in id. This port id is used as an argument to other
-dual-ported memory manager directives to convert addresses
-within this DPMA.
-
-For control and maintenance of the port, RTEMS
-allocates and initializes an DPCB from the DPCB free pool. Thus
-memory from the dual-ported memory area is not used to store the
-DPCB.
-
-@subheading NOTES:
-
-The internal_address and external_address parameters
-must be on a four byte boundary.
-
-This directive will not cause the calling task to be
-preempted.
-
-@c
-@c
-@c
-@page
-@subsection PORT_IDENT - Get ID of a port
-
-@cindex get ID of a port
-@cindex obtain ID of a port
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_port_ident
-@example
-rtems_status_code rtems_port_ident(
- rtems_name name,
- rtems_id *id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Port_Ident (
- Name : in RTEMS.Name;
- ID : out RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - port identified successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{id} is NULL@*
-@code{@value{RPREFIX}INVALID_NAME} - port name not found
-
-@subheading DESCRIPTION:
-
-This directive obtains the port id associated with
-the specified name to be acquired. If the port name is not
-unique, then the port id will match one of the DPMAs with that
-name. However, this port id is not guaranteed to correspond to
-the desired DPMA. The port id is used to access this DPMA in
-other dual-ported memory area related directives.
-
-@subheading NOTES:
-
-This directive will not cause the running task to be
-preempted.
-
-@c
-@c
-@c
-@page
-@subsection PORT_DELETE - Delete a port
-
-@cindex delete a port
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_port_delete
-@example
-rtems_status_code rtems_port_delete(
- rtems_id id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Port_Delete (
- ID : in RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - port deleted successfully@*
-@code{@value{RPREFIX}INVALID_ID} - invalid port id
-
-@subheading DESCRIPTION:
-
-This directive deletes the dual-ported memory area
-specified by id. The DPCB for the deleted dual-ported memory
-area is reclaimed by RTEMS.
-
-@subheading NOTES:
-
-This directive will not cause the calling task to be
-preempted.
-
-The calling task does not have to be the task that
-created the port. Any local task that knows the port id can
-delete the port.
-
-@c
-@c
-@c
-@page
-@subsection PORT_EXTERNAL_TO_INTERNAL - Convert external to internal address
-
-@cindex convert external to internal address
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_port_external_to_internal
-@example
-rtems_status_code rtems_port_external_to_internal(
- rtems_id id,
- void *external,
- void **internal
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Port_External_To_Internal (
- ID : in RTEMS.ID;
- External : in RTEMS.Address;
- Internal : out RTEMS.Address;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{internal} is NULL@*
-@code{@value{RPREFIX}SUCCESSFUL} - successful conversion
-
-@subheading DESCRIPTION:
-
-This directive converts a dual-ported memory address
-from external to internal representation for the specified port.
-If the given external address is invalid for the specified
-port, then the internal address is set to the given external
-address.
-
-@subheading NOTES:
-
-This directive is callable from an ISR.
-
-This directive will not cause the calling task to be
-preempted.
-
-@c
-@c
-@c
-@page
-@subsection PORT_INTERNAL_TO_EXTERNAL - Convert internal to external address
-
-@cindex convert internal to external address
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_port_internal_to_external
-@example
-rtems_status_code rtems_port_internal_to_external(
- rtems_id id,
- void *internal,
- void **external
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Port_Internal_To_External (
- ID : in RTEMS.ID;
- Internal : in RTEMS.Address;
- External : out RTEMS.Address;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{external} is NULL@*
-@code{@value{RPREFIX}SUCCESSFUL} - successful conversion
-
-@subheading DESCRIPTION:
-
-This directive converts a dual-ported memory address
-from internal to external representation so that it can be
-passed to owner of the DPMA represented by the specified port.
-If the given internal address is an invalid dual-ported address,
-then the external address is set to the given internal address.
-
-@subheading NOTES:
-
-This directive is callable from an ISR.
-
-This directive will not cause the calling task to be
-preempted.
-
diff --git a/doc/user/event.t b/doc/user/event.t
deleted file mode 100644
index 9de54cb963..0000000000
--- a/doc/user/event.t
+++ /dev/null
@@ -1,340 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Event Manager
-
-@cindex events
-
-@section Introduction
-
-The event manager provides a high performance method
-of intertask communication and synchronization. The directives
-provided by the event manager are:
-
-@itemize @bullet
-@item @code{@value{DIRPREFIX}event_send} - Send event set to a task
-@item @code{@value{DIRPREFIX}event_receive} - Receive event condition
-@end itemize
-
-@section Background
-
-@subsection Event Sets
-
-@cindex event flag, definition
-@cindex event set, definition
-@findex rtems_event_set
-
-An event flag is used by a task (or ISR) to inform
-another task of the occurrence of a significant situation.
-Thirty-two event flags are associated with each task. A
-collection of one or more event flags is referred to as an event
-set. The data type @code{@value{DIRPREFIX}event_set} is used to manage
-event sets.
-
-The application developer should remember the following
-key characteristics of event operations when utilizing the event
-manager:
-
-@itemize @bullet
-@item Events provide a simple synchronization facility.
-
-@item Events are aimed at tasks.
-
-@item Tasks can wait on more than one event simultaneously.
-
-@item Events are independent of one another.
-
-@item Events do not hold or transport data.
-
-@item Events are not queued. In other words, if an event is
-sent more than once to a task before being received, the second and
-subsequent send operations to that same task have no effect.
-@end itemize
-
-An event set is posted when it is directed (or sent) to a task. A
-pending event is an event that has been posted but not received. An event
-condition is used to specify the event set which the task desires to receive
-and the algorithm which will be used to determine when the request is
-satisfied. An event condition is satisfied based upon one of two
-algorithms which are selected by the user. The
-@code{@value{RPREFIX}EVENT_ANY} algorithm states that an event condition
-is satisfied when at least a single requested event is posted. The
-@code{@value{RPREFIX}EVENT_ALL} algorithm states that an event condition
-is satisfied when every requested event is posted.
-
-@subsection Building an Event Set or Condition
-
-@cindex event condition, building
-@cindex event set, building
-
-An event set or condition is built by a bitwise OR of
-the desired events. The set of valid events is @code{@value{RPREFIX}EVENT_0} through
-@code{@value{RPREFIX}EVENT_31}. If an event is not explicitly specified in the set or
-condition, then it is not present. Events are specifically
-designed to be mutually exclusive, therefore bitwise OR and
-addition operations are equivalent as long as each event appears
-exactly once in the event set list.
-
-For example, when sending the event set consisting of
-@code{@value{RPREFIX}EVENT_6}, @code{@value{RPREFIX}EVENT_15}, and @code{@value{RPREFIX}EVENT_31},
-the event parameter to the @code{@value{DIRPREFIX}event_send}
-directive should be @code{@value{RPREFIX}EVENT_6 @value{OR}
-@value{RPREFIX}EVENT_15 @value{OR} @value{RPREFIX}EVENT_31}.
-
-@subsection Building an EVENT_RECEIVE Option Set
-
-In general, an option is built by a bitwise OR of the
-desired option components. The set of valid options for the
-@code{@value{DIRPREFIX}event_receive} directive are listed
-in the following table:
-
-@itemize @bullet
-@item @code{@value{RPREFIX}WAIT} - task will wait for event (default)
-@item @code{@value{RPREFIX}NO_WAIT} - task should not wait
-@item @code{@value{RPREFIX}EVENT_ALL} - return after all events (default)
-@item @code{@value{RPREFIX}EVENT_ANY} - return after any events
-@end itemize
-
-Option values are specifically designed to be
-mutually exclusive, therefore bitwise OR and addition operations
-are equivalent as long as each option appears exactly once in
-the component list. An option listed as a default is not
-required to appear in the option list, although it is a good
-programming practice to specify default options. If all
-defaults are desired, the option @code{@value{RPREFIX}DEFAULT_OPTIONS} should be
-specified on this call.
-
-This example demonstrates the option parameter needed
-to poll for all events in a particular event condition to
-arrive. The option parameter passed to the
-@code{@value{DIRPREFIX}event_receive} directive should be either
-@code{@value{RPREFIX}EVENT_ALL @value{OR} @value{RPREFIX}NO_WAIT}
-or @code{@value{RPREFIX}NO_WAIT}. The option parameter can be set to
-@code{@value{RPREFIX}NO_WAIT} because @code{@value{RPREFIX}EVENT_ALL} is the
-default condition for @code{@value{DIRPREFIX}event_receive}.
-
-@section Operations
-
-@subsection Sending an Event Set
-
-The @code{@value{DIRPREFIX}event_send} directive allows a task (or an ISR) to
-direct an event set to a target task. Based upon the state of
-the target task, one of the following situations applies:
-
-@itemize @bullet
-@item Target Task is Blocked Waiting for Events
-
-@itemize -
-
-@item If the waiting task's input event condition is
-satisfied, then the task is made ready for execution.
-
-@item If the waiting task's input event condition is not
-satisfied, then the event set is posted but left pending and the
-task remains blocked.
-
-@end itemize
-
-@item Target Task is Not Waiting for Events
-
-@itemize -
-@item The event set is posted and left pending.
-@end itemize
-
-@end itemize
-
-@subsection Receiving an Event Set
-
-The @code{@value{DIRPREFIX}event_receive} directive is used by tasks to
-accept a specific input event condition. The task also
-specifies whether the request is satisfied when all requested
-events are available or any single requested event is available.
-If the requested event condition is satisfied by pending
-events, then a successful return code and the satisfying event
-set are returned immediately. If the condition is not
-satisfied, then one of the following situations applies:
-
-@itemize @bullet
-@item By default, the calling task will wait forever for the
-event condition to be satisfied.
-
-@item Specifying the @code{@value{RPREFIX}NO_WAIT} option forces an immediate return
-with an error status code.
-
-@item Specifying a timeout limits the period the task will
-wait before returning with an error status code.
-@end itemize
-
-@subsection Determining the Pending Event Set
-
-A task can determine the pending event set by calling
-the @code{@value{DIRPREFIX}event_receive} directive with a value of
-@code{@value{RPREFIX}PENDING_EVENTS} for the input event condition.
-The pending events are returned to the calling task but the event
-set is left unaltered.
-
-@subsection Receiving all Pending Events
-
-A task can receive all of the currently pending
-events by calling the @code{@value{DIRPREFIX}event_receive}
-directive with a value of @code{@value{RPREFIX}ALL_EVENTS}
-for the input event condition and
-@code{@value{RPREFIX}NO_WAIT @value{OR} @value{RPREFIX}EVENT_ANY}
-for the option set. The pending events are returned to the
-calling task and the event set is cleared. If no events are
-pending then the @code{@value{RPREFIX}UNSATISFIED} status code will be returned.
-
-@section Directives
-
-This section details the event manager's directives.
-A subsection is dedicated to each of this manager's directives
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-@c
-@c
-@c
-@page
-@subsection EVENT_SEND - Send event set to a task
-
-@cindex send event set to a task
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_event_send
-@example
-rtems_status_code rtems_event_send (
- rtems_id id,
- rtems_event_set event_in
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Event_Send (
- ID : in RTEMS.ID;
- Event_In : in RTEMS.Event_Set;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - event set sent successfully@*
-@code{@value{RPREFIX}INVALID_ID} - invalid task id
-
-@subheading DESCRIPTION:
-
-This directive sends an event set, event_in, to the
-task specified by id. If a blocked task's input event condition
-is satisfied by this directive, then it will be made ready. If
-its input event condition is not satisfied, then the events
-satisfied are updated and the events not satisfied are left
-pending. If the task specified by id is not blocked waiting for
-events, then the events sent are left pending.
-
-@subheading NOTES:
-
-Specifying @code{@value{RPREFIX}SELF} for id results in the event set being
-sent to the calling task.
-
-Identical events sent to a task are not queued. In
-other words, the second, and subsequent, posting of an event to
-a task before it can perform an @code{@value{DIRPREFIX}event_receive}
-has no effect.
-
-The calling task will be preempted if it has
-preemption enabled and a higher priority task is unblocked as
-the result of this directive.
-
-Sending an event set to a global task which does not
-reside on the local node will generate a request telling the
-remote node to send the event set to the appropriate task.
-
-@c
-@c
-@c
-@page
-@subsection EVENT_RECEIVE - Receive event condition
-
-@cindex receive event condition
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_event_receive
-@example
-rtems_status_code rtems_event_receive (
- rtems_event_set event_in,
- rtems_option option_set,
- rtems_interval ticks,
- rtems_event_set *event_out
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Event_Receive (
- Event_In : in RTEMS.Event_Set;
- Option_Set : in RTEMS.Option;
- Ticks : in RTEMS.Interval;
- Event_Out : out RTEMS.Event_Set;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - event received successfully@*
-@code{@value{RPREFIX}UNSATISFIED} - input event not satisfied (@code{@value{RPREFIX}NO_WAIT})@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{event_out} is NULL@*
-@code{@value{RPREFIX}TIMEOUT} - timed out waiting for event
-
-@subheading DESCRIPTION:
-
-This directive attempts to receive the event
-condition specified in event_in. If event_in is set to
-@code{@value{RPREFIX}PENDING_EVENTS}, then the current pending events are returned in
-event_out and left pending. The @code{@value{RPREFIX}WAIT} and @code{@value{RPREFIX}NO_WAIT} options in the
-option_set parameter are used to specify whether or not the task
-is willing to wait for the event condition to be satisfied.
-@code{@value{RPREFIX}EVENT_ANY} and @code{@value{RPREFIX}EVENT_ALL} are used in the option_set parameter are
-used to specify whether a single event or the complete event set
-is necessary to satisfy the event condition. The event_out
-parameter is returned to the calling task with the value that
-corresponds to the events in event_in that were satisfied.
-
-If pending events satisfy the event condition, then
-event_out is set to the satisfied events and the pending events
-in the event condition are cleared. If the event condition is
-not satisfied and @code{@value{RPREFIX}NO_WAIT} is specified, then event_out is set to
-the currently satisfied events. If the calling task chooses to
-wait, then it will block waiting for the event condition.
-
-If the calling task must wait for the event condition
-to be satisfied, then the timeout parameter is used to specify
-the maximum interval to wait. If it is set to @code{@value{RPREFIX}NO_TIMEOUT}, then
-the calling task will wait forever.
-
-@subheading NOTES:
-
-This directive only affects the events specified in
-event_in. Any pending events that do not correspond to any of
-the events specified in event_in will be left pending.
-
-The following event receive option constants are defined by
-RTEMS:
-
-@itemize @bullet
-@item @code{@value{RPREFIX}WAIT} task will wait for event (default)
-@item @code{@value{RPREFIX}NO_WAIT} task should not wait
-@item @code{@value{RPREFIX}EVENT_ALL} return after all events (default)
-@item @code{@value{RPREFIX}EVENT_ANY} return after any events
-@end itemize
-
-A clock tick is required to support the functionality of this directive.
diff --git a/doc/user/example.texi b/doc/user/example.texi
deleted file mode 100644
index d6f24b9b14..0000000000
--- a/doc/user/example.texi
+++ /dev/null
@@ -1,83 +0,0 @@
-@c
-@c COPYRIGHT (c) 1989-2014.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@node Example Application, Glossary, Linker Sets RTEMS_LINKER_RWSET_ITEM_ORDERED - Defines an ordered read-write linker set item, Top
-@chapter Example Application
-
-@example
-/*
- * This file contains an example of a simple RTEMS
- * application. It instantiates the RTEMS Configuration
- * Information using confdef.h and contains two tasks:
- * a user initialization task and a simple task.
- */
-
-#include <rtems.h>
-
-rtems_task user_application(rtems_task_argument argument);
-
-rtems_task init_task(
- rtems_task_argument ignored
-)
-@{
- rtems_id tid;
- rtems_status_code status;
- rtems_name name;
-
- name = rtems_build_name( 'A', 'P', 'P', '1' )
-
- status = rtems_task_create(
- name, 1, RTEMS_MINIMUM_STACK_SIZE,
- RTEMS_NO_PREEMPT, RTEMS_FLOATING_POINT, &tid
- );
- if ( status != RTEMS_STATUS_SUCCESSFUL ) @{
- printf( "rtems_task_create failed with status of %d.\n", status );
- exit( 1 );
- @}
-
- status = rtems_task_start( tid, user_application, 0 );
- if ( status != RTEMS_STATUS_SUCCESSFUL ) @{
- printf( "rtems_task_start failed with status of %d.\n", status );
- exit( 1 );
- @}
-
- status = rtems_task_delete( SELF ); /* should not return */
- printf( "rtems_task_delete returned with status of %d.\n", status );
- exit( 1 );
-@}
-
-
-rtems_task user_application(rtems_task_argument argument)
-@{
- /* application specific initialization goes here */
-
- while ( 1 ) @{ /* infinite loop */
-
- /* APPLICATION CODE GOES HERE
- *
- * This code will typically include at least one
- * directive which causes the calling task to
- * give up the processor.
- */
- @}
-@}
-
-/* The Console Driver supplies Standard I/O. */
-#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
-
-/* The Clock Driver supplies the clock tick. */
-#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
-
-#define CONFIGURE_MAXIMUM_TASKS 2
-
-#define CONFIGURE_INIT_TASK_NAME rtems_build_name( 'E', 'X', 'A', 'M' )
-#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
-
-#define CONFIGURE_INIT
-#include <rtems/confdefs.h>
-@end example
-
-
-
diff --git a/doc/user/fatal.t b/doc/user/fatal.t
deleted file mode 100644
index 61e5261c9b..0000000000
--- a/doc/user/fatal.t
+++ /dev/null
@@ -1,283 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Fatal Error Manager
-
-@cindex fatal errors
-
-@section Introduction
-
-The fatal error manager processes all fatal or irrecoverable errors and other
-sources of system termination (for example after exit()). The directives
-provided by the fatal error manager are:
-
-@itemize @bullet
-@item @code{@value{DIRPREFIX}fatal_error_occurred} - Invoke the fatal error handler
-@item @code{@value{DIRPREFIX}fatal} - Invoke the fatal error handler with error source
-@end itemize
-
-@section Background
-
-@cindex fatal error detection
-@cindex fatal error processing
-@cindex fatal error user extension
-
-The fatal error manager is called upon detection of
-an irrecoverable error condition by either RTEMS or the
-application software. Fatal errors can be detected from three
-sources:
-
-@itemize @bullet
-@item the executive (RTEMS)
-@item user system code
-@item user application code
-@end itemize
-
-RTEMS automatically invokes the fatal error manager
-upon detection of an error it considers to be fatal. Similarly,
-the user should invoke the fatal error manager upon detection of
-a fatal error.
-
-Each static or dynamic user extension set may include
-a fatal error handler. The fatal error handler in the static
-extension set can be used to provide access to debuggers and
-monitors which may be present on the target hardware. If any
-user-supplied fatal error handlers are installed, the fatal
-error manager will invoke them. If no user handlers are
-configured or if all the user handler return control to the
-fatal error manager, then the RTEMS default fatal error handler
-is invoked. If the default fatal error handler is invoked, then
-the system state is marked as failed.
-
-Although the precise behavior of the default fatal
-error handler is processor specific, in general, it will disable
-all maskable interrupts, place the error code in a known
-processor dependent place (generally either on the stack or in a
-register), and halt the processor. The precise actions of the
-RTEMS fatal error are discussed in the Default Fatal Error
-Processing chapter of the Applications Supplement document for
-a specific target processor.
-
-@section Operations
-
-@subsection Announcing a Fatal Error
-
-@findex _Internal_errors_What_happened
-
-The @code{@value{DIRPREFIX}fatal_error_occurred} directive is invoked when a
-fatal error is detected. Before invoking any user-supplied
-fatal error handlers or the RTEMS fatal error handler, the
-@code{@value{DIRPREFIX}fatal_error_occurred}
-directive stores useful information in the
-variable @code{_Internal_errors_What_happened}. This @value{STRUCTURE}
-contains three pieces of information:
-
-@itemize @bullet
-@item the source of the error (API or executive core),
-
-@item whether the error was generated internally by the
-executive, and a
-
-@item a numeric code to indicate the error type.
-@end itemize
-
-The error type indicator is dependent on the source
-of the error and whether or not the error was internally
-generated by the executive. If the error was generated
-from an API, then the error code will be of that API's
-error or status codes. The status codes for the RTEMS
-API are in cpukit/rtems/include/rtems/rtems/status.h. Those
-for the POSIX API can be found in <errno.h>.
-
-The @code{@value{DIRPREFIX}fatal_error_occurred} directive is responsible
-for invoking an optional user-supplied fatal error handler
-and/or the RTEMS fatal error handler. All fatal error handlers
-are passed an error code to describe the error detected.
-
-Occasionally, an application requires more
-sophisticated fatal error processing such as passing control to
-a debugger. For these cases, a user-supplied fatal error
-handler can be specified in the RTEMS configuration table. The
-User Extension Table field fatal contains the address of the
-fatal error handler to be executed when the
-@code{@value{DIRPREFIX}fatal_error_occurred}
-directive is called. If the field is set to NULL or if the
-configured fatal error handler returns to the executive, then
-the default handler provided by RTEMS is executed. This default
-handler will halt execution on the processor where the error
-occurred.
-
-@section Directives
-
-This section details the fatal error manager's
-directives. A subsection is dedicated to each of this manager's
-directives and describes the calling sequence, related
-constants, usage, and status codes.
-
-@c
-@c
-@c
-@page
-@subsection FATAL_ERROR_OCCURRED - Invoke the fatal error handler
-
-@cindex announce fatal error
-@cindex fatal error, announce
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_fatal_error_occurred
-@example
-void rtems_fatal_error_occurred(
- uint32_t the_error
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Fatal_Error_Occurred (
- The_Error : in RTEMS.Unsigned32
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES
-
-NONE
-
-@subheading DESCRIPTION:
-
-This directive processes fatal errors. If the FATAL
-error extension is defined in the configuration table, then the
-user-defined error extension is called. If configured and the
-provided FATAL error extension returns, then the RTEMS default
-error handler is invoked. This directive can be invoked by
-RTEMS or by the user's application code including initialization
-tasks, other tasks, and ISRs.
-
-@subheading NOTES:
-
-This directive supports local operations only.
-
-Unless the user-defined error extension takes special
-actions such as restarting the calling task, this directive WILL
-NOT RETURN to the caller.
-
-The user-defined extension for this directive may
-wish to initiate a global shutdown.
-
-@c
-@c
-@c
-@page
-@subsection FATAL - Invoke the fatal error handler with error source
-
-@cindex announce fatal error
-@cindex fatal error, announce
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_fatal
-@example
-void rtems_fatal(
- rtems_fatal_source source,
- rtems_fatal_code error
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES
-
-NONE
-
-@subheading DESCRIPTION:
-
-This directive invokes the internal error handler with is internal set to
-false. See also @code{@value{DIRPREFIX}fatal_error_occurred}.
-
-@c
-@c
-@c
-@page
-@subsection EXCEPTION_FRAME_PRINT - Prints the exception frame
-
-@cindex exception frame
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_exception_frame_print
-@example
-void rtems_exception_frame_print(
- const rtems_exception_frame *frame
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES
-
-NONE
-
-@subheading DESCRIPTION:
-
-Prints the exception frame via printk().
-
-@c
-@c
-@c
-@page
-@subsection FATAL_SOURCE_TEXT - Returns a text for a fatal source
-
-@cindex fatal error
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_fatal_source_text
-@example
-const char *rtems_fatal_source_text(
- rtems_fatal_source source
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES
-
-The fatal source text or "?" in case the passed fatal source is invalid.
-
-@subheading DESCRIPTION:
-
-Returns a text for a fatal source. The text for fatal source is the enumerator
-constant.
-
-@c
-@c
-@c
-@page
-@subsection INTERNAL_ERROR_TEXT - Returns a text for an internal error code
-
-@cindex fatal error
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_internal_error_text
-@example
-const char *rtems_internal_error_text(
- rtems_fatal_code error
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES
-
-The error code text or "?" in case the passed error code is invalid.
-
-@subheading DESCRIPTION:
-
-Returns a text for an internal error code. The text for each internal error
-code is the enumerator constant.
diff --git a/doc/user/glossary.texi b/doc/user/glossary.texi
deleted file mode 100644
index bf22cf6133..0000000000
--- a/doc/user/glossary.texi
+++ /dev/null
@@ -1,845 +0,0 @@
-@c
-@c COPYRIGHT (c) 1989-2011.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@node Glossary, Command and Variable Index, Example Application, Top
-@chapter Glossary
-
-@table @dfn
-@item active
-A term used to describe an object
-which has been created by an application.
-
-@item aperiodic task
-A task which must execute only at
-irregular intervals and has only a soft deadline.
-
-@item application
-In this document, software which makes
-use of RTEMS.
-
-@item ASR
-see Asynchronous Signal Routine.
-
-@item asynchronous
-Not related in order or timing to
-other occurrences in the system.
-
-@item Asynchronous Signal Routine
-Similar to a hardware
-interrupt except that it is associated with a task and is run in
-the context of a task. The directives provided by the signal
-manager are used to service signals.
-
-@item atomic operations
-Atomic operations are defined in terms of @cite{ISO/IEC 9899:2011}.
-
-@item awakened
-A term used to describe a task that has
-been unblocked and may be scheduled to the CPU.
-
-@item big endian
-A data representation scheme in which
-the bytes composing a numeric value are arranged such that the
-most significant byte is at the lowest address.
-
-@item bit-mapped
-A data encoding scheme in which each bit
-in a variable is used to represent something different. This
-makes for compact data representation.
-
-@item block
-A physically contiguous area of memory.
-
-@item blocked task
-The task state entered by a task which has been previously started and cannot
-continue execution until the reason for waiting has been satisfied. Blocked
-tasks are not an element of the set of ready tasks of a scheduler instance.
-
-@item broadcast
-To simultaneously send a message to a
-logical set of destinations.
-
-@item BSP
-see Board Support Package.
-
-@item Board Support Package
-A collection of device
-initialization and control routines specific to a particular
-type of board or collection of boards.
-
-@item buffer
-A fixed length block of memory allocated
-from a partition.
-
-@item calling convention
-The processor and compiler
-dependent rules which define the mechanism used to invoke
-subroutines in a high-level language. These rules define the
-passing of arguments, the call and return mechanism, and the
-register set which must be preserved.
-
-@item Central Processing Unit
-This term is equivalent to
-the terms processor and microprocessor.
-
-@item chain
-A data structure which allows for efficient
-dynamic addition and removal of elements. It differs from an
-array in that it is not limited to a predefined size.
-
-@item cluster
-We have clustered scheduling in case the set of processors of a system is
-partitioned into non-empty pairwise disjoint subsets. These subsets are called
-@dfn{clusters}. Clusters with a cardinality of one are partitions. Each
-cluster is owned by exactly one scheduler instance.
-
-@item coalesce
-The process of merging adjacent holes into
-a single larger hole. Sometimes this process is referred to as
-garbage collection.
-
-@item Configuration Table
-A table which contains
-information used to tailor RTEMS for a particular application.
-
-@item context
-All of the processor registers and
-operating system data structures associated with a task.
-
-@item context switch
-Alternate term for task switch.
-Taking control of the processor from one task and transferring
-it to another task.
-
-@item control block
-A data structure used by the
-executive to define and control an object.
-
-@item core
-When used in this manual, this term refers to
-the internal executive utility functions. In the interest of
-application portability, the core of the executive should not be
-used directly by applications.
-
-@item CPU
-An acronym for Central Processing Unit.
-
-@item critical section
-A section of code which must be
-executed indivisibly.
-
-@item CRT
-An acronym for Cathode Ray Tube. Normally used
-in reference to the man-machine interface.
-
-@item deadline
-A fixed time limit by which a task must
-have completed a set of actions. Beyond this point, the results
-are of reduced value and may even be considered useless or
-harmful.
-
-@item device
-A peripheral used by the application that
-requires special operation software. See also device driver.
-
-@item device driver
-Control software for special
-peripheral devices used by the application.
-
-@item directives
-RTEMS' provided routines that provide
-support mechanisms for real-time applications.
-
-@item dispatch
-The act of loading a task's context onto
-the CPU and transferring control of the CPU to that task.
-
-@item dormant
-The state entered by a task after it is
-created and before it has been started.
-
-@item Device Driver Table
-A table which contains the
-entry points for each of the configured device drivers.
-
-@item dual-ported
-A term used to describe memory which
-can be accessed at two different addresses.
-
-@item embedded
-An application that is delivered as a
-hidden part of a larger system. For example, the software in a
-fuel-injection control system is an embedded application found
-in many late-model automobiles.
-
-@item envelope
-A buffer provided by the MPCI layer to
-RTEMS which is used to pass messages between nodes in a
-multiprocessor system. It typically contains routing
-information needed by the MPCI. The contents of an envelope are
-referred to as a packet.
-
-@item entry point
-The address at which a function or task
-begins to execute. In C, the entry point of a function is the
-function's name.
-
-@item events
-A method for task communication and
-synchronization. The directives provided by the event manager
-are used to service events.
-
-@item exception
-A synonym for interrupt.
-
-@item executing task
-The task state entered by a task after it has been given control of the
-processor. On SMP configurations a task may be registered as executing on more
-than one processor for short time frames during task migration. Blocked tasks
-can be executing until they issue a thread dispatch.
-
-@item executive
-In this document, this term is used to
-referred to RTEMS. Commonly, an executive is a small real-time
-operating system used in embedded systems.
-
-@item exported
-An object known by all nodes in a
-multiprocessor system. An object created with the GLOBAL
-attribute will be exported.
-
-@item external address
-The address used to access
-dual-ported memory by all the nodes in a system which do not own
-the memory.
-
-@item FIFO
-An acronym for First In First Out.
-
-@item First In First Out
-A discipline for manipulating entries in a data structure.
-
-@item floating point coprocessor
-A component used in
-computer systems to enhance performance in mathematically
-intensive situations. It is typically viewed as a logical
-extension of the primary processor.
-
-@item freed
-A resource that has been released by the
-application to RTEMS.
-
-@item Giant lock
-The @dfn{Giant lock} is a recursive SMP lock protecting most parts of the
-operating system state. Virtually every operating system service must acquire
-and release the Giant lock during its operation.
-
-@item global
-An object that has been created with the
-GLOBAL attribute and exported to all nodes in a multiprocessor
-system.
-
-@item handler
-The equivalent of a manager, except that it
-is internal to RTEMS and forms part of the core. A handler is a
-collection of routines which provide a related set of functions.
-For example, there is a handler used by RTEMS to manage all
-objects.
-
-@item hard real-time system
-A real-time system in which a
-missed deadline causes the worked performed to have no value or
-to result in a catastrophic effect on the integrity of the
-system.
-
-@item heap
-A data structure used to dynamically allocate
-and deallocate variable sized blocks of memory.
-
-@item heir task
-A task is an @dfn{heir} if it is registered as an heir in a processor of the
-system. A task can be the heir on at most one processor in the system. In
-case the executing and heir tasks differ on a processor and a thread dispatch
-is marked as necessary, then the next thread dispatch will make the heir task
-the executing task.
-
-@item heterogeneous
-A multiprocessor computer system composed of dissimilar processors.
-
-@item homogeneous
-A multiprocessor computer system composed of a single type of processor.
-
-@item ID
-An RTEMS assigned identification tag used to
-access an active object.
-
-@item IDLE task
-A special low priority task which assumes
-control of the CPU when no other task is able to execute.
-
-@item interface
-A specification of the methodology used
-to connect multiple independent subsystems.
-
-@item internal address
-The address used to access
-dual-ported memory by the node which owns the memory.
-
-@item interrupt
-A hardware facility that causes the CPU
-to suspend execution, save its status, and transfer control to a
-specific location.
-
-@item interrupt level
-A mask used to by the CPU to
-determine which pending interrupts should be serviced. If a
-pending interrupt is below the current interrupt level, then the
-CPU does not recognize that interrupt.
-
-@item Interrupt Service Routine
-An ISR is invoked by the
-CPU to process a pending interrupt.
-
-@item I/O
-An acronym for Input/Output.
-
-@item ISR
-An acronym for Interrupt Service Routine.
-
-@item kernel
-In this document, this term is used as a
-synonym for executive.
-
-@item list
-A data structure which allows for dynamic
-addition and removal of entries. It is not statically limited
-to a particular size.
-
-@item little endian
-A data representation scheme in which
-the bytes composing a numeric value are arranged such that the
-least significant byte is at the lowest address.
-
-@item local
-An object which was created with the LOCAL
-attribute and is accessible only on the node it was created and
-resides upon. In a single processor configuration, all objects
-are local.
-
-@item local operation
-The manipulation of an object which
-resides on the same node as the calling task.
-
-@item logical address
-An address used by an application.
-In a system without memory management, logical addresses will
-equal physical addresses.
-
-@item loosely-coupled
-A multiprocessor configuration
-where shared memory is not used for communication.
-
-@item major number
-The index of a device driver in the
-Device Driver Table.
-
-@item manager
-A group of related RTEMS' directives which
-provide access and control over resources.
-
-@item memory pool
-Used interchangeably with heap.
-
-@item message
-A sixteen byte entity used to communicate
-between tasks. Messages are sent to message queues and stored
-in message buffers.
-
-@item message buffer
-A block of memory used to store
-messages.
-
-@item message queue
-An RTEMS object used to synchronize
-and communicate between tasks by transporting messages between
-sending and receiving tasks.
-
-@item Message Queue Control Block
-A data structure associated with each message queue used by RTEMS
-to manage that message queue.
-
-@item minor number
-A numeric value passed to a device
-driver, the exact usage of which is driver dependent.
-
-@item mode
-An entry in a task's control block that is
-used to determine if the task allows preemption, timeslicing,
-processing of signals, and the interrupt disable level used by
-the task.
-
-@item MPCI
-An acronym for Multiprocessor Communications
-Interface Layer.
-
-@item multiprocessing
-The simultaneous execution of two
-or more processes by a multiple processor computer system.
-
-@item multiprocessor
-A computer with multiple CPUs
-available for executing applications.
-
-@item Multiprocessor Communications Interface Layer
-A set
-of user-provided routines which enable the nodes in a
-multiprocessor system to communicate with one another.
-
-@item Multiprocessor Configuration Table
-The data structure defining the characteristics of the multiprocessor
-target system with which RTEMS will communicate.
-
-@item multitasking
-The alternation of execution amongst a
-group of processes on a single CPU. A scheduling algorithm is
-used to determine which process executes at which time.
-
-@item mutual exclusion
-A term used to describe the act of
-preventing other tasks from accessing a resource simultaneously.
-
-@item nested
-A term used to describe an ASR that occurs
-during another ASR or an ISR that occurs during another ISR.
-
-@item node
-A term used to reference a processor running
-RTEMS in a multiprocessor system.
-
-@item non-existent
-The state occupied by an uncreated or
-deleted task.
-
-@item numeric coprocessor
-A component used in computer
-systems to enhance performance in mathematically intensive
-situations. It is typically viewed as a logical extension of
-the primary processor.
-
-@item object
-In this document, this term is used to refer
-collectively to tasks, timers, message queues, partitions,
-regions, semaphores, ports, and rate monotonic periods. All
-RTEMS objects have IDs and user-assigned names.
-
-@item object-oriented
-A term used to describe systems
-with common mechanisms for utilizing a variety of entities.
-Object-oriented systems shield the application from
-implementation details.
-
-@item operating system
-The software which controls all
-the computer's resources and provides the base upon which
-application programs can be written.
-
-@item overhead
-The portion of the CPUs processing power
-consumed by the operating system.
-
-@item packet
-A buffer which contains the messages passed
-between nodes in a multiprocessor system. A packet is the
-contents of an envelope.
-
-@item partition
-An RTEMS object which is used to allocate
-and deallocate fixed size blocks of memory from an dynamically
-specified area of memory.
-
-@item partition
-Clusters with a cardinality of one are @dfn{partitions}.
-
-@item Partition Control Block
-A data structure associated
-with each partition used by RTEMS to manage that partition.
-
-@item pending
-A term used to describe a task blocked
-waiting for an event, message, semaphore, or signal.
-
-@item periodic task
-A task which must execute at regular
-intervals and comply with a hard deadline.
-
-@item physical address
-The actual hardware address of a
-resource.
-
-@item poll
-A mechanism used to determine if an event has
-occurred by periodically checking for a particular status.
-Typical events include arrival of data, completion of an action,
-and errors.
-
-@item pool
-A collection from which resources are
-allocated.
-
-@item portability
-A term used to describe the ease with
-which software can be rehosted on another computer.
-
-@item posting
-The act of sending an event, message,
-semaphore, or signal to a task.
-
-@item preempt
-The act of forcing a task to relinquish the
-processor and dispatching to another task.
-
-@item priority
-A mechanism used to represent the relative
-importance of an element in a set of items. RTEMS uses priority
-to determine which task should execute.
-
-@item priority boosting
-A simple approach to extend the priority inheritance protocol for clustered
-scheduling is @dfn{priority boosting}. In case a mutex is owned by a task of
-another cluster, then the priority of the owner task is raised to an
-artificially high priority, the pseudo-interrupt priority.
-
-@item priority inheritance
-An algorithm that calls for
-the lower priority task holding a resource to have its priority
-increased to that of the highest priority task blocked waiting
-for that resource. This avoids the problem of priority
-inversion.
-
-@item priority inversion
-A form of indefinite
-postponement which occurs when a high priority tasks requests
-access to shared resource currently allocated to low priority
-task. The high priority task must block until the low priority
-task releases the resource.
-
-@item processor utilization
-The percentage of processor
-time used by a task or a set of tasks.
-
-@item proxy
-An RTEMS control structure used to represent,
-on a remote node, a task which must block as part of a remote
-operation.
-
-@item Proxy Control Block
-A data structure associated
-with each proxy used by RTEMS to manage that proxy.
-
-@item PTCB
-An acronym for Partition Control Block.
-
-@item PXCB
-An acronym for Proxy Control Block.
-
-@item quantum
-The application defined unit of time in
-which the processor is allocated.
-
-@item queue
-Alternate term for message queue.
-
-@item QCB
-An acronym for Message Queue Control Block.
-
-@item ready task
-A task occupies this state when it is available to be given control of a
-processor. A ready task has no processor assigned. The scheduler decided that
-other tasks are currently more important. A task that is ready to execute and
-has a processor assigned is called scheduled.
-
-@item real-time
-A term used to describe systems which are
-characterized by requiring deterministic response times to
-external stimuli. The external stimuli require that the
-response occur at a precise time or the response is incorrect.
-
-@item reentrant
-A term used to describe routines which do
-not modify themselves or global variables.
-
-@item region
-An RTEMS object which is used to allocate
-and deallocate variable size blocks of memory from a dynamically
-specified area of memory.
-
-@item Region Control Block
-A data structure associated
-with each region used by RTEMS to manage that region.
-
-@item registers
-Registers are locations physically
-located within a component, typically used for device control or
-general purpose storage.
-
-@item remote
-Any object that does not reside on the local
-node.
-
-@item remote operation
-The manipulation of an object
-which does not reside on the same node as the calling task.
-
-@item return code
-Also known as error code or return
-value.
-
-@item resource
-A hardware or software entity to which
-access must be controlled.
-
-@item resume
-Removing a task from the suspend state. If
-the task's state is ready following a call to the
-@code{@value{DIRPREFIX}task_resume}
-directive, then the task is available for scheduling.
-
-@item return code
-A value returned by RTEMS directives to
-indicate the completion status of the directive.
-
-@item RNCB
-An acronym for Region Control Block.
-
-@item round-robin
-A task scheduling discipline in which
-tasks of equal priority are executed in the order in which they
-are made ready.
-
-@item RS-232
-A standard for serial communications.
-
-@item running
-The state of a rate monotonic timer while
-it is being used to delineate a period. The timer exits this
-state by either expiring or being canceled.
-
-@item schedulable
-A set of tasks which can be guaranteed
-to meet their deadlines based upon a specific scheduling
-algorithm.
-
-@item schedule
-The process of choosing which task should
-next enter the executing state.
-
-@item scheduled task
-A task is @dfn{scheduled} if it is allowed to execute and has a processor
-assigned. Such a task executes currently on a processor or is about to start
-execution. A task about to start execution it is an heir task on exactly one
-processor in the system.
-
-@item scheduler
-A @dfn{scheduler} or @dfn{scheduling algorithm} allocates processors to a
-subset of its set of ready tasks. So it manages access to the processor
-resource. Various algorithms exist to choose the tasks allowed to use a
-processor out of the set of ready tasks. One method is to assign each task a
-priority number and assign the tasks with the lowest priority number to one
-processor of the set of processors owned by a scheduler instance.
-
-@item scheduler instance
-A @dfn{scheduler instance} is a scheduling algorithm with a corresponding
-context to store its internal state. Each processor in the system is owned by
-at most one scheduler instance. The processor to scheduler instance assignment
-is determined at application configuration time. @xref{Configuring a System
-Configuring Clustered Schedulers}.
-
-@item segments
-Variable sized memory blocks allocated
-from a region.
-
-@item semaphore
-An RTEMS object which is used to
-synchronize tasks and provide mutually exclusive access to
-resources.
-
-@item Semaphore Control Block
-A data structure associated
-with each semaphore used by RTEMS to manage that semaphore.
-
-@item shared memory
-Memory which is accessible by
-multiple nodes in a multiprocessor system.
-
-@item signal
-An RTEMS provided mechanism to communicate
-asynchronously with a task. Upon reception of a signal, the ASR
-of the receiving task will be invoked.
-
-@item signal set
-A thirty-two bit entity which is used to
-represent a task's collection of pending signals and the signals
-sent to a task.
-
-@item SMCB
-An acronym for Semaphore Control Block.
-
-@item SMP locks
-The @dfn{SMP locks} ensure mutual exclusion on the lowest level and are a
-replacement for the sections of disabled interrupts. Interrupts are usually
-disabled while holding an SMP lock. They are implemented using atomic
-operations. Currently a ticket lock is used in RTEMS.
-
-@item SMP barriers
-The @dfn{SMP barriers} ensure that a defined set of independent threads of
-execution on a set of processors reaches a common synchronization point in
-time. They are implemented using atomic operations. Currently a sense barrier
-is used in RTEMS.
-
-@item soft real-time system
-A real-time system in which a
-missed deadline does not compromise the integrity of the system.
-
-@item sporadic task
-A task which executes at irregular
-intervals and must comply with a hard deadline. A minimum
-period of time between successive iterations of the task can be
-guaranteed.
-
-@item stack
-A data structure that is managed using a Last
-In First Out (LIFO) discipline. Each task has a stack
-associated with it which is used to store return information
-and local variables.
-
-@item status code
-Also known as error code or return
-value.
-
-@item suspend
-A term used to describe a task that is not
-competing for the CPU because it has had a
-@code{@value{DIRPREFIX}task_suspend} directive.
-
-@item synchronous
-Related in order or timing to other
-occurrences in the system.
-
-@item system call
-In this document, this is used as an
-alternate term for directive.
-
-@item target
-The system on which the application will
-ultimately execute.
-
-@item task
-A logically complete thread of execution. It consists normally of a set of
-registers and a stack. The terms @dfn{task} and @dfn{thread} are synonym in
-RTEMS. The scheduler assigns processors to a subset of the ready tasks.
-
-@item Task Control Block
-A data structure associated with
-each task used by RTEMS to manage that task.
-
-@item task migration
-@dfn{Task migration} happens in case a task stops execution on one processor
-and resumes execution on another processor.
-
-@item task processor affinity
-The set of processors on which a task is allowed to execute.
-
-@item task switch
-Alternate terminology for context
-switch. Taking control of the processor from one task and given
-to another.
-
-@item TCB
-An acronym for Task Control Block.
-
-@item thread dispatch
-The @dfn{thread dispatch} transfers control of the processor from the currently
-executing thread to the heir thread of the processor.
-
-@item tick
-The basic unit of time used by RTEMS. It is a
-user-configurable number of microseconds. The current tick
-expires when the @code{@value{DIRPREFIX}clock_tick}
-directive is invoked.
-
-@item tightly-coupled
-A multiprocessor configuration
-system which communicates via shared memory.
-
-@item timeout
-An argument provided to a number of
-directives which determines the maximum length of time an
-application task is willing to wait to acquire the resource if
-it is not immediately available.
-
-@item timer
-An RTEMS object used to invoke subprograms at
-a later time.
-
-@item Timer Control Block
-A data structure associated
-with each timer used by RTEMS to manage that timer.
-
-@item timeslicing
-A task scheduling discipline in which
-tasks of equal priority are executed for a specific period of
-time before being preempted by another task.
-
-@item timeslice
-The application defined unit of time in
-which the processor is allocated.
-
-@item TMCB
-An acronym for Timer Control Block.
-
-@item transient overload
-A temporary rise in system
-activity which may cause deadlines to be missed. Rate Monotonic
-Scheduling can be used to determine if all deadlines will be met
-under transient overload.
-
-@item user extensions
-Software routines provided by the
-application to enhance the functionality of RTEMS.
-
-@item User Extension Table
-A table which contains the
-entry points for each user extensions.
-
-@item User Initialization Tasks Table
-A table which
-contains the information needed to create and start each of the
-user initialization tasks.
-
-@item user-provided
-Alternate term for user-supplied.
-This term is used to designate any software routines which must
-be written by the application designer.
-
-@item user-supplied
-Alternate term for user-provided.
-This term is used to designate any software routines which must
-be written by the application designer.
-
-@item vector
-Memory pointers used by the processor to
-fetch the address of routines which will handle various
-exceptions and interrupts.
-
-@item wait queue
-The list of tasks blocked pending the
-release of a particular resource. Message queues, regions, and
-semaphores have a wait queue associated with them.
-
-@item yield
-When a task voluntarily releases control of the processor.
-
-@end table
-
diff --git a/doc/user/init.t b/doc/user/init.t
deleted file mode 100644
index ecbfa148b8..0000000000
--- a/doc/user/init.t
+++ /dev/null
@@ -1,311 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2008.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Initialization Manager
-
-@section Introduction
-
-The Initialization Manager is responsible for
-initiating and shutting down RTEMS. Initiating RTEMS involves
-creating and starting all configured initialization tasks, and
-for invoking the initialization routine for each user-supplied
-device driver. In a multiprocessor configuration, this manager
-also initializes the interprocessor communications layer. The
-directives provided by the Initialization Manager are:
-
-@itemize @bullet
-@item @code{@value{DIRPREFIX}initialize_executive} - Initialize RTEMS
-@item @code{@value{DIRPREFIX}shutdown_executive} - Shutdown RTEMS
-@end itemize
-
-@section Background
-
-@subsection Initialization Tasks
-
-@cindex initialization tasks
-
-Initialization task(s) are the mechanism by which
-RTEMS transfers initial control to the user's application.
-Initialization tasks differ from other application tasks in that
-they are defined in the User Initialization Tasks Table and
-automatically created and started by RTEMS as part of its
-initialization sequence. Since the initialization tasks are
-scheduled using the same algorithm as all other RTEMS tasks,
-they must be configured at a priority and mode which will ensure
-that they will complete execution before other application tasks
-execute. Although there is no upper limit on the number of
-initialization tasks, an application is required to define at
-least one.
-
-A typical initialization task will create and start
-the static set of application tasks. It may also create any
-other objects used by the application. Initialization tasks
-which only perform initialization should delete themselves upon
-completion to free resources for other tasks. Initialization
-tasks may transform themselves into a "normal" application task.
-This transformation typically involves changing priority and
-execution mode. RTEMS does not automatically delete the
-initialization tasks.
-
-@subsection System Initialization
-
-System Initialization begins with board reset and continues
-through RTEMS initialization, initialization of all device
-drivers, and eventually a context switch to the first user
-task. Remember, that interrupts are disabled during
-initialization and the @i{initialization context} is not
-a task in any sense and the user should be very careful
-during initialization.
-
-The BSP must ensure that the there is enough stack
-space reserved for the initialization context to
-successfully execute the initialization routines for
-all device drivers and, in multiprocessor configurations, the
-Multiprocessor Communications Interface Layer initialization
-routine.
-
-@subsection The Idle Task
-
-The Idle Task is the lowest priority task in a system
-and executes only when no other task is ready to execute. This
-default implementation of this task consists of an infinite
-loop. RTEMS allows the Idle Task body to be replaced by a CPU
-specific implementation, a BSP specific implementation or an
-application specific implementation.
-
-The Idle Task is preemptible and @b{WILL} be preempted when
-any other task is made ready to execute. This characteristic is
-critical to the overall behavior of any application.
-
-@subsection Initialization Manager Failure
-
-The @code{@value{DIRPREFIX}fatal_error_occurred} directive will
-be invoked from @code{@value{DIRPREFIX}initialize_executive}
-for any of the following reasons:
-
-@itemize @bullet
-@item If either the Configuration Table or the CPU Dependent
-Information Table is not provided.
-
-@item If the starting address of the RTEMS RAM Workspace,
-supplied by the application in the Configuration Table, is NULL
-or is not aligned on a four-byte boundary.
-
-@item If the size of the RTEMS RAM Workspace is not large
-enough to initialize and configure the system.
-
-@item If the interrupt stack size specified is too small.
-
-@item If multiprocessing is configured and the node entry in
-the Multiprocessor Configuration Table is not between one and
-the maximum_nodes entry.
-
-@item If a multiprocessor system is being configured and no
-Multiprocessor Communications Interface is specified.
-
-@item If no user initialization tasks are configured. At
-least one initialization task must be configured to allow RTEMS
-to pass control to the application at the end of the executive
-initialization sequence.
-
-@item If any of the user initialization tasks cannot be
-created or started successfully.
-@end itemize
-
-A discussion of RTEMS actions when a fatal error occurs
-may be found @ref{Fatal Error Manager Announcing a Fatal Error}.
-
-
-@section Operations
-
-@subsection Initializing RTEMS
-
-The Initialization Manager @code{@value{DIRPREFIX}initialize_executive}
-directives is called by the @code{boot_card} routine. The @code{boot_card}
-routine is invoked by the Board Support Package once a basic C run-time
-environment is set up. This consists of
-
-@itemize @bullet
-@item a valid and accessible text section, read-only data, read-write data and
-zero-initialized data,
-@item an initialization stack large enough to initialize the rest of the Board
-Support Package, RTEMS and the device drivers,
-@item all registers and components mandated by Application Binary Interface, and
-@item disabled interrupts.
-@end itemize
-
-The @code{@value{DIRPREFIX}initialize_executive} directive uses a system
-initialization linker set to initialize only those parts of the overall RTEMS
-feature set that is necessary for a particular application. @xref{Linker
-Sets}. Each RTEMS feature used the application may optionally register an
-initialization handler. The system initialization API is available via
-@code{#included <rtems/sysinit.h>}.
-
-A list of all initialization steps follows. Some steps are optional depending
-on the requested feature set of the application. The initialization steps are
-execute in the order presented here.
-
-@table @dfn
-
-@item RTEMS_SYSINIT_BSP_WORK_AREAS
-The work areas consisting of C Program Heap and the RTEMS Workspace are
-initialized by the Board Support Package. This step is mandatory.
-
-@item RTEMS_SYSINIT_BSP_START
-Basic initialization step provided by the Board Support Package. This step is
-mandatory.
-
-@item RTEMS_SYSINIT_INITIAL_EXTENSIONS
-Initializes the initial extensions if at least one is configured by the Board
-Support Package or application.
-
-@item RTEMS_SYSINIT_DATA_STRUCTURES
-This directive is called when the Board Support Package has completed its basic
-initialization and allows RTEMS to initialize the application environment based
-upon the information in the Configuration Table, User Initialization Tasks
-Table, Device Driver Table, Multiprocessor Configuration Table, and the
-Multiprocessor Communications Interface (MPCI) Table.
-
-@item RTEMS_SYSINIT_USER_EXTENSIONS
-Initializes the @ref{User Extensions Manager} in case it is used by the
-application.
-
-@item RTEMS_SYSINIT_CPU_SET
-Initializes the global CPU set on SMP configurations in case the application
-uses this information.
-
-@item RTEMS_SYSINIT_BSP_LIBC
-Depending on the application configuration the IO library and root filesystem
-is initialized. This step is mandatory.
-
-@item RTEMS_SYSINIT_BEFORE_DRIVERS
-This directive performs initialization that must occur between basis RTEMS data
-structure initialization and device driver initialization. In particular, in a
-multiprocessor configuration, this directive will create the MPCI Server Task.
-
-@item RTEMS_SYSINIT_BSP_PRE_DRIVERS
-Initialization step performed right before device drivers are initialized
-provided by the Board Support Package. This step is mandatory.
-
-@item RTEMS_SYSINIT_DEVICE_DRIVERS
-This step initializes all statically configured device drivers and performs all
-RTEMS initialization which requires device drivers to be initialized. This
-step is mandatory.
-
-In a multiprocessor configuration, this service will initialize the
-Multiprocessor Communications Interface (MPCI) and synchronize with the other
-nodes in the system.
-
-@item RTEMS_SYSINIT_BSP_POST_DRIVERS
-Initialization step performed right after device drivers are initialized
-provided by the Board Support Package. This step is mandatory.
-
-@end table
-
-The final action of the @code{@value{DIRPREFIX}initialize_executive} directive
-is to start multitasking. RTEMS does not return to the initialization context
-and the initialization stack may be re-used for interrupt processing.
-
-Many of RTEMS actions during initialization are based upon
-the contents of the Configuration Table. For more information
-regarding the format and contents of this table, please refer
-to the chapter @ref{Configuring a System}.
-
-The final action in the initialization sequence is the
-initiation of multitasking. When the scheduler and dispatcher
-are enabled, the highest priority, ready task will be dispatched
-to run. Control will not be returned to the Board Support
-Package after multitasking is enabled. The initialization stack may be re-used
-for interrupt processing.
-
-@subsection Shutting Down RTEMS
-
-The @code{@value{DIRPREFIX}shutdown_executive} directive is invoked by the
-application to end multitasking and terminate the system.
-
-@section Directives
-
-This section details the Initialization Manager's
-directives. A subsection is dedicated to each of this manager's
-directives and describes the calling sequence, related
-constants, usage, and status codes.
-
-@page
-@subsection INITIALIZE_EXECUTIVE - Initialize RTEMS
-
-@cindex initialize RTEMS
-@cindex start multitasking
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_initialize_executive
-@example
-void rtems_initialize_executive(void);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-NOT SUPPORTED FROM Ada BINDING
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-NONE
-
-@subheading DESCRIPTION:
-
-Iterates through the system initialization linker set and invokes the
-registered handlers. The final step is to start multitasking.
-
-@subheading NOTES:
-
-This directive should be called by @code{boot_card} only.
-
-This directive @b{does not return} to the caller. Errors in the initialization
-sequence are usually fatal and lead to a system termination.
-
-@page
-@subsection SHUTDOWN_EXECUTIVE - Shutdown RTEMS
-
-@cindex shutdown RTEMS
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_shutdown_executive
-@example
-void rtems_shutdown_executive(
- uint32_t result
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Shutdown_Executive(
- Status : in RTEMS.Unsigned32
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-NONE
-
-@subheading DESCRIPTION:
-
-This directive is called when the application wishes to shutdown RTEMS. The
-system is terminated with a fatal source of @code{RTEMS_FATAL_SOURCE_EXIT} and
-the specified @code{result} code.
-
-@subheading NOTES:
-
-This directive @b{must} be the last RTEMS directive
-invoked by an application and it @b{does not return} to the caller.
-
-This directive may be called any time.
diff --git a/doc/user/intr.t b/doc/user/intr.t
deleted file mode 100644
index 58187965e1..0000000000
--- a/doc/user/intr.t
+++ /dev/null
@@ -1,780 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2008.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Interrupt Manager
-
-@section Introduction
-
-Any real-time executive must provide a mechanism for
-quick response to externally generated interrupts to satisfy the
-critical time constraints of the application. The interrupt
-manager provides this mechanism for RTEMS. This manager permits
-quick interrupt response times by providing the critical ability
-to alter task execution which allows a task to be preempted upon
-exit from an ISR. The interrupt manager includes the following
-directive:
-
-@itemize @bullet
-@item @code{@value{DIRPREFIX}interrupt_catch} - Establish an ISR
-@item @code{@value{DIRPREFIX}interrupt_disable} - Disable Interrupts
-@item @code{@value{DIRPREFIX}interrupt_enable} - Enable Interrupts
-@item @code{@value{DIRPREFIX}interrupt_flash} - Flash Interrupt
-@item @code{@value{DIRPREFIX}interrupt_local_disable} - Disable Interrupts on Current Processor
-@item @code{@value{DIRPREFIX}interrupt_local_enable} - Enable Interrupts on Current Processor
-@item @code{@value{DIRPREFIX}interrupt_lock_initialize} - Initialize an ISR Lock
-@item @code{@value{DIRPREFIX}interrupt_lock_acquire} - Acquire an ISR Lock
-@item @code{@value{DIRPREFIX}interrupt_lock_release} - Release an ISR Lock
-@item @code{@value{DIRPREFIX}interrupt_lock_acquire_isr} - Acquire an ISR Lock from ISR
-@item @code{@value{DIRPREFIX}interrupt_lock_release_isr} - Release an ISR Lock from ISR
-@item @code{@value{DIRPREFIX}interrupt_is_in_progress} - Is an ISR in Progress
-@end itemize
-
-@section Background
-
-@subsection Processing an Interrupt
-
-@cindex interrupt processing
-
-The interrupt manager allows the application to
-connect a function to a hardware interrupt vector. When an
-interrupt occurs, the processor will automatically vector to
-RTEMS. RTEMS saves and restores all registers which are not
-preserved by the normal @value{LANGUAGE} calling convention
-for the target
-processor and invokes the user's ISR. The user's ISR is
-responsible for processing the interrupt, clearing the interrupt
-if necessary, and device specific manipulation.
-
-@findex rtems_vector_number
-
-The @code{@value{DIRPREFIX}interrupt_catch}
-directive connects a procedure to
-an interrupt vector. The vector number is managed using
-the @code{@value{DIRPREFIX}vector_number} data type.
-
-The interrupt service routine is assumed
-to abide by these conventions and have a prototype similar to
-the following:
-
-@ifset is-C
-@findex rtems_isr
-
-@example
-rtems_isr user_isr(
- rtems_vector_number vector
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-NOT SUPPORTED FROM Ada BINDING
-@end example
-@end ifset
-
-The vector number argument is provided by RTEMS to
-allow the application to identify the interrupt source. This
-could be used to allow a single routine to service interrupts
-from multiple instances of the same device. For example, a
-single routine could service interrupts from multiple serial
-ports and use the vector number to identify which port requires
-servicing.
-
-To minimize the masking of lower or equal priority
-level interrupts, the ISR should perform the minimum actions
-required to service the interrupt. Other non-essential actions
-should be handled by application tasks. Once the user's ISR has
-completed, it returns control to the RTEMS interrupt manager
-which will perform task dispatching and restore the registers
-saved before the ISR was invoked.
-
-The RTEMS interrupt manager guarantees that proper
-task scheduling and dispatching are performed at the conclusion
-of an ISR. A system call made by the ISR may have readied a
-task of higher priority than the interrupted task. Therefore,
-when the ISR completes, the postponed dispatch processing must
-be performed. No dispatch processing is performed as part of
-directives which have been invoked by an ISR.
-
-Applications must adhere to the following rule if
-proper task scheduling and dispatching is to be performed:
-
-@itemize @b{ }
-
-@item @b{The interrupt manager must be used for all ISRs which
-may be interrupted by the highest priority ISR which invokes an
-RTEMS directive.}
-
-@end itemize
-
-Consider a processor which allows a numerically low
-interrupt level to interrupt a numerically greater interrupt
-level. In this example, if an RTEMS directive is used in a
-level 4 ISR, then all ISRs which execute at levels 0 through 4
-must use the interrupt manager.
-
-Interrupts are nested whenever an interrupt occurs
-during the execution of another ISR. RTEMS supports efficient
-interrupt nesting by allowing the nested ISRs to terminate
-without performing any dispatch processing. Only when the
-outermost ISR terminates will the postponed dispatching occur.
-
-@subsection RTEMS Interrupt Levels
-
-@cindex interrupt levels
-
-Many processors support multiple interrupt levels or
-priorities. The exact number of interrupt levels is processor
-dependent. RTEMS internally supports 256 interrupt levels which
-are mapped to the processor's interrupt levels. For specific
-information on the mapping between RTEMS and the target
-processor's interrupt levels, refer to the Interrupt Processing
-chapter of the Applications Supplement document for a specific
-target processor.
-
-@subsection Disabling of Interrupts by RTEMS
-
-@cindex disabling interrupts
-
-During the execution of directive calls, critical
-sections of code may be executed. When these sections are
-encountered, RTEMS disables all maskable interrupts before the
-execution of the section and restores them to the previous level
-upon completion of the section. RTEMS has been optimized to
-ensure that interrupts are disabled for a minimum length of
-time. The maximum length of time interrupts are disabled by
-RTEMS is processor dependent and is detailed in the Timing
-Specification chapter of the Applications Supplement document
-for a specific target processor.
-
-Non-maskable interrupts (NMI) cannot be disabled, and
-ISRs which execute at this level MUST NEVER issue RTEMS system
-calls. If a directive is invoked, unpredictable results may
-occur due to the inability of RTEMS to protect its critical
-sections. However, ISRs that make no system calls may safely
-execute as non-maskable interrupts.
-
-@section Operations
-
-@subsection Establishing an ISR
-
-The @code{@value{DIRPREFIX}interrupt_catch}
-directive establishes an ISR for
-the system. The address of the ISR and its associated CPU
-vector number are specified to this directive. This directive
-installs the RTEMS interrupt wrapper in the processor's
-Interrupt Vector Table and the address of the user's ISR in the
-RTEMS' Vector Table. This directive returns the previous
-contents of the specified vector in the RTEMS' Vector Table.
-
-@subsection Directives Allowed from an ISR
-
-Using the interrupt manager ensures that RTEMS knows
-when a directive is being called from an ISR. The ISR may then
-use system calls to synchronize itself with an application task.
-The synchronization may involve messages, events or signals
-being passed by the ISR to the desired task. Directives invoked
-by an ISR must operate only on objects which reside on the local
-node. The following is a list of RTEMS system calls that may be
-made from an ISR:
-
-@itemize @bullet
-@item Task Management
-
-Although it is acceptable to operate on the RTEMS_SELF task (e.g.
-the currently executing task), while in an ISR, this will refer
-to the interrupted task. Most of the time, it is an application
-implementation error to use RTEMS_SELF from an ISR.
-
-@itemize
-@item rtems_task_suspend
-@item rtems_task_resume
-@end itemize
-
-@item Interrupt Management
-
-@itemize
-@item rtems_interrupt_enable
-@item rtems_interrupt_disable
-@item rtems_interrupt_flash
-@item rtems_interrupt_lock_acquire
-@item rtems_interrupt_lock_release
-@item rtems_interrupt_lock_acquire_isr
-@item rtems_interrupt_lock_release_isr
-@item rtems_interrupt_is_in_progress
-@item rtems_interrupt_catch
-@end itemize
-
-@item Clock Management
-
-@itemize
-@item rtems_clock_set
-@item rtems_clock_get
-@item rtems_clock_get_tod
-@item rtems_clock_get_tod_timeval
-@item rtems_clock_get_seconds_since_epoch
-@item rtems_clock_get_ticks_per_second
-@item rtems_clock_get_ticks_since_boot
-@item rtems_clock_get_uptime
-@item rtems_clock_set_nanoseconds_extension
-@item rtems_clock_tick
-@end itemize
-
-@item Timer Management
-
-@itemize
-@item rtems_timer_cancel
-@item rtems_timer_reset
-@item rtems_timer_fire_after
-@item rtems_timer_fire_when
-@item rtems_timer_server_fire_after
-@item rtems_timer_server_fire_when
-@end itemize
-
-@item Event Management
-
-@itemize
-@item rtems_event_send
-@item rtems_event_system_send
-@item rtems_event_transient_send
-@end itemize
-
-@item Semaphore Management
-
-@itemize
-@item rtems_semaphore_release
-@end itemize
-
-@item Message Management
-
-@itemize
-@item rtems_message_queue_send
-@item rtems_message_queue_urgent
-@end itemize
-
-@item Signal Management
-
-@itemize
-@item rtems_signal_send
-@end itemize
-
-@item Dual-Ported Memory Management
-
-@itemize
-@item rtems_port_external_to_internal
-@item rtems_port_internal_to_external
-@end itemize
-
-@item IO Management
-
-The following services are safe to call from an ISR if and only if
-the device driver service invoked is also safe. The IO Manager itself
-is safe but the invoked driver entry point may or may not be.
-@itemize
-@item rtems_io_initialize
-@item rtems_io_open
-@item rtems_io_close
-@item rtems_io_read
-@item rtems_io_write
-@item rtems_io_control
-@end itemize
-
-@item Fatal Error Management
-
-@itemize
-@item rtems_fatal
-@item rtems_fatal_error_occurred
-@end itemize
-
-@item Multiprocessing
-
-@itemize
-@item rtems_multiprocessing_announce
-@end itemize
-@end itemize
-
-@section Directives
-
-This section details the interrupt manager's
-directives. A subsection is dedicated to each of this manager's
-directives and describes the calling sequence, related
-constants, usage, and status codes.
-
-@c
-@c
-@c
-@page
-@subsection INTERRUPT_CATCH - Establish an ISR
-
-@cindex establish an ISR
-@cindex install an ISR
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_interrupt_catch
-@example
-rtems_status_code rtems_interrupt_catch(
- rtems_isr_entry new_isr_handler,
- rtems_vector_number vector,
- rtems_isr_entry *old_isr_handler
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-NOT SUPPORTED FROM Ada BINDING
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - ISR established successfully@*
-@code{@value{RPREFIX}INVALID_NUMBER} - illegal vector number@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - illegal ISR entry point or invalid @code{old_isr_handler}
-
-@subheading DESCRIPTION:
-
-This directive establishes an interrupt service
-routine (ISR) for the specified interrupt vector number. The
-@code{new_isr_handler} parameter specifies the entry point of the ISR.
-The entry point of the previous ISR for the specified vector is
-returned in @code{old_isr_handler}.
-
-To release an interrupt vector, pass the old handler's address obtained
-when the vector was first capture.
-
-@subheading NOTES:
-
-This directive will not cause the calling task to be preempted.
-
-@c
-@c
-@c
-@page
-@subsection INTERRUPT_DISABLE - Disable Interrupts
-
-@cindex disable interrupts
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_interrupt_disable
-@example
-void rtems_interrupt_disable(
- rtems_interrupt_level level
-);
-
-/* this is implemented as a macro and sets level as a side-effect */
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-function Interrupt_Disable return RTEMS.ISR_Level;
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-NONE
-
-@subheading DESCRIPTION:
-
-This directive disables all maskable interrupts and returns
-the previous @code{level}. A later invocation of the
-@code{@value{DIRPREFIX}interrupt_enable} directive should be used to
-restore the interrupt level.
-
-@subheading NOTES:
-
-This directive will not cause the calling task to be preempted.
-
-@ifset is-C
-@b{This directive is implemented as a macro which modifies the @code{level}
-parameter.}
-@end ifset
-
-This directive is only available on uni-processor configurations. The
-directive @code{@value{DIRPREFIX}interrupt_local_disable} is available on all
-configurations.
-
-@c
-@c
-@c
-@page
-@subsection INTERRUPT_ENABLE - Enable Interrupts
-
-@cindex enable interrupts
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_interrupt_enable
-@example
-void rtems_interrupt_enable(
- rtems_interrupt_level level
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Interrupt_Enable (
- Level : in RTEMS.ISR_Level
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-NONE
-
-@subheading DESCRIPTION:
-
-This directive enables maskable interrupts to the @code{level}
-which was returned by a previous call to
-@code{@value{DIRPREFIX}interrupt_disable}.
-Immediately prior to invoking this directive, maskable interrupts should
-be disabled by a call to @code{@value{DIRPREFIX}interrupt_disable}
-and will be enabled when this directive returns to the caller.
-
-@subheading NOTES:
-
-This directive will not cause the calling task to be preempted.
-
-This directive is only available on uni-processor configurations. The
-directive @code{@value{DIRPREFIX}interrupt_local_enable} is available on all
-configurations.
-
-@c
-@c
-@c
-@page
-@subsection INTERRUPT_FLASH - Flash Interrupts
-
-@cindex flash interrupts
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_interrupt_flash
-@example
-void rtems_interrupt_flash(
- rtems_interrupt_level level
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Interrupt_Flash (
- Level : in RTEMS.ISR_Level
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-NONE
-
-@subheading DESCRIPTION:
-
-This directive temporarily enables maskable interrupts to the @code{level}
-which was returned by a previous call to
-@code{@value{DIRPREFIX}interrupt_disable}.
-Immediately prior to invoking this directive, maskable interrupts should
-be disabled by a call to @code{@value{DIRPREFIX}interrupt_disable}
-and will be redisabled when this directive returns to the caller.
-
-@subheading NOTES:
-
-This directive will not cause the calling task to be preempted.
-
-This directive is only available on uni-processor configurations. The
-directives @code{@value{DIRPREFIX}interrupt_local_disable} and
-@code{@value{DIRPREFIX}interrupt_local_enable} is available on all
-configurations.
-
-@c
-@c
-@c
-@page
-@subsection INTERRUPT_LOCAL_DISABLE - Disable Interrupts on Current Processor
-
-@cindex disable interrupts
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_interrupt_local_disable
-@example
-void rtems_interrupt_local_disable(
- rtems_interrupt_level level
-);
-
-/* this is implemented as a macro and sets level as a side-effect */
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-NONE
-
-@subheading DESCRIPTION:
-
-This directive disables all maskable interrupts and returns
-the previous @code{level}. A later invocation of the
-@code{@value{DIRPREFIX}interrupt_local_enable} directive should be used to
-restore the interrupt level.
-
-@subheading NOTES:
-
-This directive will not cause the calling task to be preempted.
-
-@ifset is-C
-@b{This directive is implemented as a macro which modifies the @code{level}
-parameter.}
-@end ifset
-
-On SMP configurations this will not ensure system wide mutual exclusion. Use
-interrupt locks instead.
-
-@c
-@c
-@c
-@page
-@subsection INTERRUPT_LOCAL_ENABLE - Enable Interrupts on Current Processor
-
-@cindex enable interrupts
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_interrupt_local_enable
-@example
-void rtems_interrupt_local_enable(
- rtems_interrupt_level level
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-NONE
-
-@subheading DESCRIPTION:
-
-This directive enables maskable interrupts to the @code{level}
-which was returned by a previous call to
-@code{@value{DIRPREFIX}interrupt_local_disable}.
-Immediately prior to invoking this directive, maskable interrupts should
-be disabled by a call to @code{@value{DIRPREFIX}interrupt_local_disable}
-and will be enabled when this directive returns to the caller.
-
-@subheading NOTES:
-
-This directive will not cause the calling task to be preempted.
-
-@c
-@c
-@c
-@page
-@subsection INTERRUPT_LOCK_INITIALIZE - Initialize an ISR Lock
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_interrupt_lock_initialize
-@example
-void rtems_interrupt_lock_initialize(
- rtems_interrupt_lock *lock
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-NONE
-
-@subheading DESCRIPTION:
-
-Initializes an interrupt lock.
-
-@subheading NOTES:
-
-Concurrent initialization leads to unpredictable results.
-
-@c
-@c
-@c
-@page
-@subsection INTERRUPT_LOCK_ACQUIRE - Acquire an ISR Lock
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_interrupt_lock_acquire
-@example
-void rtems_interrupt_lock_acquire(
- rtems_interrupt_lock *lock,
- rtems_interrupt_level level
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-NONE
-
-@subheading DESCRIPTION:
-
-Interrupts will be disabled. On SMP configurations this directive acquires a
-SMP lock.
-
-@subheading NOTES:
-
-This directive will not cause the calling thread to be preempted. This
-directive can be used in thread and interrupt context.
-
-@c
-@c
-@c
-@page
-@subsection INTERRUPT_LOCK_RELEASE - Release an ISR Lock
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_interrupt_lock_release
-@example
-void rtems_interrupt_lock_release(
- rtems_interrupt_lock *lock,
- rtems_interrupt_level level
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-NONE
-
-@subheading DESCRIPTION:
-
-The interrupt status will be restored. On SMP configurations this directive
-releases a SMP lock.
-
-@subheading NOTES:
-
-This directive will not cause the calling thread to be preempted. This
-directive can be used in thread and interrupt context.
-
-@c
-@c
-@c
-@page
-@subsection INTERRUPT_LOCK_ACQUIRE_ISR - Acquire an ISR Lock from ISR
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_interrupt_lock_acquire_isr
-@example
-void rtems_interrupt_lock_acquire_isr(
- rtems_interrupt_lock *lock,
- rtems_interrupt_level level
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-NONE
-
-@subheading DESCRIPTION:
-
-The interrupt status will remain unchanged. On SMP configurations this
-directive acquires a SMP lock.
-
-In case the corresponding interrupt service routine can be interrupted by
-higher priority interrupts and these interrupts enter the critical section
-protected by this lock, then the result is unpredictable.
-
-@subheading NOTES:
-
-This directive should be called from the corresponding interrupt service
-routine.
-
-@c
-@c
-@c
-@page
-@subsection INTERRUPT_LOCK_RELEASE_ISR - Release an ISR Lock from ISR
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_interrupt_lock_release_isr
-@example
-void rtems_interrupt_lock_release_isr(
- rtems_interrupt_lock *lock,
- rtems_interrupt_level level
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-NONE
-
-@subheading DESCRIPTION:
-
-The interrupt status will remain unchanged. On SMP configurations this
-directive releases a SMP lock.
-
-@subheading NOTES:
-
-This directive should be called from the corresponding interrupt service
-routine.
-
-@c
-@c
-@c
-@page
-@subsection INTERRUPT_IS_IN_PROGRESS - Is an ISR in Progress
-
-@cindex is interrupt in progress
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_interrupt_is_in_progress
-@example
-bool rtems_interrupt_is_in_progress( void );
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-function Interrupt_Is_In_Progress return RTEMS.Boolean;
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-NONE
-
-@subheading DESCRIPTION:
-
-This directive returns @code{TRUE} if the processor is currently
-servicing an interrupt and @code{FALSE} otherwise. A return value
-of @code{TRUE} indicates that the caller is an interrupt service
-routine, @b{NOT} a task. The directives available to an interrupt
-service routine are restricted.
-
-@subheading NOTES:
-
-This directive will not cause the calling task to be preempted.
-
diff --git a/doc/user/io.t b/doc/user/io.t
deleted file mode 100644
index ea0f4440c5..0000000000
--- a/doc/user/io.t
+++ /dev/null
@@ -1,742 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2008.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter I/O Manager
-
-@cindex device drivers
-@cindex IO Manager
-
-@section Introduction
-
-The input/output interface manager provides a
-well-defined mechanism for accessing device drivers and a
-structured methodology for organizing device drivers. The
-directives provided by the I/O manager are:
-
-@itemize @bullet
-@item @code{@value{DIRPREFIX}io_initialize} - Initialize a device driver
-@item @code{@value{DIRPREFIX}io_register_driver} - Register a device driver
-@item @code{@value{DIRPREFIX}io_unregister_driver} - Unregister a device driver
-@item @code{@value{DIRPREFIX}io_register_name} - Register a device name
-@item @code{@value{DIRPREFIX}io_lookup_name} - Look up a device name
-@item @code{@value{DIRPREFIX}io_open} - Open a device
-@item @code{@value{DIRPREFIX}io_close} - Close a device
-@item @code{@value{DIRPREFIX}io_read} - Read from a device
-@item @code{@value{DIRPREFIX}io_write} - Write to a device
-@item @code{@value{DIRPREFIX}io_control} - Special device services
-@end itemize
-
-@section Background
-
-@subsection Device Driver Table
-
-@cindex Device Driver Table
-
-Each application utilizing the RTEMS I/O manager must specify the
-address of a Device Driver Table in its Configuration Table. This table
-contains each device driver's entry points that is to be initialised by
-RTEMS during initialization. Each device driver may contain the
-following entry points:
-
-@itemize @bullet
-@item Initialization
-@item Open
-@item Close
-@item Read
-@item Write
-@item Control
-@end itemize
-
-If the device driver does not support a particular
-entry point, then that entry in the Configuration Table should
-be NULL. RTEMS will return
-@code{@value{RPREFIX}SUCCESSFUL} as the executive's and
-zero (0) as the device driver's return code for these device
-driver entry points.
-
-Applications can register and unregister drivers with the RTEMS I/O
-manager avoiding the need to have all drivers statically defined and
-linked into this table.
-
-The @file{confdefs.h} entry @code{CONFIGURE_MAXIMUM_DRIVERS} configures
-the number of driver slots available to the application.
-
-@subsection Major and Minor Device Numbers
-
-@cindex major device number
-@cindex minor device number
-
-Each call to the I/O manager must provide a device's
-major and minor numbers as arguments. The major number is the
-index of the requested driver's entry points in the Device
-Driver Table, and is used to select a specific device driver.
-The exact usage of the minor number is driver specific, but is
-commonly used to distinguish between a number of devices
-controlled by the same driver.
-
-@findex rtems_device_major_number
-@findex rtems_device_minor_number
-
-The data types @code{@value{DIRPREFIX}device_major_number} and
-@code{@value{DIRPREFIX}device_minor_number} are used to
-manipulate device major and minor numbers, respectively.
-
-@subsection Device Names
-
-@cindex device names
-
-The I/O Manager provides facilities to associate a
-name with a particular device. Directives are provided to
-register the name of a device and to look up the major/minor
-number pair associated with a device name.
-
-@subsection Device Driver Environment
-
-Application developers, as well as device driver
-developers, must be aware of the following regarding the RTEMS
-I/O Manager:
-
-@itemize @bullet
-@item A device driver routine executes in the context of the
-invoking task. Thus if the driver blocks, the invoking task
-blocks.
-
-@item The device driver is free to change the modes of the
-invoking task, although the driver should restore them to their
-original values.
-
-@item Device drivers may be invoked from ISRs.
-
-@item Only local device drivers are accessible through the I/O
-manager.
-
-@item A device driver routine may invoke all other RTEMS
-directives, including I/O directives, on both local and global
-objects.
-
-@end itemize
-
-Although the RTEMS I/O manager provides a framework
-for device drivers, it makes no assumptions regarding the
-construction or operation of a device driver.
-
-@subsection Runtime Driver Registration
-
-@cindex runtime driver registration
-
-Board support package and application developers can select wether a
-device driver is statically entered into the default device table or
-registered at runtime.
-
-Dynamic registration helps applications where:
-
-@enumerate
-@item The BSP and kernel libraries are common to a range of applications
-for a specific target platform. An application may be built upon a
-common library with all drivers. The application selects and registers
-the drivers. Uniform driver name lookup protects the application.
-@item The type and range of drivers may vary as the application probes a
-bus during initialization.
-@item Support for hot swap bus system such as Compact PCI.
-@item Support for runtime loadable driver modules.
-@end enumerate
-
-@subsection Device Driver Interface
-
-@cindex device driver interface
-
-When an application invokes an I/O manager directive,
-RTEMS determines which device driver entry point must be
-invoked. The information passed by the application to RTEMS is
-then passed to the correct device driver entry point. RTEMS
-will invoke each device driver entry point assuming it is
-compatible with the following prototype:
-
-@ifset is-C
-@example
-rtems_device_driver io_entry(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void *argument_block
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-function IO_Entry (
- Major : in RTEMS.Device_Major_Number;
- Minor : in RTEMS.Device_Major_Number;
- Argument_Block : in RTEMS.Address
-) return RTEMS.Status_Code;
-@end example
-@end ifset
-
-The format and contents of the parameter block are
-device driver and entry point dependent.
-
-It is recommended that a device driver avoid
-generating error codes which conflict with those used by
-application components. A common technique used to generate
-driver specific error codes is to make the most significant part
-of the status indicate a driver specific code.
-
-@subsection Device Driver Initialization
-
-RTEMS automatically initializes all device drivers
-when multitasking is initiated via the
-@code{@value{DIRPREFIX}initialize_executive}
-directive. RTEMS initializes the device drivers by invoking
-each device driver initialization entry point with the following
-parameters:
-
-@table @asis
-@item major
-the major device number for this device driver.
-
-@item minor
-zero.
-
-@item argument_block
-will point to the Configuration Table.
-
-@end table
-
-The returned status will be ignored by RTEMS. If the driver
-cannot successfully initialize the device, then it should invoke
-the fatal_error_occurred directive.
-
-@section Operations
-
-@subsection Register and Lookup Name
-
-The @code{@value{DIRPREFIX}io_register} directive associates a name with the
-specified device (i.e. major/minor number pair). Device names
-are typically registered as part of the device driver
-initialization sequence. The @code{@value{DIRPREFIX}io_lookup}
-directive is used to
-determine the major/minor number pair associated with the
-specified device name. The use of these directives frees the
-application from being dependent on the arbitrary assignment of
-major numbers in a particular application. No device naming
-conventions are dictated by RTEMS.
-
-@subsection Accessing an Device Driver
-
-The I/O manager provides directives which enable the
-application program to utilize device drivers in a standard
-manner. There is a direct correlation between the RTEMS I/O
-manager directives
-@code{@value{DIRPREFIX}io_initialize},
-@code{@value{DIRPREFIX}io_open},
-@code{@value{DIRPREFIX}io_close},
-@code{@value{DIRPREFIX}io_read},
-@code{@value{DIRPREFIX}io_write}, and
-@code{@value{DIRPREFIX}io_control}
-and the underlying device driver entry points.
-
-@section Directives
-
-This section details the I/O manager's directives. A
-subsection is dedicated to each of this manager's directives and
-describes the calling sequence, related constants, usage, and
-status codes.
-
-@c
-@c
-@c
-@page
-@subsection IO_REGISTER_DRIVER - Register a device driver
-
-@cindex register a device driver
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_io_register_driver
-@example
-rtems_status_code rtems_io_register_driver(
- rtems_device_major_number major,
- rtems_driver_address_table *driver_table,
- rtems_device_major_number *registered_major
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-No Ada implementation.
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - successfully registered@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - invalid registered major pointer@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - invalid driver table@*
-@code{@value{RPREFIX}INVALID_NUMBER} - invalid major device number@*
-@code{@value{RPREFIX}TOO_MANY} - no available major device table slot@*
-@code{@value{RPREFIX}RESOURCE_IN_USE} - major device number entry in use
-
-@subheading DESCRIPTION:
-
-This directive attempts to add a new device driver to the Device Driver
-Table. The user can specify a specific major device number via the
-directive's @code{major} parameter, or let the registration routine find
-the next available major device number by specifing a major number of
-@code{0}. The selected major device number is returned via the
-@code{registered_major} directive parameter. The directive automatically
-allocation major device numbers from the highest value down.
-
-This directive automatically invokes the IO_INITIALIZE directive if
-the driver address table has an initialization and open entry.
-
-The directive returns @value{RPREFIX}TOO_MANY if Device Driver Table is
-full, and @value{RPREFIX}RESOURCE_IN_USE if a specific major device
-number is requested and it is already in use.
-
-@subheading NOTES:
-
-The Device Driver Table size is specified in the Configuration Table
-condiguration. This needs to be set to maximum size the application
-requires.
-
-
-@c
-@c
-@c
-@page
-@subsection IO_UNREGISTER_DRIVER - Unregister a device driver
-
-@cindex unregister a device driver
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_io_unregister_driver
-@example
-rtems_status_code rtems_io_unregister_driver(
- rtems_device_major_number major
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-No Ada implementation.
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - successfully registered@*
-@code{@value{RPREFIX}INVALID_NUMBER} - invalid major device number
-
-@subheading DESCRIPTION:
-
-This directive removes a device driver from the Device Driver Table.
-
-@subheading NOTES:
-
-Currently no specific checks are made and the driver is not closed.
-
-
-@c
-@c
-@c
-@page
-@subsection IO_INITIALIZE - Initialize a device driver
-
-@cindex initialize a device driver
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_io_initialize
-@example
-rtems_status_code rtems_io_initialize(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void *argument
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure IO_Initialize (
- Major : in RTEMS.Device_Major_Number;
- Minor : in RTEMS.Device_Minor_Number;
- Argument : in RTEMS.Address;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - successfully initialized@*
-@code{@value{RPREFIX}INVALID_NUMBER} - invalid major device number
-
-@subheading DESCRIPTION:
-
-This directive calls the device driver initialization
-routine specified in the Device Driver Table for this major
-number. This directive is automatically invoked for each device
-driver when multitasking is initiated via the
-initialize_executive directive.
-
-A device driver initialization module is responsible
-for initializing all hardware and data structures associated
-with a device. If necessary, it can allocate memory to be used
-during other operations.
-
-@subheading NOTES:
-
-This directive may or may not cause the calling task
-to be preempted. This is dependent on the device driver being
-initialized.
-
-@c
-@c
-@c
-@page
-@subsection IO_REGISTER_NAME - Register a device
-
-@cindex register device
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_io_register_name
-@example
-rtems_status_code rtems_io_register_name(
- const char *name,
- rtems_device_major_number major,
- rtems_device_minor_number minor
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure IO_Register_Name (
- Name : in String;
- Major : in RTEMS.Device_Major_Number;
- Minor : in RTEMS.Device_Minor_Number;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - successfully initialized@*
-@code{@value{RPREFIX}TOO_MANY} - too many devices registered
-
-@subheading DESCRIPTION:
-
-This directive associates name with the specified
-major/minor number pair.
-
-@subheading NOTES:
-
-This directive will not cause the calling task to be
-preempted.
-
-@c
-@c
-@c
-@page
-@subsection IO_LOOKUP_NAME - Lookup a device
-
-@cindex lookup device major and minor number
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_io_lookup_name
-@example
-rtems_status_code rtems_io_lookup_name(
- const char *name,
- rtems_driver_name_t *device_info
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure IO_Lookup_Name (
- Name : in String;
- Device_Info : out RTEMS.Driver_Name_t_Pointer;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - successfully initialized@*
-@code{@value{RPREFIX}UNSATISFIED} - name not registered
-
-@subheading DESCRIPTION:
-
-This directive returns the major/minor number pair
-associated with the given device name in @code{device_info}.
-
-@subheading NOTES:
-
-This directive will not cause the calling task to be
-preempted.
-
-@c
-@c
-@c
-@page
-@subsection IO_OPEN - Open a device
-
-@cindex open a devive
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_io_open
-@example
-rtems_status_code rtems_io_open(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void *argument
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure IO_Open (
- Major : in RTEMS.Device_Major_Number;
- Minor : in RTEMS.Device_Minor_Number;
- Argument : in RTEMS.Address;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - successfully initialized@*
-@code{@value{RPREFIX}INVALID_NUMBER} - invalid major device number
-
-@subheading DESCRIPTION:
-
-This directive calls the device driver open routine
-specified in the Device Driver Table for this major number. The
-open entry point is commonly used by device drivers to provide
-exclusive access to a device.
-
-@subheading NOTES:
-
-This directive may or may not cause the calling task
-to be preempted. This is dependent on the device driver being
-invoked.
-
-@c
-@c
-@c
-@page
-@subsection IO_CLOSE - Close a device
-
-@cindex close a device
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_io_close
-@example
-rtems_status_code rtems_io_close(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void *argument
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure IO_Close (
- Major : in RTEMS.Device_Major_Number;
- Minor : in RTEMS.Device_Minor_Number;
- Argument : in RTEMS.Address;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - successfully initialized@*
-@code{@value{RPREFIX}INVALID_NUMBER} - invalid major device number
-
-@subheading DESCRIPTION:
-
-This directive calls the device driver close routine
-specified in the Device Driver Table for this major number. The
-close entry point is commonly used by device drivers to
-relinquish exclusive access to a device.
-
-@subheading NOTES:
-
-This directive may or may not cause the calling task
-to be preempted. This is dependent on the device driver being
-invoked.
-
-@c
-@c
-@c
-@page
-@subsection IO_READ - Read from a device
-
-@cindex read from a device
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_io_read
-@example
-rtems_status_code rtems_io_read(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void *argument
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure IO_Read (
- Major : in RTEMS.Device_Major_Number;
- Minor : in RTEMS.Device_Minor_Number;
- Argument : in RTEMS.Address;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - successfully initialized@*
-@code{@value{RPREFIX}INVALID_NUMBER} - invalid major device number
-
-@subheading DESCRIPTION:
-
-This directive calls the device driver read routine
-specified in the Device Driver Table for this major number.
-Read operations typically require a buffer address as part of
-the argument parameter block. The contents of this buffer will
-be replaced with data from the device.
-
-@subheading NOTES:
-
-This directive may or may not cause the calling task
-to be preempted. This is dependent on the device driver being
-invoked.
-
-@c
-@c
-@c
-@page
-@subsection IO_WRITE - Write to a device
-
-@cindex write to a device
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_io_write
-@example
-rtems_status_code rtems_io_write(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void *argument
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure IO_Write (
- Major : in RTEMS.Device_Major_Number;
- Minor : in RTEMS.Device_Minor_Number;
- Argument : in RTEMS.Address;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - successfully initialized@*
-@code{@value{RPREFIX}INVALID_NUMBER} - invalid major device number
-
-@subheading DESCRIPTION:
-
-This directive calls the device driver write routine
-specified in the Device Driver Table for this major number.
-Write operations typically require a buffer address as part of
-the argument parameter block. The contents of this buffer will
-be sent to the device.
-
-@subheading NOTES:
-
-This directive may or may not cause the calling task
-to be preempted. This is dependent on the device driver being
-invoked.
-
-@c
-@c
-@c
-@page
-@subsection IO_CONTROL - Special device services
-
-@cindex special device services
-@cindex IO Control
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_io_control
-@example
-rtems_status_code rtems_io_control(
- rtems_device_major_number major,
- rtems_device_minor_number minor,
- void *argument
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure IO_Control (
- Major : in RTEMS.Device_Major_Number;
- Minor : in RTEMS.Device_Minor_Number;
- Argument : in RTEMS.Address;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - successfully initialized@*
-@code{@value{RPREFIX}INVALID_NUMBER} - invalid major device number
-
-@subheading DESCRIPTION:
-
-This directive calls the device driver I/O control
-routine specified in the Device Driver Table for this major
-number. The exact functionality of the driver entry called by
-this directive is driver dependent. It should not be assumed
-that the control entries of two device drivers are compatible.
-For example, an RS-232 driver I/O control operation may change
-the baud rate of a serial line, while an I/O control operation
-for a floppy disk driver may cause a seek operation.
-
-@subheading NOTES:
-
-This directive may or may not cause the calling task
-to be preempted. This is dependent on the device driver being
-invoked.
-
-
-
diff --git a/doc/user/libpci.t b/doc/user/libpci.t
deleted file mode 100644
index bd56750e5e..0000000000
--- a/doc/user/libpci.t
+++ /dev/null
@@ -1,412 +0,0 @@
-@c
-@c COPYRIGHT (c) 2011,2015
-@c Aeroflex Gaisler AB
-@c All rights reserved.
-@c
-
-@chapter PCI Library
-
-@cindex libpci
-
-@section Introduction
-
-The Peripheral Component Interconnect (PCI) bus is a very common computer
-bus architecture that is found in almost every PC today. The PCI bus is
-normally located at the motherboard where some PCI devices are soldered
-directly onto the PCB and expansion slots allows the user to add custom
-devices easily. There is a wide range of PCI hardware available implementing
-all sorts of interfaces and functions.
-
-This section describes the PCI Library available in RTEMS used to access the
-PCI bus in a portable way across computer architectures supported by RTEMS.
-
-The PCI Library aims to be compatible with PCI 2.3 with a couple of
-limitations, for example there is no support for hot-plugging, 64-bit
-memory space and cardbus bridges.
-
-In order to support different architectures and with small foot-print embedded
-systems in mind the PCI Library offers four different configuration options
-listed below. It is selected during compile time by defining the appropriate
-macros in confdefs.h. It is also possible to enable PCI_LIB_NONE (No
-Configuration) which can be used for debuging PCI access functions.
-
-@itemize @bullet
-@item Auto Configuration (do Plug & Play)
-@item Read Configuration (read BIOS or boot loader configuration)
-@item Static Configuration (write user defined configuration)
-@item Peripheral Configuration (no access to cfg-space)
-@end itemize
-
-@section Background
-
-The PCI bus is constructed in a way where on-board devices and devices
-in expansion slots can be automatically found (probed) and configured
-using Plug & Play completely implemented in software. The bus is set up once
-during boot up. The Plug & Play information can be read and written from
-PCI configuration space. A PCI device is identified in configuration space by
-a unique bus, slot and function number. Each PCI slot can have up to 8
-functions and interface to another PCI sub-bus by implementing a PCI-to-PCI
-bridge according to the PCI Bridge Architecture specification.
-
-Using the unique [bus:slot:func] any device can be configured regardless of how
-PCI is currently set up as long as all PCI buses are enumerated correctly. The
-enumeration is done during probing, all bridges are given a bus number in
-order for the bridges to respond to accesses from both directions. The PCI
-library can assign address ranges to which a PCI device should respond using
-Plug & Play technique or a static user defined configuration. After the
-configuration has been performed the PCI device drivers can find devices by
-the read-only PCI Class type, Vendor ID and Device ID information found in
-configuration space for each device.
-
-In some systems there is a boot loader or BIOS which have already configured
-all PCI devices, but on embedded targets it is quite common that there is no
-BIOS or boot loader, thus RTEMS must configure the PCI bus. Only the PCI host
-may do configuration space access, the host driver or BSP is responsible to
-translate the [bus:slot:func] into a valid PCI configuration space access.
-
-If the target is not a host, but a peripheral, configuration space can not be
-accessed, the peripheral is set up by the host during start up. In complex
-embedded PCI systems the peripheral may need to access other PCI boards than
-the host. In such systems a custom (static) configuration of both the host
-and peripheral may be a convenient solution.
-
-The PCI bus defines four interrupt signals INTA#..INTD#. The interrupt signals
-must be mapped into a system interrupt/vector, it is up to the BSP or host
-driver to know the mapping, however the BIOS or boot loader may use the
-8-bit read/write "Interrupt Line" register to pass the knowledge along to the
-OS.
-
-The PCI standard defines and recommends that the backplane route the interupt
-lines in a systematic way, however in standard there is no such requirement.
-The PCI Auto Configuration Library implements the recommended way of routing
-which is very common but it is also supported to some extent to override the
-interrupt routing from the BSP or Host Bridge driver using the configuration
-structure.
-
-@subsection Software Components
-
-The PCI library is located in cpukit/libpci, it consists of different parts:
-@itemize @bullet
-@item PCI Host bridge driver interface
-@item Configuration routines
-@item Access (Configuration, I/O and Memory space) routines
-@item Interrupt routines (implemented by BSP)
-@item Print routines
-@item Static/peripheral configuration creation
-@item PCI shell command
-@end itemize
-
-@subsection PCI Configuration
-
-During start up the PCI bus must be configured in order for host and
-peripherals to access one another using Memory or I/O accesses and that
-interrupts are properly handled. Three different spaces are defined and
-mapped separately:
-
-@enumerate
-@item I/O space (IO)
-@item non-prefetchable Memory space (MEMIO)
-@item prefetchable Memory space (MEM)
-@end enumerate
-
-Regions of the same type (I/O or Memory) may not overlap which is guaranteed
-by the software. MEM regions may be mapped into MEMIO regions, but MEMIO
-regions can not be mapped into MEM, for that could lead to prefetching of
-registers. The interrupt pin which a board is driving can be read out from
-PCI configuration space, however it is up to software to know how interrupt
-signals are routed between PCI-to-PCI bridges and how PCI INT[A..D]# pins are
-mapped to system IRQ. In systems where previous software (boot loader or BIOS)
-has already set up this the configuration is overwritten or simply read out.
-
-In order to support different configuration methods the following configuration
-libraries are selectable by the user:
-
-@itemize @bullet
-@item Auto Configuration (run Plug & Play software)
-@item Read Configuration (relies on a boot loader or BIOS)
-@item Static Configuration (write user defined setup, no Plug & Play)
-@item Peripheral Configuration (user defined setup, no access to
-configuration space)
-@end itemize
-
-A host driver can be made to support all three configuration methods, or any
-combination. It may be defined by the BSP which approach is used.
-
-The configuration software is called from the PCI driver (pci_config_init()).
-
-Regardless of configuration method a PCI device tree is created in RAM during
-initialization, the tree can be accessed to find devices and resources without
-accessing configuration space later on. The user is responsible to create the
-device tree at compile time when using the static/peripheral method.
-
-
-@subsubsection RTEMS Configuration selection
-
-The active configuration method can be selected at compile time in the same
-way as other project parameters by including rtems/confdefs.h and setting
-
-@itemize @bullet
-@item CONFIGURE_INIT
-@item RTEMS_PCI_CONFIG_LIB
-@item CONFIGURE_PCI_LIB = PCI_LIB_(AUTO,STATIC,READ,PERIPHERAL)
-@end itemize
-
-See the RTEMS configuration section how to setup the PCI library.
-
-@subsubsection Auto Configuration
-
-The auto configuration software enumerates PCI buses and initializes all PCI
-devices found using Plug & Play. The auto configuration software requires
-that a configuration setup has been registered by the driver or BSP in order
-to setup the I/O and Memory regions at the correct address ranges. PCI
-interrupt pins can optionally be routed over PCI-to-PCI bridges and mapped
-to a system interrupt number. BAR resources are sorted by size and required
-alignment, unused "dead" space may be created when PCI bridges are present
-due to the PCI bridge window size does not equal the alignment. To cope with
-that resources are reordered to fit smaller BARs into the dead space to minimize
-the PCI space required. If a BAR or ROM register can not be allocated a PCI
-address region (due to too few resources available) the register will be given
-the value of pci_invalid_address which defaults to 0.
-
-The auto configuration routines support:
-
-@itemize @bullet
-@item PCI 2.3
-@item Little and big endian PCI bus
-@item one I/O 16 or 32-bit range (IO)
-@item memory space (MEMIO)
-@item prefetchable memory space (MEM), if not present MEM will be mapped into
- MEMIO
-@item multiple PCI buses - PCI-to-PCI bridges
-@item standard BARs, PCI-to-PCI bridge BARs, ROM BARs
-@item Interrupt routing over bridges
-@item Interrupt pin to system interrupt mapping
-@end itemize
-
-Not supported:
-
-@itemize @bullet
-@item hot-pluggable devices
-@item Cardbus bridges
-@item 64-bit memory space
-@item 16-bit and 32-bit I/O address ranges at the same time
-@end itemize
-
-In PCI 2.3 there may exist I/O BARs that must be located at the low 64kBytes
-address range, in order to support this the host driver or BSP must make sure
-that I/O addresses region is within this region.
-
-@subsubsection Read Configuration
-
-When a BIOS or boot loader already has setup the PCI bus the configuration can
-be read directly from the PCI resource registers and buses are already
-enumerated, this is a much simpler approach than configuring PCI ourselves. The
-PCI device tree is automatically created based on the current configuration and
-devices present. After initialization is done there is no difference between
-the auto or read configuration approaches.
-
-@subsubsection Static Configuration
-
-To support custom configurations and small-footprint PCI systems, the user may
-provide the PCI device tree which contains the current configuration. The
-PCI buses are enumerated and all resources are written to PCI devices during
-initialization. When this approach is selected PCI boards must be located at
-the same slots every time and devices can not be removed or added, Plug & Play
-is not performed. Boards of the same type may of course be exchanged.
-
-The user can create a configuration by calling pci_cfg_print() on a running
-system that has had PCI setup by the auto or read configuration routines, it
-can be called from the PCI shell command. The user must provide the PCI device
-tree named pci_hb.
-
-@subsubsection Peripheral Configuration
-
-On systems where a peripheral PCI device needs to access other PCI devices than
-the host the peripheral configuration approach may be handy. Most PCI devices
-answers on the PCI host's requests and start DMA accesses into the Hosts memory,
-however in some complex systems PCI devices may want to access other devices
-on the same bus or at another PCI bus.
-
-A PCI peripheral is not allowed to do PCI configuration cycles, which
-means that it must either rely on the host to give it the addresses it
-needs, or that the addresses are predefined.
-
-This configuration approach is very similar to the static option, however the
-configuration is never written to PCI bus, instead it is only used for drivers
-to find PCI devices and resources using the same PCI API as for the host
-
-
-@subsection PCI Access
-
-The PCI access routines are low-level routines provided for drivers,
-configuration software, etc. in order to access different regions in a way
-not dependent upon the host driver, BSP or platform.
-
-@itemize @bullet
-@item PCI configuration space
-@item PCI I/O space
-@item Registers over PCI memory space
-@item Translate PCI address into CPU accessible address and vice versa
-@end itemize
-
-By using the access routines drivers can be made portable over different
-architectures. The access routines take the architecture endianness into
-consideration and let the host driver or BSP implement I/O space and
-configuration space access.
-
-Some non-standard hardware may also define the PCI bus big-endian, for example
-the LEON2 AT697 PCI host bridge and some LEON3 systems may be configured that
-way. It is up to the BSP to set the appropriate PCI endianness on compile time
-(BSP_PCI_BIG_ENDIAN) in order for inline macros to be correctly defined.
-Another possibility is to use the function pointers defined by the access
-layer to implement drivers that support "run-time endianness detection".
-
-
-@subsubsection Configuration space
-
-Configuration space is accessed using the routines listed below. The
-pci_dev_t type is used to specify a specific PCI bus, device and function. It
-is up to the host driver or BSP to create a valid access to the requested
-PCI slot. Requests made to slots that are not supported by hardware should
-result in PCISTS_MSTABRT and/or data must be ignored (writes) or 0xffffffff
-is always returned (reads).
-
-@example
- /* Configuration Space Access Read Routines */
- extern int pci_cfg_r8(pci_dev_t dev, int ofs, uint8_t *data);
- extern int pci_cfg_r16(pci_dev_t dev, int ofs, uint16_t *data);
- extern int pci_cfg_r32(pci_dev_t dev, int ofs, uint32_t *data);
-
- /* Configuration Space Access Write Routines */
- extern int pci_cfg_w8(pci_dev_t dev, int ofs, uint8_t data);
- extern int pci_cfg_w16(pci_dev_t dev, int ofs, uint16_t data);
- extern int pci_cfg_w32(pci_dev_t dev, int ofs, uint32_t data);
-@end example
-
-
-@subsubsection I/O space
-
-The BSP or driver provide special routines in order to access I/O space. Some
-architectures have a special instruction accessing I/O space, others have it
-mapped into a "PCI I/O window" in the standard address space accessed by the
-CPU. The window size may vary and must be taken into consideration by the
-host driver. The below routines must be used to access I/O space. The address
-given to the functions is not the PCI I/O addresses, the caller must have
-translated PCI I/O addresses (available in the PCI BARs) into a BSP or host
-driver custom address, see @ref{PCI Library Access functions} for how
-addresses are translated.
-
-@example
-/* Read a register over PCI I/O Space */
-extern uint8_t pci_io_r8(uint32_t adr);
-extern uint16_t pci_io_r16(uint32_t adr);
-extern uint32_t pci_io_r32(uint32_t adr);
-
-/* Write a register over PCI I/O Space */
-extern void pci_io_w8(uint32_t adr, uint8_t data);
-extern void pci_io_w16(uint32_t adr, uint16_t data);
-extern void pci_io_w32(uint32_t adr, uint32_t data);
-@end example
-
-
-@subsubsection Registers over Memory space
-
-PCI host bridge hardware normally swap data accesses into the endianness of the
-host architecture in order to lower the load of the CPU, peripherals can do DMA
-without swapping. However, the host controller can not separate a standard
-memory access from a memory access to a register, registers may be mapped into
-memory space. This leads to register content being swapped, which must be
-swapped back. The below routines makes it possible to access registers over PCI
-memory space in a portable way on different architectures, the BSP or
-architecture must provide necessary functions in order to implement this.
-
-@example
- static inline uint16_t pci_ld_le16(volatile uint16_t *addr);
- static inline void pci_st_le16(volatile uint16_t *addr, uint16_t val);
- static inline uint32_t pci_ld_le32(volatile uint32_t *addr);
- static inline void pci_st_le32(volatile uint32_t *addr, uint32_t val);
- static inline uint16_t pci_ld_be16(volatile uint16_t *addr);
- static inline void pci_st_be16(volatile uint16_t *addr, uint16_t val);
- static inline uint32_t pci_ld_be32(volatile uint32_t *addr);
- static inline void pci_st_be32(volatile uint32_t *addr, uint32_t val);
-@end example
-
-In order to support non-standard big-endian PCI bus the above pci_* functions
-is required, pci_ld_le16 != ld_le16 on big endian PCI buses.
-
-
-@subsubsection Access functions
-
-The PCI Access Library can provide device drivers with function pointers
-executing the above Configuration, I/O and Memory space accesses. The
-functions have the same arguments and return values as the above
-functions.
-
-The pci_access_func() function defined below can be used to get a function
-pointer of a specific access type.
-
-@example
- /* Get Read/Write function for accessing a register over PCI Memory Space
- * (non-inline functions).
- *
- * Arguments
- * wr 0(Read), 1(Write)
- * size 1(Byte), 2(Word), 4(Double Word)
- * func Where function pointer will be stored
- * endian PCI_LITTLE_ENDIAN or PCI_BIG_ENDIAN
- * type 1(I/O), 3(REG over MEM), 4(CFG)
- *
- * Return
- * 0 Found function
- * others No such function defined by host driver or BSP
- */
- int pci_access_func(int wr, int size, void **func, int endian, int type);
-@end example
-
-PCI device drivers may be written to support run-time detection of endianess,
-this is mosly for debugging or for development systems. When the product is
-finally deployed macros switch to using the inline functions instead which
-have been configured for the correct endianness.
-
-
-@subsubsection PCI address translation
-
-When PCI addresses, both I/O and memory space, is not mapped 1:1 address
-translation before access is needed. If drivers read the PCI resources directly
-using configuration space routines or in the device tree, the addresses given
-are PCI addresses. The below functions can be used to translate PCI addresses
-into CPU accessible addresses or vice versa, translation may be different for
-different PCI spaces/regions.
-
-@example
- /* Translate PCI address into CPU accessible address */
- static inline int pci_pci2cpu(uint32_t *address, int type);
-
- /* Translate CPU accessible address into PCI address (for DMA) */
- static inline int pci_cpu2pci(uint32_t *address, int type);
-@end example
-
-@subsection PCI Interrupt
-
-The PCI specification defines four different interrupt lines INTA#..INTD#,
-the interrupts are low level sensitive which make it possible to support
-multiple interrupt sources on the same interrupt line. Since the lines are
-level sensitive the interrupt sources must be acknowledged before clearing the
-interrupt contoller, or the interrupt controller must be masked. The BSP must
-provide a routine for clearing/acknowledging the interrupt controller, it is
-up to the interrupt service routine to acknowledge the interrupt source.
-
-The PCI Library relies on the BSP for implementing shared interrupt handling
-through the BSP_PCI_shared_interrupt_* functions/macros, they must be defined
-when including bsp.h.
-
-PCI device drivers may use the pci_interrupt_ routines in order to call the
-BSP specific functions in a platform independent way. The PCI interrupt
-interface has been made similar to the RTEMS IRQ extension so that a BSP can
-use the standard RTEMS interrupt functions directly.
-
-@subsection PCI Shell command
-
-The RTEMS shell has a PCI command 'pci' which makes it possible to read/write
-configuration space, print the current PCI configuration and print out a
-configuration C-file for the static or peripheral library.
diff --git a/doc/user/linkersets.t b/doc/user/linkersets.t
deleted file mode 100644
index 9d1abda513..0000000000
--- a/doc/user/linkersets.t
+++ /dev/null
@@ -1,421 +0,0 @@
-@c
-@c Copyright 2015 embedded brains GmbH
-@c All rights reserved.
-
-@chapter Linker Sets
-
-@cindex linkersets
-
-@section Introduction
-
-Linker sets are a flexible means to create arrays of items out of a set of
-object files at link-time. For example its possible to define an item @emph{I}
-of type @emph{T} in object file @emph{A} and an item @emph{J} of type @emph{T}
-in object file @emph{B} to be a member of a linker set @emph{S}. The linker
-will then collect these two items @emph{I} and @emph{J} and place them in
-consecutive memory locations, so that they can be accessed like a normal array
-defined in one object file. The size of a linker set is defined by its begin
-and end markers. A linker set may be empty. It should only contain items of
-the same type.
-
-The following macros are provided to create, populate and use linker sets.
-
-@itemize @bullet
-@item @code{RTEMS_LINKER_SET_BEGIN} - Designator of the linker set begin marker
-@item @code{RTEMS_LINKER_SET_END} - Designator of the linker set end marker
-@item @code{RTEMS_LINKER_SET_SIZE} - The linker set size in characters
-@item @code{RTEMS_LINKER_ROSET_DECLARE} - Declares a read-only linker set
-@item @code{RTEMS_LINKER_ROSET} - Defines a read-only linker set
-@item @code{RTEMS_LINKER_ROSET_ITEM_DECLARE} - Declares a read-only linker set item
-@item @code{RTEMS_LINKER_ROSET_ITEM_REFERENCE} - References a read-only linker set item
-@item @code{RTEMS_LINKER_ROSET_ITEM} - Defines a read-only linker set item
-@item @code{RTEMS_LINKER_ROSET_ITEM_ORDERED} - Defines an ordered read-only linker set item
-@item @code{RTEMS_LINKER_RWSET_DECLARE} - Declares a read-write linker set
-@item @code{RTEMS_LINKER_RWSET} - Defines a read-write linker set
-@item @code{RTEMS_LINKER_RWSET_ITEM_DECLARE} - Declares a read-write linker set item
-@item @code{RTEMS_LINKER_RWSET_ITEM_REFERENCE} - References a read-write linker set item
-@item @code{RTEMS_LINKER_RWSET_ITEM} - Defines a read-write linker set item
-@item @code{RTEMS_LINKER_RWSET_ITEM_ORDERED} - Defines an ordered read-write linker set item
-@end itemize
-
-@section Background
-
-Linker sets are used not only in RTEMS, but also for example in Linux, in
-FreeBSD, for the GNU C constructor extension and for global C++ constructors.
-They provide a space efficient and flexible means to initialize modules. A
-linker set consists of
-@itemize @bullet
-@item dedicated input sections for the linker (e.g. @code{.ctors} and
-@code{.ctors.*} in the case of global constructors),
-@item a begin marker (e.g. provided by @code{crtbegin.o}, and
-@item an end marker (e.g. provided by @code{ctrend.o}).
-@end itemize
-A module may place a certain data item into the dedicated input section. The
-linker will collect all such data items in this section and creates a begin and
-end marker. The initialization code can then use the begin and end markers to
-find all the collected data items (e.g. pointers to initialization functions).
-
-In the linker command file of the GNU linker we need the following output
-section descriptions.
-@example
-@group
-/* To be placed in a read-only memory region */
-.rtemsroset : @{
- KEEP (*(SORT(.rtemsroset.*)))
-@}
-
-/* To be placed in a read-write memory region */
-.rtemsrwset : @{
- KEEP (*(SORT(.rtemsrwset.*)))
-@}
-@end group
-@end example
-The @code{KEEP()} ensures that a garbage collection by the linker will not
-discard the content of this section. This would normally be the case since the
-linker set items are not referenced directly. The @code{SORT()} directive
-sorts the input sections lexicographically. Please note the lexicographical
-order of the @code{.begin}, @code{.content} and @code{.end} section name parts
-in the RTEMS linker sets macros which ensures that the position of the begin
-and end markers are right.
-
-So, what is the benefit of using linker sets to initialize modules? It can be
-used to initialize and include only those RTEMS managers and other components
-which are used by the application. For example, in case an application uses
-message queues, it must call @code{rtems_message_queue_create()}. In the
-module implementing this function, we can place a linker set item and register
-the message queue handler constructor. Otherwise, in case the application does
-not use message queues, there will be no reference to the
-@code{rtems_message_queue_create()} function and the constructor is not
-registered, thus nothing of the message queue handler will be in the final
-executable.
-
-For an example see test program @file{sptests/splinkersets01}.
-
-@section Directives
-
-@macro linkersetsset
-The @code{set} parameter itself must be a valid C designator on which no macro
-expansion is performed. It uniquely identifies the linker set.
-@end macro
-
-@macro linkersetstype
-The @code{type} parameter defines the type of the linker set items. The type
-must be the same for all macro invocations of a particular linker set.
-@end macro
-
-@macro linkersetsitem
-The @code{item} parameter itself must be a valid C designator on which no macro
-expansion is performed. It uniquely identifies an item in the linker set.
-@end macro
-
-@macro linkersetsorder
-The @code{order} parameter must be a valid linker input section name part on
-which macro expansion is performed. The items are lexicographically ordered
-according to the @code{order} parameter within a linker set. Ordered items are
-placed before unordered items in the linker set.
-@end macro
-
-@page
-
-@subsection RTEMS_LINKER_SET_BEGIN - Designator of the linker set begin marker
-
-@subheading CALLING SEQUENCE:
-
-@findex RTEMS_LINKER_SET_BEGIN
-@example
-volatile type *begin = RTEMS_LINKER_SET_BEGIN( set );
-@end example
-
-@subheading DESCRIPTION:
-
-This macro generates the designator of the begin marker of the linker set
-identified by @code{set}. The item at the begin marker address is the first
-member of the linker set if it exists, e.g. the linker set is not empty. A
-linker set is empty, if and only if the begin and end markers have the same
-address.
-@linkersetsset
-
-@page
-
-@subsection RTEMS_LINKER_SET_END - Designator of the linker set end marker
-
-@subheading CALLING SEQUENCE:
-
-@findex RTEMS_LINKER_SET_END
-@example
-volatile type *end = RTEMS_LINKER_SET_END( set );
-@end example
-
-@subheading DESCRIPTION:
-
-This macro generates the designator of the end marker of the linker set
-identified by @code{set}. The item at the end marker address is not a member
-of the linker set. @linkersetsset
-
-@page
-
-@subsection RTEMS_LINKER_SET_SIZE - The linker set size in characters
-
-@subheading CALLING SEQUENCE:
-
-@findex RTEMS_LINKER_SET_SIZE
-@example
-size_t size = RTEMS_LINKER_SET_SIZE( set );
-@end example
-
-@subheading DESCRIPTION:
-
-This macro returns the size of the linker set identified by @code{set} in
-characters. @linkersetsset
-
-@page
-
-@subsection RTEMS_LINKER_ROSET_DECLARE - Declares a read-only linker set
-
-@subheading CALLING SEQUENCE:
-
-@findex RTEMS_LINKER_ROSET_DECLARE
-@example
-RTEMS_LINKER_ROSET_DECLARE( set, type );
-@end example
-
-@subheading DESCRIPTION:
-
-This macro generates declarations for the begin and end markers of a read-only
-linker set identified by @code{set}. @linkersetsset @linkersetstype
-
-@page
-
-@subsection RTEMS_LINKER_ROSET - Defines a read-only linker set
-
-@subheading CALLING SEQUENCE:
-
-@findex RTEMS_LINKER_ROSET
-@example
-RTEMS_LINKER_ROSET( set, type );
-@end example
-
-@subheading DESCRIPTION:
-
-This macro generates definitions for the begin and end markers of a read-only
-linker set identified by @code{set}. @linkersetsset @linkersetstype
-
-@page
-
-@subsection RTEMS_LINKER_ROSET_ITEM_DECLARE - Declares a read-only linker set item
-
-@subheading CALLING SEQUENCE:
-
-@findex RTEMS_LINKER_ROSET_ITEM_DECLARE
-@example
-RTEMS_LINKER_ROSET_ITEM_DECLARE( set, type, item );
-@end example
-
-@subheading DESCRIPTION:
-
-This macro generates a declaration of an item contained in the read-only linker
-set identified by @code{set}. @linkersetsset @linkersetstype @linkersetsitem
-
-@page
-
-@subsection RTEMS_LINKER_ROSET_ITEM_REFERENCE - References a read-only linker set item
-
-@subheading CALLING SEQUENCE:
-
-@findex RTEMS_LINKER_ROSET_ITEM_REFERENCE
-@example
-RTEMS_LINKER_ROSET_ITEM_REFERENCE( set, type, item );
-@end example
-
-@subheading DESCRIPTION:
-
-This macro generates a reference to an item contained in the read-only linker set
-identified by @code{set}. @linkersetsset @linkersetstype @linkersetsitem
-
-@page
-
-@subsection RTEMS_LINKER_ROSET_ITEM - Defines a read-only linker set item
-
-@subheading CALLING SEQUENCE:
-
-@findex RTEMS_LINKER_ROSET_ITEM
-@example
-RTEMS_LINKER_ROSET_ITEM( set, type, item );
-@end example
-
-@subheading DESCRIPTION:
-
-This macro generates a definition of an item contained in the read-only linker set
-identified by @code{set}. @linkersetsset @linkersetstype @linkersetsitem
-
-@page
-
-@subsection RTEMS_LINKER_ROSET_ITEM_ORDERED - Defines an ordered read-only linker set item
-
-@subheading CALLING SEQUENCE:
-
-@findex RTEMS_LINKER_ROSET_ITEM_ORDERED
-@example
-RTEMS_LINKER_ROSET_ITEM_ORDERED( set, type, item, order );
-@end example
-
-@subheading DESCRIPTION:
-
-This macro generates a definition of an ordered item contained in the read-only
-linker set identified by @code{set}. @linkersetsset @linkersetstype
-@linkersetsitem @linkersetsorder
-
-@subheading NOTES:
-
-To be resilient to typos in the order parameter, it is recommended to use the
-following construct in macros defining items for a particular linker set (see
-enum in @code{XYZ_ITEM()}).
-
-@example
-#include <rtems/linkersets.h>
-
-typedef struct @{
- int foo;
-@} xyz_item;
-
-/* The XYZ-order defines */
-#define XYZ_ORDER_FIRST 0x00001000
-#define XYZ_ORDER_AND_SO_ON 0x00002000
-
-/* Defines an ordered XYZ-item */
-#define XYZ_ITEM( item, order ) \
- enum @{ xyz_##item = order - order @}; \
- RTEMS_LINKER_ROSET_ITEM_ORDERED( \
- xyz, const xyz_item *, item, order \
- ) = @{ &item @}
-
-/* Example item */
-static const xyz_item some_item = @{ 123 @};
-XYZ_ITEM( some_item, XYZ_ORDER_FIRST );
-@end example
-
-@page
-
-@subsection RTEMS_LINKER_RWSET_DECLARE - Declares a read-write linker set
-
-@subheading CALLING SEQUENCE:
-
-@findex RTEMS_LINKER_RWSET_DECLARE
-@example
-RTEMS_LINKER_RWSET_DECLARE( set, type );
-@end example
-
-@subheading DESCRIPTION:
-
-This macro generates declarations for the begin and end markers of a read-write
-linker set identified by @code{set}. @linkersetsset @linkersetstype
-
-@page
-
-@subsection RTEMS_LINKER_RWSET - Defines a read-write linker set
-
-@subheading CALLING SEQUENCE:
-
-@findex RTEMS_LINKER_RWSET
-@example
-RTEMS_LINKER_RWSET( set, type );
-@end example
-
-@subheading DESCRIPTION:
-
-This macro generates definitions for the begin and end markers of a read-write
-linker set identified by @code{set}. @linkersetsset @linkersetstype
-
-@page
-
-@subsection RTEMS_LINKER_RWSET_ITEM_DECLARE - Declares a read-write linker set item
-
-@subheading CALLING SEQUENCE:
-
-@findex RTEMS_LINKER_RWSET_ITEM_DECLARE
-@example
-RTEMS_LINKER_RWSET_ITEM_DECLARE( set, type, item );
-@end example
-
-@subheading DESCRIPTION:
-
-This macro generates a declaration of an item contained in the read-write linker
-set identified by @code{set}. @linkersetsset @linkersetstype @linkersetsitem
-
-@page
-
-@subsection RTEMS_LINKER_RWSET_ITEM_REFERENCE - References a read-write linker set item
-
-@subheading CALLING SEQUENCE:
-
-@findex RTEMS_LINKER_RWSET_ITEM_REFERENCE
-@example
-RTEMS_LINKER_RWSET_ITEM_REFERENCE( set, type, item );
-@end example
-
-@subheading DESCRIPTION:
-
-This macro generates a reference to an item contained in the read-write linker set
-identified by @code{set}. @linkersetsset @linkersetstype @linkersetsitem
-
-@page
-
-@subsection RTEMS_LINKER_RWSET_ITEM - Defines a read-write linker set item
-
-@subheading CALLING SEQUENCE:
-
-@findex RTEMS_LINKER_RWSET_ITEM
-@example
-RTEMS_LINKER_RWSET_ITEM( set, type, item );
-@end example
-
-@subheading DESCRIPTION:
-
-This macro generates a definition of an item contained in the read-write linker set
-identified by @code{set}. @linkersetsset @linkersetstype @linkersetsitem
-
-@page
-
-@subsection RTEMS_LINKER_RWSET_ITEM_ORDERED - Defines an ordered read-write linker set item
-
-@subheading CALLING SEQUENCE:
-
-@findex RTEMS_LINKER_RWSET_ITEM_ORDERED
-@example
-RTEMS_LINKER_RWSET_ITEM_ORDERED( set, type, item, order );
-@end example
-
-@subheading DESCRIPTION:
-
-This macro generates a definition of an ordered item contained in the read-write
-linker set identified by @code{set}. @linkersetsset @linkersetstype
-@linkersetsitem @linkersetsorder
-
-@subheading NOTES:
-
-To be resilient to typos in the order parameter, it is recommended to use the
-following construct in macros defining items for a particular linker set (see
-enum in @code{XYZ_ITEM()}).
-
-@example
-#include <rtems/linkersets.h>
-
-typedef struct @{
- int foo;
-@} xyz_item;
-
-/* The XYZ-order defines */
-#define XYZ_ORDER_FIRST 0x00001000
-#define XYZ_ORDER_AND_SO_ON 0x00002000
-
-/* Defines an ordered XYZ-item */
-#define XYZ_ITEM( item, order ) \
- enum @{ xyz_##item = order - order @}; \
- RTEMS_LINKER_RWSET_ITEM_ORDERED( \
- xyz, const xyz_item *, item, order \
- ) = @{ &item @}
-
-/* Example item */
-static const xyz_item some_item = @{ 123 @};
-XYZ_ITEM( some_item, XYZ_ORDER_FIRST );
-@end example
diff --git a/doc/user/mp.t b/doc/user/mp.t
deleted file mode 100644
index f2600f842d..0000000000
--- a/doc/user/mp.t
+++ /dev/null
@@ -1,570 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2007.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Multiprocessing Manager
-
-@cindex multiprocessing
-
-@section Introduction
-
-In multiprocessor real-time systems, new
-requirements, such as sharing data and global resources between
-processors, are introduced. This requires an efficient and
-reliable communications vehicle which allows all processors to
-communicate with each other as necessary. In addition, the
-ramifications of multiple processors affect each and every
-characteristic of a real-time system, almost always making them
-more complicated.
-
-RTEMS addresses these issues by providing simple and
-flexible real-time multiprocessing capabilities. The executive
-easily lends itself to both tightly-coupled and loosely-coupled
-configurations of the target system hardware. In addition,
-RTEMS supports systems composed of both homogeneous and
-heterogeneous mixtures of processors and target boards.
-
-A major design goal of the RTEMS executive was to
-transcend the physical boundaries of the target hardware
-configuration. This goal is achieved by presenting the
-application software with a logical view of the target system
-where the boundaries between processor nodes are transparent.
-As a result, the application developer may designate objects
-such as tasks, queues, events, signals, semaphores, and memory
-blocks as global objects. These global objects may then be
-accessed by any task regardless of the physical location of the
-object and the accessing task. RTEMS automatically determines
-that the object being accessed resides on another processor and
-performs the actions required to access the desired object.
-Simply stated, RTEMS allows the entire system, both hardware and
-software, to be viewed logically as a single system.
-
-@ifset is-Ada
-Multiprocessing operations are transparent at the application level.
-Operations on remote objects are implicitly processed as remote
-procedure calls. Although remote operations on objects are supported
-from Ada tasks, the calls used to support the multiprocessing
-communications should be implemented in C and are not supported
-in the Ada binding. Since there is no Ada binding for RTEMS
-multiprocessing support services, all examples and data structures
-shown in this chapter are in C.
-@end ifset
-
-@section Background
-
-@cindex multiprocessing topologies
-
-RTEMS makes no assumptions regarding the connection
-media or topology of a multiprocessor system. The tasks which
-compose a particular application can be spread among as many
-processors as needed to satisfy the application's timing
-requirements. The application tasks can interact using a subset
-of the RTEMS directives as if they were on the same processor.
-These directives allow application tasks to exchange data,
-communicate, and synchronize regardless of which processor they
-reside upon.
-
-The RTEMS multiprocessor execution model is multiple
-instruction streams with multiple data streams (MIMD). This
-execution model has each of the processors executing code
-independent of the other processors. Because of this
-parallelism, the application designer can more easily guarantee
-deterministic behavior.
-
-By supporting heterogeneous environments, RTEMS
-allows the systems designer to select the most efficient
-processor for each subsystem of the application. Configuring
-RTEMS for a heterogeneous environment is no more difficult than
-for a homogeneous one. In keeping with RTEMS philosophy of
-providing transparent physical node boundaries, the minimal
-heterogeneous processing required is isolated in the MPCI layer.
-
-@subsection Nodes
-
-@cindex nodes, definition
-
-A processor in a RTEMS system is referred to as a
-node. Each node is assigned a unique non-zero node number by
-the application designer. RTEMS assumes that node numbers are
-assigned consecutively from one to the @code{maximum_nodes}
-configuration parameter. The node
-number, node, and the maximum number of nodes, maximum_nodes, in
-a system are found in the Multiprocessor Configuration Table.
-The maximum_nodes field and the number of global objects,
-maximum_global_objects, is required to be the same on all nodes
-in a system.
-
-The node number is used by RTEMS to identify each
-node when performing remote operations. Thus, the
-Multiprocessor Communications Interface Layer (MPCI) must be
-able to route messages based on the node number.
-
-@subsection Global Objects
-
-@cindex global objects, definition
-
-All RTEMS objects which are created with the GLOBAL
-attribute will be known on all other nodes. Global objects can
-be referenced from any node in the system, although certain
-directive specific restrictions (e.g. one cannot delete a remote
-object) may apply. A task does not have to be global to perform
-operations involving remote objects. The maximum number of
-global objects is the system is user configurable and can be
-found in the maximum_global_objects field in the Multiprocessor
-Configuration Table. The distribution of tasks to processors is
-performed during the application design phase. Dynamic task
-relocation is not supported by RTEMS.
-
-@subsection Global Object Table
-
-@cindex global objects table
-
-RTEMS maintains two tables containing object
-information on every node in a multiprocessor system: a local
-object table and a global object table. The local object table
-on each node is unique and contains information for all objects
-created on this node whether those objects are local or global.
-The global object table contains information regarding all
-global objects in the system and, consequently, is the same on
-every node.
-
-Since each node must maintain an identical copy of
-the global object table, the maximum number of entries in each
-copy of the table must be the same. The maximum number of
-entries in each copy is determined by the
-maximum_global_objects parameter in the Multiprocessor
-Configuration Table. This parameter, as well as the
-maximum_nodes parameter, is required to be the same on all
-nodes. To maintain consistency among the table copies, every
-node in the system must be informed of the creation or deletion
-of a global object.
-
-@subsection Remote Operations
-
-@cindex MPCI and remote operations
-
-When an application performs an operation on a remote
-global object, RTEMS must generate a Remote Request (RQ) message
-and send it to the appropriate node. After completing the
-requested operation, the remote node will build a Remote
-Response (RR) message and send it to the originating node.
-Messages generated as a side-effect of a directive (such as
-deleting a global task) are known as Remote Processes (RP) and
-do not require the receiving node to respond.
-
-Other than taking slightly longer to execute
-directives on remote objects, the application is unaware of the
-location of the objects it acts upon. The exact amount of
-overhead required for a remote operation is dependent on the
-media connecting the nodes and, to a lesser degree, on the
-efficiency of the user-provided MPCI routines.
-
-The following shows the typical transaction sequence
-during a remote application:
-
-@enumerate
-
-@item The application issues a directive accessing a
-remote global object.
-
-@item RTEMS determines the node on which the object
-resides.
-
-@item RTEMS calls the user-provided MPCI routine
-GET_PACKET to obtain a packet in which to build a RQ message.
-
-@item After building a message packet, RTEMS calls the
-user-provided MPCI routine SEND_PACKET to transmit the packet to
-the node on which the object resides (referred to as the
-destination node).
-
-@item The calling task is blocked until the RR message
-arrives, and control of the processor is transferred to another
-task.
-
-@item The MPCI layer on the destination node senses the
-arrival of a packet (commonly in an ISR), and calls the
-@code{rtems_multiprocessing_announce}
-directive. This directive readies the Multiprocessing Server.
-
-@item The Multiprocessing Server calls the user-provided
-MPCI routine RECEIVE_PACKET, performs the requested operation,
-builds an RR message, and returns it to the originating node.
-
-@item The MPCI layer on the originating node senses the
-arrival of a packet (typically via an interrupt), and calls the RTEMS
-@code{rtems_multiprocessing_announce} directive. This directive
-readies the Multiprocessing Server.
-
-@item The Multiprocessing Server calls the user-provided
-MPCI routine RECEIVE_PACKET, readies the original requesting
-task, and blocks until another packet arrives. Control is
-transferred to the original task which then completes processing
-of the directive.
-
-@end enumerate
-
-If an uncorrectable error occurs in the user-provided
-MPCI layer, the fatal error handler should be invoked. RTEMS
-assumes the reliable transmission and reception of messages by
-the MPCI and makes no attempt to detect or correct errors.
-
-@subsection Proxies
-
-@cindex proxy, definition
-
-A proxy is an RTEMS data structure which resides on a
-remote node and is used to represent a task which must block as
-part of a remote operation. This action can occur as part of the
-@code{@value{DIRPREFIX}semaphore_obtain} and
-@code{@value{DIRPREFIX}message_queue_receive} directives. If the
-object were local, the task's control block would be available
-for modification to indicate it was blocking on a message queue
-or semaphore. However, the task's control block resides only on
-the same node as the task. As a result, the remote node must
-allocate a proxy to represent the task until it can be readied.
-
-The maximum number of proxies is defined in the
-Multiprocessor Configuration Table. Each node in a
-multiprocessor system may require a different number of proxies
-to be configured. The distribution of proxy control blocks is
-application dependent and is different from the distribution of
-tasks.
-
-@subsection Multiprocessor Configuration Table
-
-The Multiprocessor Configuration Table contains
-information needed by RTEMS when used in a multiprocessor
-system. This table is discussed in detail in the section
-Multiprocessor Configuration Table of the Configuring a System
-chapter.
-
-@section Multiprocessor Communications Interface Layer
-
-The Multiprocessor Communications Interface Layer
-(MPCI) is a set of user-provided procedures which enable the
-nodes in a multiprocessor system to communicate with one
-another. These routines are invoked by RTEMS at various times
-in the preparation and processing of remote requests.
-Interrupts are enabled when an MPCI procedure is invoked. It is
-assumed that if the execution mode and/or interrupt level are
-altered by the MPCI layer, that they will be restored prior to
-returning to RTEMS.
-
-@cindex MPCI, definition
-
-The MPCI layer is responsible for managing a pool of
-buffers called packets and for sending these packets between
-system nodes. Packet buffers contain the messages sent between
-the nodes. Typically, the MPCI layer will encapsulate the
-packet within an envelope which contains the information needed
-by the MPCI layer. The number of packets available is dependent
-on the MPCI layer implementation.
-
-@cindex MPCI entry points
-
-The entry points to the routines in the user's MPCI
-layer should be placed in the Multiprocessor Communications
-Interface Table. The user must provide entry points for each of
-the following table entries in a multiprocessor system:
-
-@itemize @bullet
-@item initialization initialize the MPCI
-@item get_packet obtain a packet buffer
-@item return_packet return a packet buffer
-@item send_packet send a packet to another node
-@item receive_packet called to get an arrived packet
-@end itemize
-
-A packet is sent by RTEMS in each of the following situations:
-
-@itemize @bullet
-@item an RQ is generated on an originating node;
-@item an RR is generated on a destination node;
-@item a global object is created;
-@item a global object is deleted;
-@item a local task blocked on a remote object is deleted;
-@item during system initialization to check for system consistency.
-@end itemize
-
-If the target hardware supports it, the arrival of a
-packet at a node may generate an interrupt. Otherwise, the
-real-time clock ISR can check for the arrival of a packet. In
-any case, the
-@code{rtems_multiprocessing_announce} directive must be called
-to announce the arrival of a packet. After exiting the ISR,
-control will be passed to the Multiprocessing Server to process
-the packet. The Multiprocessing Server will call the get_packet
-entry to obtain a packet buffer and the receive_entry entry to
-copy the message into the buffer obtained.
-
-@subsection INITIALIZATION
-
-The INITIALIZATION component of the user-provided
-MPCI layer is called as part of the @code{rtems_initialize_executive}
-directive to initialize the MPCI layer and associated hardware.
-It is invoked immediately after all of the device drivers have
-been initialized. This component should be adhere to the
-following prototype:
-
-@findex rtems_mpci_entry
-@example
-@group
-rtems_mpci_entry user_mpci_initialization(
- rtems_configuration_table *configuration
-);
-@end group
-@end example
-
-where configuration is the address of the user's
-Configuration Table. Operations on global objects cannot be
-performed until this component is invoked. The INITIALIZATION
-component is invoked only once in the life of any system. If
-the MPCI layer cannot be successfully initialized, the fatal
-error manager should be invoked by this routine.
-
-One of the primary functions of the MPCI layer is to
-provide the executive with packet buffers. The INITIALIZATION
-routine must create and initialize a pool of packet buffers.
-There must be enough packet buffers so RTEMS can obtain one
-whenever needed.
-
-@subsection GET_PACKET
-
-The GET_PACKET component of the user-provided MPCI
-layer is called when RTEMS must obtain a packet buffer to send
-or broadcast a message. This component should be adhere to the
-following prototype:
-
-@example
-@group
-rtems_mpci_entry user_mpci_get_packet(
- rtems_packet_prefix **packet
-);
-@end group
-@end example
-
-where packet is the address of a pointer to a packet.
-This routine always succeeds and, upon return, packet will
-contain the address of a packet. If for any reason, a packet
-cannot be successfully obtained, then the fatal error manager
-should be invoked.
-
-RTEMS has been optimized to avoid the need for
-obtaining a packet each time a message is sent or broadcast.
-For example, RTEMS sends response messages (RR) back to the
-originator in the same packet in which the request message (RQ)
-arrived.
-
-@subsection RETURN_PACKET
-
-The RETURN_PACKET component of the user-provided MPCI
-layer is called when RTEMS needs to release a packet to the free
-packet buffer pool. This component should be adhere to the
-following prototype:
-
-@example
-@group
-rtems_mpci_entry user_mpci_return_packet(
- rtems_packet_prefix *packet
-);
-@end group
-@end example
-
-where packet is the address of a packet. If the
-packet cannot be successfully returned, the fatal error manager
-should be invoked.
-
-@subsection RECEIVE_PACKET
-
-The RECEIVE_PACKET component of the user-provided
-MPCI layer is called when RTEMS needs to obtain a packet which
-has previously arrived. This component should be adhere to the
-following prototype:
-
-@example
-@group
-rtems_mpci_entry user_mpci_receive_packet(
- rtems_packet_prefix **packet
-);
-@end group
-@end example
-
-where packet is a pointer to the address of a packet
-to place the message from another node. If a message is
-available, then packet will contain the address of the message
-from another node. If no messages are available, this entry
-packet should contain NULL.
-
-@subsection SEND_PACKET
-
-The SEND_PACKET component of the user-provided MPCI
-layer is called when RTEMS needs to send a packet containing a
-message to another node. This component should be adhere to the
-following prototype:
-
-@example
-@group
-rtems_mpci_entry user_mpci_send_packet(
- uint32_t node,
- rtems_packet_prefix **packet
-);
-@end group
-@end example
-
-where node is the node number of the destination and packet is the
-address of a packet which containing a message. If the packet cannot
-be successfully sent, the fatal error manager should be invoked.
-
-If node is set to zero, the packet is to be
-broadcasted to all other nodes in the system. Although some
-MPCI layers will be built upon hardware which support a
-broadcast mechanism, others may be required to generate a copy
-of the packet for each node in the system.
-
-@c XXX packet_prefix structure needs to be defined in this document
-Many MPCI layers use the @code{packet_length} field of the
-@code{rtems_packet_prefix} portion
-of the packet to avoid sending unnecessary data. This is especially
-useful if the media connecting the nodes is relatively slow.
-
-The @code{to_convert} field of the @code{rtems_packet_prefix} portion of the
-packet indicates how much of the packet in 32-bit units may require conversion
-in a heterogeneous system.
-
-@subsection Supporting Heterogeneous Environments
-
-@cindex heterogeneous multiprocessing
-
-Developing an MPCI layer for a heterogeneous system
-requires a thorough understanding of the differences between the
-processors which comprise the system. One difficult problem is
-the varying data representation schemes used by different
-processor types. The most pervasive data representation problem
-is the order of the bytes which compose a data entity.
-Processors which place the least significant byte at the
-smallest address are classified as little endian processors.
-Little endian byte-ordering is shown below:
-
-
-@example
-@group
-+---------------+----------------+---------------+----------------+
-| | | | |
-| Byte 3 | Byte 2 | Byte 1 | Byte 0 |
-| | | | |
-+---------------+----------------+---------------+----------------+
-@end group
-@end example
-
-Conversely, processors which place the most
-significant byte at the smallest address are classified as big
-endian processors. Big endian byte-ordering is shown below:
-
-@example
-@group
-+---------------+----------------+---------------+----------------+
-| | | | |
-| Byte 0 | Byte 1 | Byte 2 | Byte 3 |
-| | | | |
-+---------------+----------------+---------------+----------------+
-@end group
-@end example
-
-Unfortunately, sharing a data structure between big
-endian and little endian processors requires translation into a
-common endian format. An application designer typically chooses
-the common endian format to minimize conversion overhead.
-
-Another issue in the design of shared data structures
-is the alignment of data structure elements. Alignment is both
-processor and compiler implementation dependent. For example,
-some processors allow data elements to begin on any address
-boundary, while others impose restrictions. Common restrictions
-are that data elements must begin on either an even address or
-on a long word boundary. Violation of these restrictions may
-cause an exception or impose a performance penalty.
-
-Other issues which commonly impact the design of
-shared data structures include the representation of floating
-point numbers, bit fields, decimal data, and character strings.
-In addition, the representation method for negative integers
-could be one's or two's complement. These factors combine to
-increase the complexity of designing and manipulating data
-structures shared between processors.
-
-RTEMS addressed these issues in the design of the
-packets used to communicate between nodes. The RTEMS packet
-format is designed to allow the MPCI layer to perform all
-necessary conversion without burdening the developer with the
-details of the RTEMS packet format. As a result, the MPCI layer
-must be aware of the following:
-
-@itemize @bullet
-@item All packets must begin on a four byte boundary.
-
-@item Packets are composed of both RTEMS and application data. All RTEMS data
-is treated as 32-bit unsigned quantities and is in the first @code{to_convert}
-32-bit quantities of the packet. The @code{to_convert} field is part of the
-@code{rtems_packet_prefix} portion of the packet.
-
-@item The RTEMS data component of the packet must be in native
-endian format. Endian conversion may be performed by either the
-sending or receiving MPCI layer.
-
-@item RTEMS makes no assumptions regarding the application
-data component of the packet.
-@end itemize
-
-@section Operations
-
-@subsection Announcing a Packet
-
-The @code{rtems_multiprocessing_announce} directive is called by
-the MPCI layer to inform RTEMS that a packet has arrived from
-another node. This directive can be called from an interrupt
-service routine or from within a polling routine.
-
-@section Directives
-
-This section details the additional directives
-required to support RTEMS in a multiprocessor configuration. A
-subsection is dedicated to each of this manager's directives and
-describes the calling sequence, related constants, usage, and
-status codes.
-
-@c
-@c
-@c
-@page
-@subsection MULTIPROCESSING_ANNOUNCE - Announce the arrival of a packet
-
-@cindex announce arrival of package
-
-@subheading CALLING SEQUENCE:
-
-@findex rtems_multiprocessing_announce
-@example
-void rtems_multiprocessing_announce( void );
-@end example
-
-@subheading DIRECTIVE STATUS CODES:
-
-NONE
-
-@subheading DESCRIPTION:
-
-This directive informs RTEMS that a multiprocessing
-communications packet has arrived from another node. This
-directive is called by the user-provided MPCI, and is only used
-in multiprocessor configurations.
-
-@subheading NOTES:
-
-This directive is typically called from an ISR.
-
-This directive will almost certainly cause the
-calling task to be preempted.
-
-This directive does not generate activity on remote nodes.
diff --git a/doc/user/msg.t b/doc/user/msg.t
deleted file mode 100644
index eb3cb3561a..0000000000
--- a/doc/user/msg.t
+++ /dev/null
@@ -1,836 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Message Manager
-
-@cindex messages
-@cindex message queues
-
-@section Introduction
-
-The message manager provides communication and
-synchronization capabilities using RTEMS message queues. The
-directives provided by the message manager are:
-
-@itemize @bullet
-@item @code{@value{DIRPREFIX}message_queue_create} - Create a queue
-@item @code{@value{DIRPREFIX}message_queue_ident} - Get ID of a queue
-@item @code{@value{DIRPREFIX}message_queue_delete} - Delete a queue
-@item @code{@value{DIRPREFIX}message_queue_send} - Put message at rear of a queue
-@item @code{@value{DIRPREFIX}message_queue_urgent} - Put message at front of a queue
-@item @code{@value{DIRPREFIX}message_queue_broadcast} - Broadcast N messages to a queue
-@item @code{@value{DIRPREFIX}message_queue_receive} - Receive message from a queue
-@item @code{@value{DIRPREFIX}message_queue_get_number_pending} - Get number of messages pending on a queue
-@item @code{@value{DIRPREFIX}message_queue_flush} - Flush all messages on a queue
-@end itemize
-
-@section Background
-
-@subsection Messages
-
-A message is a variable length buffer where
-information can be stored to support communication. The length
-of the message and the information stored in that message are
-user-defined and can be actual data, pointer(s), or empty.
-
-@subsection Message Queues
-
-A message queue permits the passing of messages among
-tasks and ISRs. Message queues can contain a variable number of
-messages. Normally messages are sent to and received from the
-queue in FIFO order using the @code{@value{DIRPREFIX}message_queue_send}
-directive. However, the @code{@value{DIRPREFIX}message_queue_urgent}
-directive can be used to place
-messages at the head of a queue in LIFO order.
-
-Synchronization can be accomplished when a task can
-wait for a message to arrive at a queue. Also, a task may poll
-a queue for the arrival of a message.
-
-The maximum length message which can be sent is set
-on a per message queue basis. The message content must be copied in general
-to/from an internal buffer of the message queue or directly to a peer in
-certain cases. This copy operation is performed with interrupts disabled. So
-it is advisable to keep the messages as short as possible.
-
-@subsection Building a Message Queue Attribute Set
-
-@cindex message queue attributes
-
-In general, an attribute set is built by a bitwise OR
-of the desired attribute components. The set of valid message
-queue attributes is provided in the following table:
-
-@itemize @bullet
-@item @code{@value{RPREFIX}FIFO} - tasks wait by FIFO (default)
-@item @code{@value{RPREFIX}PRIORITY} - tasks wait by priority
-@item @code{@value{RPREFIX}LOCAL} - local message queue (default)
-@item @code{@value{RPREFIX}GLOBAL} - global message queue
-@end itemize
-
-
-An attribute listed as a default is not required to
-appear in the attribute list, although it is a good programming
-practice to specify default attributes. If all defaults are
-desired, the attribute @code{@value{RPREFIX}DEFAULT_ATTRIBUTES}
-should be specified on this call.
-
-This example demonstrates the attribute_set parameter
-needed to create a local message queue with the task priority
-waiting queue discipline. The attribute_set parameter to the
-@code{@value{DIRPREFIX}message_queue_create} directive could be either
-@code{@value{RPREFIX}PRIORITY} or
-@code{@value{RPREFIX}LOCAL @value{OR} @value{RPREFIX}PRIORITY}.
-The attribute_set parameter can be set to @code{@value{RPREFIX}PRIORITY}
-because @code{@value{RPREFIX}LOCAL} is the default for all created
-message queues. If a similar message queue were to be known globally, then the
-attribute_set parameter would be
-@code{@value{RPREFIX}GLOBAL @value{OR} @value{RPREFIX}PRIORITY}.
-
-@subsection Building a MESSAGE_QUEUE_RECEIVE Option Set
-
-In general, an option is built by a bitwise OR of the
-desired option components. The set of valid options for the
-@code{@value{DIRPREFIX}message_queue_receive} directive are
-listed in the following table:
-
-@itemize @bullet
-@item @code{@value{RPREFIX}WAIT} - task will wait for a message (default)
-@item @code{@value{RPREFIX}NO_WAIT} - task should not wait
-@end itemize
-
-An option listed as a default is not required to
-appear in the option OR list, although it is a good programming
-practice to specify default options. If all defaults are
-desired, the option @code{@value{RPREFIX}DEFAULT_OPTIONS} should
-be specified on this call.
-
-This example demonstrates the option parameter needed
-to poll for a message to arrive. The option parameter passed to
-the @code{@value{DIRPREFIX}message_queue_receive} directive should
-be @code{@value{RPREFIX}NO_WAIT}.
-
-@section Operations
-
-@subsection Creating a Message Queue
-
-The @code{@value{DIRPREFIX}message_queue_create} directive creates a message
-queue with the user-defined name. The user specifies the
-maximum message size and maximum number of messages which can be
-placed in the message queue at one time. The user may select
-FIFO or task priority as the method for placing waiting tasks in
-the task wait queue. RTEMS allocates a Queue Control Block
-(QCB) from the QCB free list to maintain the newly created queue
-as well as memory for the message buffer pool associated with
-this message queue. RTEMS also generates a message queue ID
-which is returned to the calling task.
-
-For GLOBAL message queues, the maximum message size
-is effectively limited to the longest message which the MPCI is
-capable of transmitting.
-
-@subsection Obtaining Message Queue IDs
-
-When a message queue is created, RTEMS generates a
-unique message queue ID. The message queue ID may be obtained
-by either of two methods. First, as the result of an invocation
-of the @code{@value{DIRPREFIX}message_queue_create} directive, the
-queue ID is stored in a user provided location. Second, the queue
-ID may be obtained later using the @code{@value{DIRPREFIX}message_queue_ident}
-directive. The queue ID is used by other message manager
-directives to access this message queue.
-
-@subsection Receiving a Message
-
-The @code{@value{DIRPREFIX}message_queue_receive} directive attempts to
-retrieve a message from the specified message queue. If at
-least one message is in the queue, then the message is removed
-from the queue, copied to the caller's message buffer, and
-returned immediately along with the length of the message. When
-messages are unavailable, one of the following situations
-applies:
-
-@itemize @bullet
-@item By default, the calling task will wait forever for the
-message to arrive.
-
-@item Specifying the @code{@value{RPREFIX}NO_WAIT} option forces an immediate return
-with an error status code.
-
-@item Specifying a timeout limits the period the task will
-wait before returning with an error status.
-@end itemize
-
-If the task waits for a message, then it is placed in
-the message queue's task wait queue in either FIFO or task
-priority order. All tasks waiting on a message queue are
-returned an error code when the message queue is deleted.
-
-@subsection Sending a Message
-
-Messages can be sent to a queue with the
-@code{@value{DIRPREFIX}message_queue_send} and
-@code{@value{DIRPREFIX}message_queue_urgent} directives. These
-directives work identically when tasks are waiting to receive a
-message. A task is removed from the task waiting queue,
-unblocked, and the message is copied to a waiting task's
-message buffer.
-
-When no tasks are waiting at the queue,
-@code{@value{DIRPREFIX}message_queue_send} places the
-message at the rear of the message queue, while
-@code{@value{DIRPREFIX}message_queue_urgent} places the message at the
-front of the queue. The message is copied to a message buffer
-from this message queue's buffer pool and then placed in the
-message queue. Neither directive can successfully send a
-message to a message queue which has a full queue of pending
-messages.
-
-@subsection Broadcasting a Message
-
-The @code{@value{DIRPREFIX}message_queue_broadcast} directive sends the same
-message to every task waiting on the specified message queue as
-an atomic operation. The message is copied to each waiting
-task's message buffer and each task is unblocked. The number of
-tasks which were unblocked is returned to the caller.
-
-@subsection Deleting a Message Queue
-
-The @code{@value{DIRPREFIX}message_queue_delete} directive removes a message
-queue from the system and frees its control block as well as the
-memory associated with this message queue's message buffer pool.
-A message queue can be deleted by any local task that knows the
-message queue's ID. As a result of this directive, all tasks
-blocked waiting to receive a message from the message queue will
-be readied and returned a status code which indicates that the
-message queue was deleted. Any subsequent references to the
-message queue's name and ID are invalid. Any messages waiting
-at the message queue are also deleted and deallocated.
-
-@section Directives
-
-This section details the message manager's
-directives. A subsection is dedicated to each of this manager's
-directives and describes the calling sequence, related
-constants, usage, and status codes.
-
-@c
-@c
-@c
-@page
-@subsection MESSAGE_QUEUE_CREATE - Create a queue
-
-@cindex create a message queue
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_message_queue_create
-@example
-rtems_status_code rtems_message_queue_create(
- rtems_name name,
- uint32_t count,
- size_t max_message_size,
- rtems_attribute attribute_set,
- rtems_id *id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Message_Queue_Create (
- Name : in RTEMS.Name;
- Count : in RTEMS.Unsigned32;
- Max_Message_Size : in RTEMS.Unsigned32;
- Attribute_Set : in RTEMS.Attribute;
- ID : out RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - queue created successfully@*
-@code{@value{RPREFIX}INVALID_NAME} - invalid queue name@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{id} is NULL@*
-@code{@value{RPREFIX}INVALID_NUMBER} - invalid message count@*
-@code{@value{RPREFIX}INVALID_SIZE} - invalid message size@*
-@code{@value{RPREFIX}TOO_MANY} - too many queues created@*
-@code{@value{RPREFIX}UNSATISFIED} - unable to allocate message buffers@*
-@code{@value{RPREFIX}MP_NOT_CONFIGURED} - multiprocessing not configured@*
-@code{@value{RPREFIX}TOO_MANY} - too many global objects
-
-@subheading DESCRIPTION:
-
-This directive creates a message queue which resides
-on the local node with the user-defined name specified in name.
-For control and maintenance of the queue, RTEMS allocates and
-initializes a QCB. Memory is allocated from the RTEMS Workspace
-for the specified count of messages, each of max_message_size
-bytes in length. The RTEMS-assigned queue id, returned in id,
-is used to access the message queue.
-
-Specifying @code{@value{RPREFIX}PRIORITY} in attribute_set causes tasks
-waiting for a message to be serviced according to task priority.
-When @code{@value{RPREFIX}FIFO} is specified, waiting tasks are serviced
-in First In-First Out order.
-
-@subheading NOTES:
-
-This directive will not cause the calling task to be
-preempted.
-
-The following message queue attribute constants are
-defined by RTEMS:
-
-@itemize @bullet
-@item @code{@value{RPREFIX}FIFO} - tasks wait by FIFO (default)
-@item @code{@value{RPREFIX}PRIORITY} - tasks wait by priority
-@item @code{@value{RPREFIX}LOCAL} - local message queue (default)
-@item @code{@value{RPREFIX}GLOBAL} - global message queue
-@end itemize
-
-Message queues should not be made global unless
-remote tasks must interact with the created message queue. This
-is to avoid the system overhead incurred by the creation of a
-global message queue. When a global message queue is created,
-the message queue's name and id must be transmitted to every
-node in the system for insertion in the local copy of the global
-object table.
-
-For GLOBAL message queues, the maximum message size
-is effectively limited to the longest message which the MPCI is
-capable of transmitting.
-
-The total number of global objects, including message
-queues, is limited by the maximum_global_objects field in the
-configuration table.
-
-@c
-@c
-@c
-@page
-@subsection MESSAGE_QUEUE_IDENT - Get ID of a queue
-
-@cindex get ID of a message queue
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_message_queue_ident
-@example
-rtems_status_code rtems_message_queue_ident(
- rtems_name name,
- uint32_t node,
- rtems_id *id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Message_Queue_Ident (
- Name : in RTEMS.Name;
- Node : in RTEMS.Unsigned32;
- ID : out RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - queue identified successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{id} is NULL@*
-@code{@value{RPREFIX}INVALID_NAME} - queue name not found@*
-@code{@value{RPREFIX}INVALID_NODE} - invalid node id
-
-@subheading DESCRIPTION:
-
-This directive obtains the queue id associated with
-the queue name specified in name. If the queue name is not
-unique, then the queue id will match one of the queues with that
-name. However, this queue id is not guaranteed to correspond to
-the desired queue. The queue id is used with other message
-related directives to access the message queue.
-
-@subheading NOTES:
-
-This directive will not cause the running task to be
-preempted.
-
-If node is @code{@value{RPREFIX}SEARCH_ALL_NODES}, all nodes are searched
-with the local node being searched first. All other nodes are
-searched with the lowest numbered node searched first.
-
-If node is a valid node number which does not
-represent the local node, then only the message queues exported
-by the designated node are searched.
-
-This directive does not generate activity on remote
-nodes. It accesses only the local copy of the global object
-table.
-
-@c
-@c
-@c
-@page
-@subsection MESSAGE_QUEUE_DELETE - Delete a queue
-
-@cindex delete a message queue
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_message_queue_delete
-@example
-rtems_status_code rtems_message_queue_delete(
- rtems_id id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Message_Queue_Delete (
- ID : in RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - queue deleted successfully@*
-@code{@value{RPREFIX}INVALID_ID} - invalid queue id@*
-@code{@value{RPREFIX}ILLEGAL_ON_REMOTE_OBJECT} - cannot delete remote queue
-
-@subheading DESCRIPTION:
-
-This directive deletes the message queue specified by
-id. As a result of this directive, all tasks blocked waiting to
-receive a message from this queue will be readied and returned a
-status code which indicates that the message queue was deleted.
-If no tasks are waiting, but the queue contains messages, then
-RTEMS returns these message buffers back to the system message
-buffer pool. The QCB for this queue as well as the memory for
-the message buffers is reclaimed by RTEMS.
-
-@subheading NOTES:
-
-The calling task will be preempted if its preemption
-mode is enabled and one or more local tasks with a higher
-priority than the calling task are waiting on the deleted queue.
-The calling task will NOT be preempted if the tasks that are
-waiting are remote tasks.
-
-The calling task does not have to be the task that
-created the queue, although the task and queue must reside on
-the same node.
-
-When the queue is deleted, any messages in the queue
-are returned to the free message buffer pool. Any information
-stored in those messages is lost.
-
-When a global message queue is deleted, the message
-queue id must be transmitted to every node in the system for
-deletion from the local copy of the global object table.
-
-Proxies, used to represent remote tasks, are
-reclaimed when the message queue is deleted.
-
-@c
-@c
-@c
-@page
-@subsection MESSAGE_QUEUE_SEND - Put message at rear of a queue
-
-@cindex send message to a queue
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_message_queue_send
-@example
-rtems_status_code rtems_message_queue_send(
- rtems_id id,
- cons void *buffer,
- size_t size
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Message_Queue_Send (
- ID : in RTEMS.ID;
- Buffer : in RTEMS.Address;
- Size : in RTEMS.Unsigned32;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - message sent successfully@*
-@code{@value{RPREFIX}INVALID_ID} - invalid queue id@*
-@code{@value{RPREFIX}INVALID_SIZE} - invalid message size@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{buffer} is NULL@*
-@code{@value{RPREFIX}UNSATISFIED} - out of message buffers@*
-@code{@value{RPREFIX}TOO_MANY} - queue's limit has been reached
-
-@subheading DESCRIPTION:
-
-This directive sends the message buffer of size bytes
-in length to the queue specified by id. If a task is waiting at
-the queue, then the message is copied to the waiting task's
-buffer and the task is unblocked. If no tasks are waiting at the
-queue, then the message is copied to a message buffer which is
-obtained from this message queue's message buffer pool. The
-message buffer is then placed at the rear of the queue.
-
-@subheading NOTES:
-
-The calling task will be preempted if it has
-preemption enabled and a higher priority task is unblocked as
-the result of this directive.
-
-Sending a message to a global message queue which
-does not reside on the local node will generate a request to the
-remote node to post the message on the specified message queue.
-
-If the task to be unblocked resides on a different
-node from the message queue, then the message is forwarded to
-the appropriate node, the waiting task is unblocked, and the
-proxy used to represent the task is reclaimed.
-
-@c
-@c
-@c
-@page
-@subsection MESSAGE_QUEUE_URGENT - Put message at front of a queue
-
-@cindex put message at front of queue
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_message_queue_urgent
-@example
-rtems_status_code rtems_message_queue_urgent(
- rtems_id id,
- const void *buffer,
- size_t size
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Message_Queue_Urgent (
- ID : in RTEMS.ID;
- Buffer : in RTEMS.Address;
- Size : in RTEMS.Unsigned32;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - message sent successfully@*
-@code{@value{RPREFIX}INVALID_ID} - invalid queue id@*
-@code{@value{RPREFIX}INVALID_SIZE} - invalid message size@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{buffer} is NULL@*
-@code{@value{RPREFIX}UNSATISFIED} - out of message buffers@*
-@code{@value{RPREFIX}TOO_MANY} - queue's limit has been reached
-
-@subheading DESCRIPTION:
-
-This directive sends the message buffer of size bytes
-in length to the queue specified by id. If a task is waiting on
-the queue, then the message is copied to the task's buffer and
-the task is unblocked. If no tasks are waiting on the queue,
-then the message is copied to a message buffer which is obtained
-from this message queue's message buffer pool. The message
-buffer is then placed at the front of the queue.
-
-@subheading NOTES:
-
-The calling task will be preempted if it has
-preemption enabled and a higher priority task is unblocked as
-the result of this directive.
-
-Sending a message to a global message queue which
-does not reside on the local node will generate a request
-telling the remote node to post the message on the specified
-message queue.
-
-If the task to be unblocked resides on a different
-node from the message queue, then the message is forwarded to
-the appropriate node, the waiting task is unblocked, and the
-proxy used to represent the task is reclaimed.
-
-@c
-@c
-@c
-@page
-@subsection MESSAGE_QUEUE_BROADCAST - Broadcast N messages to a queue
-
-@cindex broadcast message to a queue
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_message_queue_broadcast
-@example
-rtems_status_code rtems_message_queue_broadcast(
- rtems_id id,
- const void *buffer,
- size_t size,
- uint32_t *count
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Message_Queue_Broadcast (
- ID : in RTEMS.ID;
- Buffer : in RTEMS.Address;
- Size : in RTEMS.Unsigned32;
- Count : out RTEMS.Unsigned32;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - message broadcasted successfully@*
-@code{@value{RPREFIX}INVALID_ID} - invalid queue id@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{buffer} is NULL@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{count} is NULL@*
-@code{@value{RPREFIX}INVALID_SIZE} - invalid message size
-
-@subheading DESCRIPTION:
-
-This directive causes all tasks that are waiting at
-the queue specified by id to be unblocked and sent the message
-contained in buffer. Before a task is unblocked, the message
-buffer of size byes in length is copied to that task's message
-buffer. The number of tasks that were unblocked is returned in
-count.
-
-@subheading NOTES:
-
-The calling task will be preempted if it has
-preemption enabled and a higher priority task is unblocked as
-the result of this directive.
-
-The execution time of this directive is directly
-related to the number of tasks waiting on the message queue,
-although it is more efficient than the equivalent number of
-invocations of @code{@value{DIRPREFIX}message_queue_send}.
-
-Broadcasting a message to a global message queue
-which does not reside on the local node will generate a request
-telling the remote node to broadcast the message to the
-specified message queue.
-
-When a task is unblocked which resides on a different
-node from the message queue, a copy of the message is forwarded
-to the appropriate node, the waiting task is unblocked, and the
-proxy used to represent the task is reclaimed.
-
-@c
-@c
-@c
-@page
-@subsection MESSAGE_QUEUE_RECEIVE - Receive message from a queue
-
-@cindex receive message from a queue
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_message_queue_receive
-@example
-rtems_status_code rtems_message_queue_receive(
- rtems_id id,
- void *buffer,
- size_t *size,
- rtems_option option_set,
- rtems_interval timeout
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Message_Queue_Receive (
- ID : in RTEMS.ID;
- Buffer : in RTEMS.Address;
- Option_Set : in RTEMS.Option;
- Timeout : in RTEMS.Interval;
- Size : out RTEMS.Unsigned32;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - message received successfully@*
-@code{@value{RPREFIX}INVALID_ID} - invalid queue id@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{buffer} is NULL@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{size} is NULL@*
-@code{@value{RPREFIX}UNSATISFIED} - queue is empty@*
-@code{@value{RPREFIX}TIMEOUT} - timed out waiting for message@*
-@code{@value{RPREFIX}OBJECT_WAS_DELETED} - queue deleted while waiting
-
-@subheading DESCRIPTION:
-
-This directive receives a message from the message
-queue specified in id. The @code{@value{RPREFIX}WAIT} and @code{@value{RPREFIX}NO_WAIT} options of the
-options parameter allow the calling task to specify whether to
-wait for a message to become available or return immediately.
-For either option, if there is at least one message in the
-queue, then it is copied to buffer, size is set to return the
-length of the message in bytes, and this directive returns
-immediately with a successful return code. The buffer has to be big enough to
-receive a message of the maximum length with respect to this message queue.
-
-If the calling task chooses to return immediately and
-the queue is empty, then a status code indicating this condition
-is returned. If the calling task chooses to wait at the message
-queue and the queue is empty, then the calling task is placed on
-the message wait queue and blocked. If the queue was created
-with the @code{@value{RPREFIX}PRIORITY} option specified, then
-the calling task is inserted into the wait queue according to
-its priority. But, if the queue was created with the
-@code{@value{RPREFIX}FIFO} option specified, then the
-calling task is placed at the rear of the wait queue.
-
-A task choosing to wait at the queue can optionally
-specify a timeout value in the timeout parameter. The timeout
-parameter specifies the maximum interval to wait before the
-calling task desires to be unblocked. If it is set to
-@code{@value{RPREFIX}NO_TIMEOUT}, then the calling task will wait forever.
-
-@subheading NOTES:
-
-The following message receive option constants are
-defined by RTEMS:
-
-@itemize @bullet
-@item @code{@value{RPREFIX}WAIT} - task will wait for a message (default)
-@item @code{@value{RPREFIX}NO_WAIT} - task should not wait
-@end itemize
-
-Receiving a message from a global message queue which
-does not reside on the local node will generate a request to the
-remote node to obtain a message from the specified message
-queue. If no message is available and @code{@value{RPREFIX}WAIT} was specified, then
-the task must be blocked until a message is posted. A proxy is
-allocated on the remote node to represent the task until the
-message is posted.
-
-A clock tick is required to support the timeout functionality of
-this directive.
-
-@c
-@c
-@c
-@page
-@subsection MESSAGE_QUEUE_GET_NUMBER_PENDING - Get number of messages pending on a queue
-
-@cindex get number of pending messages
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_message_queue_get_number_pending
-@example
-rtems_status_code rtems_message_queue_get_number_pending(
- rtems_id id,
- uint32_t *count
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Message_Queue_Get_Number_Pending (
- ID : in RTEMS.ID;
- Count : out RTEMS.Unsigned32;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - number of messages pending returned successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{count} is NULL@*
-@code{@value{RPREFIX}INVALID_ID} - invalid queue id
-
-@subheading DESCRIPTION:
-
-This directive returns the number of messages pending on this
-message queue in count. If no messages are present
-on the queue, count is set to zero.
-
-@subheading NOTES:
-
-Getting the number of pending messages on a global message queue which
-does not reside on the local node will generate a request to the
-remote node to actually obtain the pending message count for
-the specified message queue.
-
-
-@c
-@c
-@c
-@page
-@subsection MESSAGE_QUEUE_FLUSH - Flush all messages on a queue
-
-@cindex flush messages on a queue
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_message_queue_flush
-@example
-rtems_status_code rtems_message_queue_flush(
- rtems_id id,
- uint32_t *count
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Message_Queue_Flush (
- ID : in RTEMS.ID;
- Count : out RTEMS.Unsigned32;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - message queue flushed successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{count} is NULL@*
-@code{@value{RPREFIX}INVALID_ID} - invalid queue id
-
-@subheading DESCRIPTION:
-
-This directive removes all pending messages from the
-specified queue id. The number of messages removed is returned
-in count. If no messages are present on the queue, count is set
-to zero.
-
-@subheading NOTES:
-
-Flushing all messages on a global message queue which
-does not reside on the local node will generate a request to the
-remote node to actually flush the specified message queue.
-
diff --git a/doc/user/object.t b/doc/user/object.t
deleted file mode 100644
index aa84785b3b..0000000000
--- a/doc/user/object.t
+++ /dev/null
@@ -1,911 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2008.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Object Services
-
-@cindex object manipulation
-
-@section Introduction
-
-RTEMS provides a collection of services to assist in the
-management and usage of the objects created and utilized
-via other managers. These services assist in the
-manipulation of RTEMS objects independent of the API used
-to create them. The object related services provided by
-RTEMS are:
-
-@itemize @bullet
-@c build_id
-@item @code{@value{DIRPREFIX}build_name} - build object name from characters
-@item @code{@value{DIRPREFIX}object_get_classic_name} - lookup name from Id
-@item @code{@value{DIRPREFIX}object_get_name} - obtain object name as string
-@item @code{@value{DIRPREFIX}object_set_name} - set object name
-@item @code{@value{DIRPREFIX}object_id_get_api} - obtain API from Id
-@item @code{@value{DIRPREFIX}object_id_get_class} - obtain class from Id
-@item @code{@value{DIRPREFIX}object_id_get_node} - obtain node from Id
-@item @code{@value{DIRPREFIX}object_id_get_index} - obtain index from Id
-@item @code{@value{DIRPREFIX}build_id} - build object id from components
-@item @code{@value{DIRPREFIX}object_id_api_minimum} - obtain minimum API value
-@item @code{@value{DIRPREFIX}object_id_api_maximum} - obtain maximum API value
-@item @code{@value{DIRPREFIX}object_id_api_minimum_class} - obtain minimum class value
-@item @code{@value{DIRPREFIX}object_id_api_maximum_class} - obtain maximum class value
-@item @code{@value{DIRPREFIX}object_get_api_name} - obtain API name
-@item @code{@value{DIRPREFIX}object_get_api_class_name} - obtain class name
-@item @code{@value{DIRPREFIX}object_get_class_information} - obtain class information
-@end itemize
-
-@section Background
-
-@subsection APIs
-
-RTEMS implements multiple APIs including an Internal API,
-the Classic API, and the POSIX API. These
-APIs share the common foundation of SuperCore objects and
-thus share object management code. This includes a common
-scheme for object Ids and for managing object names whether
-those names be in the thirty-two bit form used by the Classic
-API or C strings.
-
-The object Id contains a field indicating the API that
-an object instance is associated with. This field
-holds a numerically small non-zero integer.
-
-@subsection Object Classes
-
-Each API consists of a collection of managers. Each manager
-is responsible for instances of a particular object class.
-Classic API Tasks and POSIX Mutexes example classes.
-
-The object Id contains a field indicating the class that
-an object instance is associated with. This field
-holds a numerically small non-zero integer. In all APIs,
-a class value of one is reserved for tasks or threads.
-
-@subsection Object Names
-
-Every RTEMS object which has an Id may also have a
-name associated with it. Depending on the API, names
-may be either thirty-two bit integers as in the Classic
-API or strings as in the POSIX API.
-
-Some objects have Ids but do not have a defined way to associate
-a name with them. For example, POSIX threads have
-Ids but per POSIX do not have names. In RTEMS, objects
-not defined to have thirty-two bit names may have string
-names assigned to them via the @code{@value{DIRPREFIX}object_set_name}
-service. The original impetus in providing this service
-was so the normally anonymous POSIX threads could have
-a user defined name in CPU Usage Reports.
-
-@section Operations
-
-@subsection Decomposing and Recomposing an Object Id
-
-Services are provided to decompose an object Id into its
-subordinate components. The following services are used
-to do this:
-
-@itemize @bullet
-@item @code{@value{DIRPREFIX}object_id_get_api}
-@item @code{@value{DIRPREFIX}object_id_get_class}
-@item @code{@value{DIRPREFIX}object_id_get_node}
-@item @code{@value{DIRPREFIX}object_id_get_index}
-@end itemize
-
-The following C language example illustrates the
-decomposition of an Id and printing the values.
-
-@example
-void printObjectId(rtems_id id)
-@{
- printf(
- "API=%d Class=%d Node=%d Index=%d\n",
- rtems_object_id_get_api(id),
- rtems_object_id_get_class(id),
- rtems_object_id_get_node(id),
- rtems_object_id_get_index(id)
- );
-@}
-@end example
-
-This prints the components of the Ids as integers.
-
-It is also possible to construct an arbitrary Id using
-the @code{@value{DIRPREFIX}build_id} service. The following
-C language example illustrates how to construct the
-"next Id."
-
-@example
-rtems_id nextObjectId(rtems_id id)
-@{
- return rtems_build_id(
- rtems_object_id_get_api(id),
- rtems_object_id_get_class(id),
- rtems_object_id_get_node(id),
- rtems_object_id_get_index(id) + 1
- );
-@}
-@end example
-
-Note that this Id may not be valid in this
-system or associated with an allocated object.
-
-@subsection Printing an Object Id
-
-RTEMS also provides services to associate the API and Class
-portions of an Object Id with strings. This allows the
-application developer to provide more information about
-an object in diagnostic messages.
-
-In the following C language example, an Id is decomposed into
-its constituent parts and "pretty-printed."
-
-@example
-void prettyPrintObjectId(rtems_id id)
-@{
- int tmpAPI, tmpClass;
-
- tmpAPI = rtems_object_id_get_api(id),
- tmpClass = rtems_object_id_get_class(id),
-
- printf(
- "API=%s Class=%s Node=%d Index=%d\n",
- rtems_object_get_api_name(tmpAPI),
- rtems_object_get_api_class_name(tmpAPI, tmpClass),
- rtems_object_id_get_node(id),
- rtems_object_id_get_index(id)
- );
-@}
-@end example
-
-@section Directives
-
-@c
-@c
-@c
-@page
-@subsection BUILD_NAME - Build object name from characters
-
-@cindex build object name
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_build_name
-@example
-rtems_name rtems_build_name(
- uint8_t c1,
- uint8_t c2,
- uint8_t c3,
- uint8_t c4
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Build_Name(
- c1 : in RTEMS.Unsigned8;
- c2 : in RTEMS.Unsigned8;
- c3 : in RTEMS.Unsigned8;
- c4 : in RTEMS.Unsigned8;
- Name : out RTEMS.Name
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES
-
-Returns a name constructed from the four characters.
-
-@subheading DESCRIPTION:
-
-This service takes the four characters provided as arguments
-and constructs a thirty-two bit object name with @code{c1}
-in the most significant byte and @code{c4} in the least
-significant byte.
-
-@subheading NOTES:
-
-This directive is strictly local and does not impact task scheduling.
-
-@c
-@c
-@c
-@page
-@subsection OBJECT_GET_CLASSIC_NAME - Lookup name from id
-
-@cindex get name from id
-@cindex obtain name from id
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_build_name
-@example
-rtems_status_code rtems_object_get_classic_name(
- rtems_id id,
- rtems_name *name
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Object_Get_Classic_Name(
- ID : in RTEMS.ID;
- Name : out RTEMS.Name;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES
-
-@code{@value{RPREFIX}SUCCESSFUL} - name looked up successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - invalid name pointer@*
-@code{@value{RPREFIX}INVALID_ID} - invalid object id@*
-
-@subheading DESCRIPTION:
-
-This service looks up the name for the object @code{id} specified
-and, if found, places the result in @code{*name}.
-
-@subheading NOTES:
-
-This directive is strictly local and does not impact task scheduling.
-
-@c
-@c
-@c
-@page
-@subsection OBJECT_GET_NAME - Obtain object name as string
-
-@cindex get object name as string
-@cindex obtain object name as string
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_object_get_name
-@example
-char *rtems_object_get_name(
- rtems_id id,
- size_t length,
- char *name
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Object_Get_Name(
- ID : in RTEMS.ID;
- Name : out RTEMS.Name;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES
-
-Returns a pointer to the name if successful or @code{NULL}
-otherwise.
-
-@subheading DESCRIPTION:
-
-This service looks up the name of the object specified by
-@code{id} and places it in the memory pointed to by @code{name}.
-Every attempt is made to return name as a printable string even
-if the object has the Classic API thirty-two bit style name.
-
-@subheading NOTES:
-
-This directive is strictly local and does not impact task scheduling.
-
-@c
-@c
-@c
-@page
-@subsection OBJECT_SET_NAME - Set object name
-
-@cindex set object name
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_object_set_name
-@example
-rtems_status_code rtems_object_set_name(
- rtems_id id,
- const char *name
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Object_Set_Name(
- ID : in RTEMS.ID;
- Name : in String;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES
-
-@code{@value{RPREFIX}SUCCESSFUL} - name looked up successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - invalid name pointer@*
-@code{@value{RPREFIX}INVALID_ID} - invalid object id@*
-
-@subheading DESCRIPTION:
-
-This service sets the name of @code{id} to that specified
-by the string located at @code{name}.
-
-@subheading NOTES:
-
-This directive is strictly local and does not impact task scheduling.
-
-If the object specified by @code{id} is of a class that
-has a string name, this method will free the existing
-name to the RTEMS Workspace and allocate enough memory
-from the RTEMS Workspace to make a copy of the string
-located at @code{name}.
-
-If the object specified by @code{id} is of a class that
-has a thirty-two bit integer style name, then the first
-four characters in @code{*name} will be used to construct
-the name.
-name to the RTEMS Workspace and allocate enough memory
-from the RTEMS Workspace to make a copy of the string
-
-
-@c
-@c
-@c
-@page
-@subsection OBJECT_ID_GET_API - Obtain API from Id
-
-@cindex obtain API from id
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_object_id_get_api
-@example
-int rtems_object_id_get_api(
- rtems_id id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Object_Id_Get_API(
- ID : in RTEMS.ID;
- API : out RTEMS.Unsigned32
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES
-
-Returns the API portion of the object Id.
-
-@subheading DESCRIPTION:
-
-This directive returns the API portion of the provided object @code{id}.
-
-@subheading NOTES:
-
-This directive is strictly local and does not impact task scheduling.
-
-This directive does NOT validate the @code{id} provided.
-
-@c
-@c
-@c
-@page
-@subsection OBJECT_ID_GET_CLASS - Obtain Class from Id
-
-@cindex obtain class from object id
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_object_id_get_class
-@example
-int rtems_object_id_get_class(
- rtems_id id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Object_Id_Get_Class(
- ID : in RTEMS.ID;
- The_Class : out RTEMS.Unsigned32
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES
-
-Returns the class portion of the object Id.
-
-@subheading DESCRIPTION:
-
-This directive returns the class portion of the provided object @code{id}.
-
-@subheading NOTES:
-
-This directive is strictly local and does not impact task scheduling.
-
-This directive does NOT validate the @code{id} provided.
-
-@c
-@c
-@c
-@page
-@subsection OBJECT_ID_GET_NODE - Obtain Node from Id
-
-@cindex obtain node from object id
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_object_id_get_node
-@example
-int rtems_object_id_get_node(
- rtems_id id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Object_Id_Get_Node(
- ID : in RTEMS.ID;
- Node : out RTEMS.Unsigned32
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES
-
-Returns the node portion of the object Id.
-
-@subheading DESCRIPTION:
-
-This directive returns the node portion of the provided object @code{id}.
-
-@subheading NOTES:
-
-This directive is strictly local and does not impact task scheduling.
-
-This directive does NOT validate the @code{id} provided.
-
-@c
-@c
-@c
-@page
-@subsection OBJECT_ID_GET_INDEX - Obtain Index from Id
-
-@cindex obtain index from object id
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_object_id_get_index
-@example
-int rtems_object_id_get_index(
- rtems_id id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Object_Id_Get_Index(
- ID : in RTEMS.ID;
- Index : out RTEMS.Unsigned32
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES
-
-Returns the index portion of the object Id.
-
-@subheading DESCRIPTION:
-
-This directive returns the index portion of the provided object @code{id}.
-
-@subheading NOTES:
-
-This directive is strictly local and does not impact task scheduling.
-
-This directive does NOT validate the @code{id} provided.
-
-@c
-@c
-@c
-@page
-@subsection BUILD_ID - Build Object Id From Components
-
-@cindex build object id from components
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_build_id
-@example
-rtems_id rtems_build_id(
- int the_api,
- int the_class,
- int the_node,
- int the_index
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-function Build_Id(
- the_api : in RTEMS.Unsigned32;
- the_class : in RTEMS.Unsigned32;
- the_node : in RTEMS.Unsigned32;
- the_index : in RTEMS.Unsigned32
-) return RTEMS.Id;
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES
-
-Returns an object Id constructed from the provided arguments.
-
-@subheading DESCRIPTION:
-
-This service constructs an object Id from the provided
-@code{the_api}, @code{the_class}, @code{the_node}, and @code{the_index}.
-
-
-@subheading NOTES:
-
-This directive is strictly local and does not impact task scheduling.
-
-This directive does NOT validate the arguments provided
-or the Object id returned.
-
-@c
-@c
-@c
-@page
-@subsection OBJECT_ID_API_MINIMUM - Obtain Minimum API Value
-
-@cindex obtain minimum API value
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_object_id_api_minimum
-@example
-int rtems_object_id_api_minimum(void);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-function Object_Id_API_Minimum return RTEMS.Unsigned32;
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES
-
-Returns the minimum valid for the API portion of an object Id.
-
-@subheading DESCRIPTION:
-
-This service returns the minimum valid for the API portion of
-an object Id.
-
-@subheading NOTES:
-
-This directive is strictly local and does not impact task scheduling.
-
-@c
-@c
-@c
-@page
-@subsection OBJECT_ID_API_MAXIMUM - Obtain Maximum API Value
-
-@cindex obtain maximum API value
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_object_id_api_maximum
-@example
-int rtems_object_id_api_maximum(void);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-function Object_Id_API_Maximum return RTEMS.Unsigned32;
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES
-
-Returns the maximum valid for the API portion of an object Id.
-
-@subheading DESCRIPTION:
-
-This service returns the maximum valid for the API portion of
-an object Id.
-
-@subheading NOTES:
-
-This directive is strictly local and does not impact task scheduling.
-
-@c
-@c
-@c
-@page
-@subsection OBJECT_API_MINIMUM_CLASS - Obtain Minimum Class Value
-
-@cindex obtain minimum class value
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_object_api_minimum_class
-@example
-int rtems_object_api_minimum_class(
- int api
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Object_API_Minimum_Class(
- API : in RTEMS.Unsigned32;
- Minimum : out RTEMS.Unsigned32
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES
-
-If @code{api} is not valid, -1 is returned.
-
-If successful, this service returns the minimum valid for the class
-portion of an object Id for the specified @code{api}.
-
-@subheading DESCRIPTION:
-
-This service returns the minimum valid for the class portion of
-an object Id for the specified @code{api}.
-
-@subheading NOTES:
-
-This directive is strictly local and does not impact task scheduling.
-
-@c
-@c
-@c
-@page
-@subsection OBJECT_API_MAXIMUM_CLASS - Obtain Maximum Class Value
-
-@cindex obtain maximum class value
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_object_api_maximum_class
-@example
-int rtems_object_api_maximum_class(
- int api
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Object_API_Maximum_Class(
- API : in RTEMS.Unsigned32;
- Maximum : out RTEMS.Unsigned32
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES
-
-If @code{api} is not valid, -1 is returned.
-
-If successful, this service returns the maximum valid for the class
-portion of an object Id for the specified @code{api}.
-
-@subheading DESCRIPTION:
-
-This service returns the maximum valid for the class portion of
-an object Id for the specified @code{api}.
-
-@subheading NOTES:
-
-This directive is strictly local and does not impact task scheduling.
-
-
-@c
-@c
-@c
-@page
-@subsection OBJECT_GET_API_NAME - Obtain API Name
-
-@cindex obtain API name
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_object_get_api_name
-@example
-const char *rtems_object_get_api_name(
- int api
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Object_Get_API_Name(
- API : in RTEMS.Unsigned32;
- Name : out String
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES
-
-If @code{api} is not valid, the string @code{"BAD API"} is returned.
-
-If successful, this service returns a pointer to a string
-containing the name of the specified @code{api}.
-
-@subheading DESCRIPTION:
-
-This service returns the name of the specified @code{api}.
-
-@subheading NOTES:
-
-This directive is strictly local and does not impact task scheduling.
-
-The string returned is from constant space. Do not modify
-or free it.
-
-@c
-@c
-@c
-@page
-@subsection OBJECT_GET_API_CLASS_NAME - Obtain Class Name
-
-@cindex obtain class name
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_object_get_api_class_name
-@example
-const char *rtems_object_get_api_class_name(
- int the_api,
- int the_class
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Object_Get_API_Class_Name(
- The_API : in RTEMS.Unsigned32;
- The_Class : in RTEMS.Unsigned32;
- Name : out String
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES
-
-If @code{the_api} is not valid, the string @code{"BAD API"} is returned.
-
-If @code{the_class} is not valid, the string @code{"BAD CLASS"} is returned.
-
-If successful, this service returns a pointer to a string
-containing the name of the specified @code{the_api}/@code{the_class} pair.
-
-@subheading DESCRIPTION:
-
-This service returns the name of the object class indicated by the
-specified @code{the_api} and @code{the_class}.
-
-@subheading NOTES:
-
-This directive is strictly local and does not impact task scheduling.
-
-The string returned is from constant space. Do not modify
-or free it.
-
-@c
-@c
-@c
-@page
-@subsection OBJECT_GET_CLASS_INFORMATION - Obtain Class Information
-
-@cindex obtain class information
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_object_get_class_information
-@example
-rtems_status_code rtems_object_get_class_information(
- int the_api,
- int the_class,
- rtems_object_api_class_information *info
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Object_Get_Class_Information(
- The_API : in RTEMS.Unsigned32;
- The_Class : in RTEMS.Unsigned32;
- Info : out RTEMS.Object_API_Class_Information;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES
-@code{@value{RPREFIX}SUCCESSFUL} - information obtained successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{info} is NULL@*
-@code{@value{RPREFIX}INVALID_NUMBER} - invalid @code{api} or @code{the_class}
-
-If successful, the structure located at @code{info} will be filled
-in with information about the specified @code{api}/@code{the_class} pairing.
-
-@subheading DESCRIPTION:
-
-This service returns information about the object class indicated by the
-specified @code{api} and @code{the_class}. This structure is defined as
-follows:
-
-@ifset is-C
-@example
-typedef struct @{
- rtems_id minimum_id;
- rtems_id maximum_id;
- int maximum;
- bool auto_extend;
- int unallocated;
-@} rtems_object_api_class_information;
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-
-@end example
-@end ifset
-
-
-@subheading NOTES:
-
-This directive is strictly local and does not impact task scheduling.
-
diff --git a/doc/user/overview.t b/doc/user/overview.t
deleted file mode 100644
index 77770cd8ee..0000000000
--- a/doc/user/overview.t
+++ /dev/null
@@ -1,549 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2008.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@c
-@c This chapter is missing the following figures:
-@c
-@c Figure 1-1 RTEMS Application Architecture
-@c Figure 1-2 RTEMS Internal Architecture
-@c
-
-@chapter Overview
-
-@section Introduction
-
-RTEMS, Real-Time Executive for Multiprocessor Systems, is a
-real-time executive (kernel) which provides a high performance
-environment for embedded military applications including the
-following features:
-
-@itemize @bullet
-@item multitasking capabilities
-@item homogeneous and heterogeneous multiprocessor systems
-@item event-driven, priority-based, preemptive scheduling
-@item optional rate monotonic scheduling
-@item intertask communication and synchronization
-@item priority inheritance
-@item responsive interrupt management
-@item dynamic memory allocation
-@item high level of user configurability
-@end itemize
-
-This manual describes the usage of RTEMS for
-applications written in the @value{LANGUAGE} programming language. Those
-implementation details that are processor dependent are provided
-in the Applications Supplement documents. A supplement
-document which addresses specific architectural issues that
-affect RTEMS is provided for each processor type that is
-supported.
-
-@section Real-time Application Systems
-
-Real-time application systems are a special class of
-computer applications. They have a complex set of
-characteristics that distinguish them from other software
-problems. Generally, they must adhere to more rigorous
-requirements. The correctness of the system depends not only on
-the results of computations, but also on the time at which the
-results are produced. The most important and complex
-characteristic of real-time application systems is that they
-must receive and respond to a set of external stimuli within
-rigid and critical time constraints referred to as deadlines.
-Systems can be buried by an avalanche of interdependent,
-asynchronous or cyclical event streams.
-
-Deadlines can be further characterized as either hard
-or soft based upon the value of the results when produced after
-the deadline has passed. A deadline is hard if the results have
-no value or if their use will result in a catastrophic event.
-In contrast, results which are produced after a soft deadline
-may have some value.
-
-Another distinguishing requirement of real-time
-application systems is the ability to coordinate or manage a
-large number of concurrent activities. Since software is a
-synchronous entity, this presents special problems. One
-instruction follows another in a repeating synchronous cycle.
-Even though mechanisms have been developed to allow for the
-processing of external asynchronous events, the software design
-efforts required to process and manage these events and tasks
-are growing more complicated.
-
-The design process is complicated further by
-spreading this activity over a set of processors instead of a
-single processor. The challenges associated with designing and
-building real-time application systems become very complex when
-multiple processors are involved. New requirements such as
-interprocessor communication channels and global resources that
-must be shared between competing processors are introduced. The
-ramifications of multiple processors complicate each and every
-characteristic of a real-time system.
-
-@section Real-time Executive
-
-Fortunately, real-time operating systems or real-time
-executives serve as a cornerstone on which to build the
-application system. A real-time multitasking executive allows
-an application to be cast into a set of logical, autonomous
-processes or tasks which become quite manageable. Each task is
-internally synchronous, but different tasks execute
-independently, resulting in an asynchronous processing stream.
-Tasks can be dynamically paused for many reasons resulting in a
-different task being allowed to execute for a period of time.
-The executive also provides an interface to other system
-components such as interrupt handlers and device drivers.
-System components may request the executive to allocate and
-coordinate resources, and to wait for and trigger synchronizing
-conditions. The executive system calls effectively extend the
-CPU instruction set to support efficient multitasking. By
-causing tasks to travel through well-defined state transitions,
-system calls permit an application to demand-switch between
-tasks in response to real-time events.
-
-By proper grouping of responses to stimuli into
-separate tasks, a system can now asynchronously switch between
-independent streams of execution, directly responding to
-external stimuli as they occur. This allows the system design
-to meet critical performance specifications which are typically
-measured by guaranteed response time and transaction throughput.
-The multiprocessor extensions of RTEMS provide the features
-necessary to manage the extra requirements introduced by a
-system distributed across several processors. It removes the
-physical barriers of processor boundaries from the world of the
-system designer, enabling more critical aspects of the system to
-receive the required attention. Such a system, based on an
-efficient real-time, multiprocessor executive, is a more
-realistic model of the outside world or environment for which it
-is designed. As a result, the system will always be more
-logical, efficient, and reliable.
-
-By using the directives provided by RTEMS, the
-real-time applications developer is freed from the problem of
-controlling and synchronizing multiple tasks and processors. In
-addition, one need not develop, test, debug, and document
-routines to manage memory, pass messages, or provide mutual
-exclusion. The developer is then able to concentrate solely on
-the application. By using standard software components, the
-time and cost required to develop sophisticated real-time
-applications is significantly reduced.
-
-@section RTEMS Application Architecture
-
-One important design goal of RTEMS was to provide a
-bridge between two critical layers of typical real-time systems.
-As shown in the following figure, RTEMS serves as a buffer between the
-project dependent application code and the target hardware.
-Most hardware dependencies for real-time applications can be
-localized to the low level device drivers.
-
-@float Figure,fig:RTEMS-App-Arch
-@caption{RTEMS Application Architecture}
-
-@ifset use-ascii
-@example
-@group
- +-----------------------------------------------------------+
- | Application Dependent Software |
- | +----------------------------------------+ |
- | | Standard Application Components | |
- | | +-------------+---+ |
- | +---+-----------+ | | |
- | | Board Support | | RTEMS | |
- | | Package | | | |
- +----+---------------+--------------+-----------------+-----|
- | Target Hardware |
- +-----------------------------------------------------------+
-@end group
-@end example
-@end ifset
-
-@ifset use-tex
-@sp 1
-@tex
-\centerline{\vbox{\offinterlineskip\halign{
-\vrule#&
-\hbox to 0.50in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 0.50in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 0.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 0.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 0.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 0.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 0.50in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 0.50in{\enskip\hfil#\hfil}&
-\vrule#\cr
-\multispan{17}\hrulefill\cr
-% to force all columns to desired width
-& \enskip && \enskip && \enskip && \enskip &&
- \enskip && \enskip &&\enskip &&\enskip &\cr
-% For debugging columns
-%& \enskip 0&& \enskip 1&& \enskip 2&& \enskip 3&&
-% \enskip 4&& \enskip 5&&\enskip 6&&\enskip 7&\cr
-\strut&\multispan{15}&\cr
-&\multispan{15}\hfil Application Dependent Software\hfil&\cr
-\strut&\multispan{15}&\cr
-&\multispan{2}&&\multispan{8}\hrulefill &\multispan{2}&\cr
-\strut&\multispan{2}&&&\multispan{7}&&\multispan{2}&&\cr
-&\multispan{2}&&&\multispan{7}\hfil Standard Application Components\hfil&
- &\multispan{2}&&\cr
-\strut&\multispan{2}&&&\multispan{7}&&\multispan{2}&&\cr
-&&\multispan{5}\hrulefill&&\multispan{7}\hrulefill&&\cr
-\strut&&&\multispan{3} &&&&\multispan{5}&&&\cr
-&&&\multispan{3}\hfil Device\hfil&&&&\multispan{5}\hfil RTEMS\hfil&&&\cr
-&&&\multispan{3}\hfil Drivers\hfil&&&&\multispan{5}&&&\cr
-\strut&&&\multispan{3} &&&&\multispan{5}&&&\cr
-\multispan{17}\hrulefill\cr
-\strut&\multispan{15}&\cr
-&\multispan{15}\hfil Target Hardware\hfil&\cr
-\strut&\multispan{15}&\cr
-\multispan{17}\hrulefill\cr
-}}\hfil}
-@end tex
-@end ifset
-
-@ifset use-html
-@html
-<IMG SRC="rtemsarc.png" WIDTH=500 HEIGHT=300 ALT="RTEMS Application Architecture">
-@end html
-@end ifset
-@end float
-
-The RTEMS I/O interface manager provides an efficient tool for incorporating
-these hardware dependencies into the system while simultaneously
-providing a general mechanism to the application code that
-accesses them. A well designed real-time system can benefit
-from this architecture by building a rich library of standard
-application components which can be used repeatedly in other
-real-time projects.
-
-@section RTEMS Internal Architecture
-
-RTEMS can be viewed as a set of layered components that work in
-harmony to provide a set of services to a real-time application
-system. The executive interface presented to the application is
-formed by grouping directives into logical sets called resource managers.
-Functions utilized by multiple managers such as scheduling,
-dispatching, and object management are provided in the executive
-core. The executive core depends on a small set of CPU dependent routines.
-Together these components provide a powerful run time
-environment that promotes the development of efficient real-time
-application systems. The following figure illustrates this organization:
-
-@float Figure,fig:rtems-layers
-@caption{RTEMS Layered Architecture}
-
-@ifset use-ascii
-@example
-@group
- +-----------------------------------------------+
- | RTEMS Executive Interface |
- +-----------------------------------------------+
- | RTEMS Core |
- +-----------------------------------------------+
- | CPU Dependent Code |
- +-----------------------------------------------+
-@end group
-@end example
-@end ifset
-
-@ifset use-tex
-@center{@image{rtemspie,4in,3in, RTEMS Layered Architecture}}
-@tex
-@end tex
-@end ifset
-
-@ifset use-html
-@html
-<IMG SRC="rtemspie.png" WIDTH=500 HEIGHT=300 ALT="RTEMS Layered Architecture">
-@end html
-@end ifset
-@end float
-
-Subsequent chapters present a detailed description of the capabilities
-provided by each of the following RTEMS managers:
-
-@itemize @bullet
-@item initialization
-@item task
-@item interrupt
-@item clock
-@item timer
-@item semaphore
-@item message
-@item event
-@item signal
-@item partition
-@item region
-@item dual ported memory
-@item I/O
-@item fatal error
-@item rate monotonic
-@item user extensions
-@item multiprocessing
-@end itemize
-
-@section User Customization and Extensibility
-
-As thirty-two bit microprocessors have decreased in
-cost, they have become increasingly common in a variety of
-embedded systems. A wide range of custom and general-purpose
-processor boards are based on various thirty-two bit processors.
-RTEMS was designed to make no assumptions concerning the
-characteristics of individual microprocessor families or of
-specific support hardware. In addition, RTEMS allows the system
-developer a high degree of freedom in customizing and extending
-its features.
-
-RTEMS assumes the existence of a supported
-microprocessor and sufficient memory for both RTEMS and the
-real-time application. Board dependent components such as
-clocks, interrupt controllers, or I/O devices can be easily
-integrated with RTEMS. The customization and extensibility
-features allow RTEMS to efficiently support as many environments
-as possible.
-
-@section Portability
-
-The issue of portability was the major factor in the
-creation of RTEMS. Since RTEMS is designed to isolate the
-hardware dependencies in the specific board support packages,
-the real-time application should be easily ported to any other
-processor. The use of RTEMS allows the development of real-time
-applications which can be completely independent of a particular
-microprocessor architecture.
-
-@section Memory Requirements
-
-Since memory is a critical resource in many real-time
-embedded systems, RTEMS was specifically designed to automatically
-leave out all services that are not required from the run-time
-environment. Features such as networking, various fileystems,
-and many other features are completely optional. This allows
-the application designer the flexibility to tailor RTEMS to most
-efficiently meet system requirements while still satisfying even
-the most stringent memory constraints. As a result, the size
-of the RTEMS executive is application dependent.
-
-RTEMS requires RAM to manage each instance of an RTEMS object
-that is created. Thus the more RTEMS objects an application
-needs, the more memory that must be reserved. See
-@ref{Configuring a System} for more details.
-
-RTEMS utilizes memory for both code and data space.
-Although RTEMS' data space must be in RAM, its code space can be
-located in either ROM or RAM.
-
-@section Audience
-
-This manual was written for experienced real-time
-software developers. Although some background is provided, it
-is assumed that the reader is familiar with the concepts of task
-management as well as intertask communication and
-synchronization. Since directives, user related data
-structures, and examples are presented in @value{LANGUAGE}, a basic
-understanding of the @value{LANGUAGE} programming language
-is required to fully
-understand the material presented. However, because of the
-similarity of the Ada and C RTEMS implementations, users will
-find that the use and behavior of the two implementations is
-very similar. A working knowledge of the target processor is
-helpful in understanding some of RTEMS' features. A thorough
-understanding of the executive cannot be obtained without
-studying the entire manual because many of RTEMS' concepts and
-features are interrelated. Experienced RTEMS users will find
-that the manual organization facilitates its use as a reference
-document.
-
-@section Conventions
-
-The following conventions are used in this manual:
-
-@itemize @bullet
-@item Significant words or phrases as well as all directive
-names are printed in bold type.
-
-@item Items in bold capital letters are constants defined by
-RTEMS. Each language interface provided by RTEMS includes a
-file containing the standard set of constants, data types, and
-@value{STRUCTURE} definitions which can be incorporated into the user
-application.
-
-@item A number of type definitions are provided by RTEMS and
-can be found in rtems.h.
-
-@item The characters "0x" preceding a number indicates that
-the number is in hexadecimal format. Any other numbers are
-assumed to be in decimal format.
-@end itemize
-
-@section Manual Organization
-
-This first chapter has presented the introductory and
-background material for the RTEMS executive. The remaining
-chapters of this manual present a detailed description of RTEMS
-and the environment, including run time behavior, it creates for
-the user.
-
-A chapter is dedicated to each manager and provides a
-detailed discussion of each RTEMS manager and the directives
-which it provides. The presentation format for each directive
-includes the following sections:
-
-@itemize @bullet
-@item Calling sequence
-@item Directive status codes
-@item Description
-@item Notes
-@end itemize
-
-The following provides an overview of the remainder
-of this manual:
-
-@table @asis
-@item Chapter 2:
-Key Concepts: presents an introduction to the ideas which are common
-across multiple RTEMS managers.
-
-@item Chapter 3:
-RTEMS Data Types: describes the fundamental data types shared
-by the services in the RTEMS Classic API.
-
-@item Chapter 4:
-Scheduling Concepts: details the various RTEMS scheduling algorithms
-and task state transitions.
-
-@item Chapter 5:
-Initialization Manager: describes the functionality and directives
-provided by the Initialization Manager.
-
-@item Chapter 6:
-Task Manager: describes the functionality and directives provided
-by the Task Manager.
-
-@item Chapter 7:
-Interrupt Manager: describes the functionality and directives
-provided by the Interrupt Manager.
-
-@item Chapter 8:
-Clock Manager: describes the functionality and directives
-provided by the Clock Manager.
-
-@item Chapter 9:
-Timer Manager: describes the functionality and directives provided
-by the Timer Manager.
-
-@item Chapter 10:
-Rate Monotonic Manager: describes the functionality and directives
-provided by the Rate Monotonic Manager.
-
-@item Chapter 11:
-Semaphore Manager: describes the functionality and directives
-provided by the Semaphore Manager.
-
-@item Chapter 12:
-Barrier Manager: describes the functionality and directives
-provided by the Barrier Manager.
-
-@item Chapter 13:
-Message Manager: describes the functionality and directives
-provided by the Message Manager.
-
-@item Chapter 14:
-Event Manager: describes the
-functionality and directives provided by the Event Manager.
-
-@item Chapter 15:
-Signal Manager: describes the
-functionality and directives provided by the Signal Manager.
-
-@item Chapter 16:
-Partition Manager: describes the
-functionality and directives provided by the Partition Manager.
-
-@item Chapter 17:
-Region Manager: describes the
-functionality and directives provided by the Region Manager.
-
-@item Chapter 18:
-Dual-Ported Memory Manager: describes
-the functionality and directives provided by the Dual-Ported
-Memory Manager.
-
-@item Chapter 19:
-I/O Manager: describes the
-functionality and directives provided by the I/O Manager.
-
-@item Chapter 20:
-Fatal Error Manager: describes the functionality and directives
-provided by the Fatal Error Manager.
-
-@item Chapter 21:
-Board Support Packages: defines the
-functionality required of user-supplied board support packages.
-
-@item Chapter 22:
-User Extensions: shows the user how to
-extend RTEMS to incorporate custom features.
-
-@item Chapter 23:
-Configuring a System: details the process by which one tailors RTEMS
-for a particular single-processor or multiprocessor application.
-
-@item Chapter 24:
-Multiprocessing Manager: presents a
-conceptual overview of the multiprocessing capabilities provided
-by RTEMS as well as describing the Multiprocessing
-Communications Interface Layer and Multiprocessing Manager
-directives.
-
-@item Chapter 25:
-Stack Bounds Checker: presents the capabilities of the RTEMS
-task stack checker which can report stack usage as well as detect
-bounds violations.
-
-@item Chapter 26:
-CPU Usage Statistics: presents the capabilities of the CPU Usage
-statistics gathered on a per task basis along with the mechanisms
-for reporting and resetting the statistics.
-
-@item Chapter 27:
-Object Services: presents a collection of helper services useful
-when manipulating RTEMS objects. These include methods to assist
-in obtaining an object's name in printable form. Additional services
-are provided to decompose an object Id and determine which API
-and object class it belongs to.
-
-@item Chapter 28:
-Chains: presents the methods provided to build, iterate and
-manipulate doubly-linked chains. This manager makes the
-chain implementation used internally by RTEMS to user space
-applications.
-
-@item Chapter 29:
-Timespec Helpers: presents a set of helper services useful
-when manipulating POSIX @code{struct timespec} instances.
-
-@item Chapter 30:
-Constant Bandwidth Server Scheduler API::
-
-@item Chapter 31:
-Directive Status Codes: provides a definition of each of the
-directive status codes referenced in this manual.
-
-@item Chapter 32:
-Example Application: provides a template for simple RTEMS applications.
-
-@item Chapter 33:
-Glossary: defines terms used throughout this manual.
-
-@end table
-
-
diff --git a/doc/user/part.t b/doc/user/part.t
deleted file mode 100644
index 008a574a0c..0000000000
--- a/doc/user/part.t
+++ /dev/null
@@ -1,459 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2010.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Partition Manager
-
-@cindex partitions
-
-@section Introduction
-
-The partition manager provides facilities to
-dynamically allocate memory in fixed-size units. The directives
-provided by the partition manager are:
-
-@itemize @bullet
-@item @code{@value{DIRPREFIX}partition_create} - Create a partition
-@item @code{@value{DIRPREFIX}partition_ident} - Get ID of a partition
-@item @code{@value{DIRPREFIX}partition_delete} - Delete a partition
-@item @code{@value{DIRPREFIX}partition_get_buffer} - Get buffer from a partition
-@item @code{@value{DIRPREFIX}partition_return_buffer} - Return buffer to a partition
-@end itemize
-
-@section Background
-
-@subsection Partition Manager Definitions
-
-@cindex partition, definition
-
-A partition is a physically contiguous memory area
-divided into fixed-size buffers that can be dynamically
-allocated and deallocated.
-
-@cindex buffers, definition
-
-Partitions are managed and maintained as a list of
-buffers. Buffers are obtained from the front of the partition's
-free buffer chain and returned to the rear of the same chain.
-When a buffer is on the free buffer chain, RTEMS uses two
-pointers of memory from each buffer as the free buffer chain.
-When a buffer is allocated, the entire buffer is available for application use.
-Therefore, modifying memory that is outside of an allocated
-buffer could destroy the free buffer chain or the contents of an
-adjacent allocated buffer.
-
-@subsection Building a Partition Attribute Set
-
-@cindex partition attribute set, building
-
-In general, an attribute set is built by a bitwise OR
-of the desired attribute components. The set of valid partition
-attributes is provided in the following table:
-
-@itemize @bullet
-@item @code{@value{RPREFIX}LOCAL} - local partition (default)
-@item @code{@value{RPREFIX}GLOBAL} - global partition
-@end itemize
-
-Attribute values are specifically designed to be
-mutually exclusive, therefore bitwise OR and addition operations
-are equivalent as long as each attribute appears exactly once in
-the component list. An attribute listed as a default is not
-required to appear in the attribute list, although it is a good
-programming practice to specify default attributes. If all
-defaults are desired, the attribute
-@code{@value{RPREFIX}DEFAULT_ATTRIBUTES} should be
-specified on this call. The attribute_set parameter should be
-@code{@value{RPREFIX}GLOBAL} to indicate that the partition
-is to be known globally.
-
-@section Operations
-
-@subsection Creating a Partition
-
-The @code{@value{DIRPREFIX}partition_create} directive creates a partition
-with a user-specified name. The partition's name, starting
-address, length and buffer size are all specified to the
-@code{@value{DIRPREFIX}partition_create} directive.
-RTEMS allocates a Partition Control
-Block (PTCB) from the PTCB free list. This data structure is
-used by RTEMS to manage the newly created partition. The number
-of buffers in the partition is calculated based upon the
-specified partition length and buffer size. If successful,the
-unique partition ID is returned to the calling task.
-
-@subsection Obtaining Partition IDs
-
-When a partition is created, RTEMS generates a unique
-partition ID and assigned it to the created partition until it
-is deleted. The partition ID may be obtained by either of two
-methods. First, as the result of an invocation of the
-@code{@value{DIRPREFIX}partition_create} directive, the partition
-ID is stored in a user provided location. Second, the partition
-ID may be obtained later using the @code{@value{DIRPREFIX}partition_ident}
-directive. The partition ID is used by other partition manager directives
-to access this partition.
-
-@subsection Acquiring a Buffer
-
-A buffer can be obtained by calling the
-@code{@value{DIRPREFIX}partition_get_buffer} directive.
-If a buffer is available, then
-it is returned immediately with a successful return code.
-Otherwise, an unsuccessful return code is returned immediately
-to the caller. Tasks cannot block to wait for a buffer to
-become available.
-
-@subsection Releasing a Buffer
-
-Buffers are returned to a partition's free buffer
-chain with the @code{@value{DIRPREFIX}partition_return_buffer} directive. This
-directive returns an error status code if the returned buffer
-was not previously allocated from this partition.
-
-@subsection Deleting a Partition
-
-The @code{@value{DIRPREFIX}partition_delete} directive allows a partition to
-be removed and returned to RTEMS. When a partition is deleted,
-the PTCB for that partition is returned to the PTCB free list.
-A partition with buffers still allocated cannot be deleted. Any
-task attempting to do so will be returned an error status code.
-
-@section Directives
-
-This section details the partition manager's
-directives. A subsection is dedicated to each of this manager's
-directives and describes the calling sequence, related
-constants, usage, and status codes.
-
-@c
-@c
-@c
-@page
-@subsection PARTITION_CREATE - Create a partition
-
-@cindex create a partition
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_partition_create
-@example
-rtems_status_code rtems_partition_create(
- rtems_name name,
- void *starting_address,
- uint32_t length,
- uint32_t buffer_size,
- rtems_attribute attribute_set,
- rtems_id *id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Partition_Create (
- Name : in RTEMS.Name;
- Starting_Address : in RTEMS.Address;
- Length : in RTEMS.Unsigned32;
- Buffer_Size : in RTEMS.Unsigned32;
- Attribute_Set : in RTEMS.Attribute;
- ID : out RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - partition created successfully@*
-@code{@value{RPREFIX}INVALID_NAME} - invalid partition name@*
-@code{@value{RPREFIX}TOO_MANY} - too many partitions created@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - address not on four byte boundary@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{starting_address} is NULL@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{id} is NULL@*
-@code{@value{RPREFIX}INVALID_SIZE} - length or buffer size is 0@*
-@code{@value{RPREFIX}INVALID_SIZE} - length is less than the buffer size@*
-@code{@value{RPREFIX}INVALID_SIZE} - buffer size not a multiple of 4@*
-@code{@value{RPREFIX}MP_NOT_CONFIGURED} - multiprocessing not configured@*
-@code{@value{RPREFIX}TOO_MANY} - too many global objects
-
-@subheading DESCRIPTION:
-
-This directive creates a partition of fixed size
-buffers from a physically contiguous memory space which starts
-at starting_address and is length bytes in size. Each allocated
-buffer is to be of @code{buffer_size} in bytes. The assigned
-partition id is returned in @code{id}. This partition id is used to
-access the partition with other partition related directives.
-For control and maintenance of the partition, RTEMS allocates a
-PTCB from the local PTCB free pool and initializes it.
-
-@subheading NOTES:
-
-This directive will not cause the calling task to be
-preempted.
-
-The @code{starting_address} must be properly aligned for the
-target architecture.
-
-The @code{buffer_size} parameter must be a multiple of
-the CPU alignment factor. Additionally, @code{buffer_size}
-must be large enough to hold two pointers on the target
-architecture. This is required for RTEMS to manage the
-buffers when they are free.
-
-Memory from the partition is not used by RTEMS to
-store the Partition Control Block.
-
-The following partition attribute constants are
-defined by RTEMS:
-
-@itemize @bullet
-@item @code{@value{RPREFIX}LOCAL} - local partition (default)
-@item @code{@value{RPREFIX}GLOBAL} - global partition
-@end itemize
-
-The PTCB for a global partition is allocated on the
-local node. The memory space used for the partition must reside
-in shared memory. Partitions should not be made global unless
-remote tasks must interact with the partition. This is to avoid
-the overhead incurred by the creation of a global partition.
-When a global partition is created, the partition's name and id
-must be transmitted to every node in the system for insertion in
-the local copy of the global object table.
-
-The total number of global objects, including
-partitions, is limited by the maximum_global_objects field in
-the Configuration Table.
-
-@c
-@c
-@c
-@page
-@subsection PARTITION_IDENT - Get ID of a partition
-
-@cindex get ID of a partition
-@cindex obtain ID of a partition
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_partition_ident
-@example
-rtems_status_code rtems_partition_ident(
- rtems_name name,
- uint32_t node,
- rtems_id *id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Partition_Ident (
- Name : in RTEMS.Name;
- Node : in RTEMS.Unsigned32;
- ID : out RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - partition identified successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{id} is NULL@*
-@code{@value{RPREFIX}INVALID_NAME} - partition name not found@*
-@code{@value{RPREFIX}INVALID_NODE} - invalid node id
-
-@subheading DESCRIPTION:
-
-This directive obtains the partition id associated
-with the partition name. If the partition name is not unique,
-then the partition id will match one of the partitions with that
-name. However, this partition id is not guaranteed to
-correspond to the desired partition. The partition id is used
-with other partition related directives to access the partition.
-
-@subheading NOTES:
-
-This directive will not cause the running task to be
-preempted.
-
-If node is @code{@value{RPREFIX}SEARCH_ALL_NODES}, all nodes are searched
-with the local node being searched first. All other nodes are
-searched with the lowest numbered node searched first.
-
-If node is a valid node number which does not
-represent the local node, then only the partitions exported by
-the designated node are searched.
-
-This directive does not generate activity on remote
-nodes. It accesses only the local copy of the global object
-table.
-
-@c
-@c
-@c
-@page
-@subsection PARTITION_DELETE - Delete a partition
-
-@cindex delete a partition
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_partition_delete
-@example
-rtems_status_code rtems_partition_delete(
- rtems_id id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Partition_Delete (
- ID : in RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - partition deleted successfully@*
-@code{@value{RPREFIX}INVALID_ID} - invalid partition id@*
-@code{@value{RPREFIX}RESOURCE_IN_USE} - buffers still in use@*
-@code{@value{RPREFIX}ILLEGAL_ON_REMOTE_OBJECT} - cannot delete remote partition
-
-@subheading DESCRIPTION:
-
-This directive deletes the partition specified by id.
-The partition cannot be deleted if any of its buffers are still
-allocated. The PTCB for the deleted partition is reclaimed by
-RTEMS.
-
-@subheading NOTES:
-
-This directive will not cause the calling task to be
-preempted.
-
-The calling task does not have to be the task that
-created the partition. Any local task that knows the partition
-id can delete the partition.
-
-When a global partition is deleted, the partition id
-must be transmitted to every node in the system for deletion
-from the local copy of the global object table.
-
-The partition must reside on the local node, even if
-the partition was created with the @code{@value{RPREFIX}GLOBAL} option.
-
-@c
-@c
-@c
-@page
-@subsection PARTITION_GET_BUFFER - Get buffer from a partition
-
-@cindex get buffer from partition
-@cindex obtain buffer from partition
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_partition_get_buffer
-@example
-rtems_status_code rtems_partition_get_buffer(
- rtems_id id,
- void **buffer
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Partition_Get_Buffer (
- ID : in RTEMS.ID;
- Buffer : out RTEMS.Address;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - buffer obtained successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{buffer} is NULL@*
-@code{@value{RPREFIX}INVALID_ID} - invalid partition id@*
-@code{@value{RPREFIX}UNSATISFIED} - all buffers are allocated
-
-@subheading DESCRIPTION:
-
-This directive allows a buffer to be obtained from
-the partition specified in id. The address of the allocated
-buffer is returned in buffer.
-
-@subheading NOTES:
-
-This directive will not cause the running task to be
-preempted.
-
-All buffers begin on a four byte boundary.
-
-A task cannot wait on a buffer to become available.
-
-Getting a buffer from a global partition which does
-not reside on the local node will generate a request telling the
-remote node to allocate a buffer from the specified partition.
-
-@c
-@c
-@c
-@page
-@subsection PARTITION_RETURN_BUFFER - Return buffer to a partition
-
-@cindex return buffer to partitition
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_partition_return_buffer
-@example
-rtems_status_code rtems_partition_return_buffer(
- rtems_id id,
- void *buffer
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Partition_Return_Buffer (
- ID : in RTEMS.ID;
- Buffer : in RTEMS.Address;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - buffer returned successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{buffer} is NULL@*
-@code{@value{RPREFIX}INVALID_ID} - invalid partition id@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - buffer address not in partition
-
-@subheading DESCRIPTION:
-
-This directive returns the buffer specified by buffer
-to the partition specified by id.
-
-@subheading NOTES:
-
-This directive will not cause the running task to be
-preempted.
-
-Returning a buffer to a global partition which does
-not reside on the local node will generate a request telling the
-remote node to return the buffer to the specified partition.
-
-Returning a buffer multiple times is an error. It will corrupt the internal
-state of the partition.
diff --git a/doc/user/preface.texi b/doc/user/preface.texi
deleted file mode 100644
index f4a794cbaf..0000000000
--- a/doc/user/preface.texi
+++ /dev/null
@@ -1,188 +0,0 @@
-@c
-@c COPYRIGHT (c) 1989-2015.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@node Preface, Overview, List of Figures, Top
-@unnumbered Preface
-
-In recent years, the cost required to develop a
-software product has increased significantly while the target
-hardware costs have decreased. Now a larger portion of money is
-expended in developing, using, and maintaining software. The
-trend in computing costs is the complete dominance of software
-over hardware costs. Because of this, it is necessary that
-formal disciplines be established to increase the probability
-that software is characterized by a high degree of correctness,
-maintainability, and portability. In addition, these
-disciplines must promote practices that aid in the consistent
-and orderly development of a software system within schedule and
-budgetary constraints. To be effective, these disciplines must
-adopt standards which channel individual software efforts toward
-a common goal.
-
-The push for standards in the software development
-field has been met with various degrees of success. The
-Microprocessor Operating Systems Interfaces (MOSI) effort has
-experienced only limited success. As popular as the UNIX
-operating system has grown, the attempt to develop a standard
-interface definition to allow portable application development
-has only recently begun to produce the results needed in this
-area. Unfortunately, very little effort has been expended to
-provide standards addressing the needs of the real-time
-community. Several organizations have addressed this need
-during recent years.
-
-The Real Time Executive Interface Definition (RTEID)
-was developed by Motorola with technical input from Software
-Components Group. RTEID was adopted by the VMEbus International
-Trade Association (VITA) as a baseline draft for their proposed
-standard multiprocessor, real-time executive interface, Open
-Real-Time Kernel Interface Definition (ORKID). These two groups
-are currently working together with the IEEE P1003.4 committee
-to insure that the functionality of their proposed standards is
-adopted as the real-time extensions to POSIX.
-
-This emerging standard defines an interface for the
-development of real-time software to ease the writing of
-real-time application programs that are directly portable across
-multiple real-time executive implementations. This interface
-includes both the source code interfaces and run-time behavior
-as seen by a real-time application. It does not include the
-details of how a kernel implements these functions. The
-standard's goal is to serve as a complete definition of external
-interfaces so that application code that conforms to these
-interfaces will execute properly in all real-time executive
-environments. With the use of a standards compliant executive,
-routines that acquire memory blocks, create and manage message
-queues, establish and use semaphores, and send and receive
-signals need not be redeveloped for a different real-time
-environment as long as the new environment is compliant with the
-standard. Software developers need only concentrate on the
-hardware dependencies of the real-time system. Furthermore,
-most hardware dependencies for real-time applications can be
-localized to the device drivers.
-
-A compliant executive provides simple and flexible
-real-time multiprocessing. It easily lends itself to both
-tightly-coupled and loosely-coupled configurations (depending on
-the system hardware configuration). Objects such as tasks,
-queues, events, signals, semaphores, and memory blocks can be
-designated as global objects and accessed by any task regardless
-of which processor the object and the accessing task reside.
-
-The acceptance of a standard for real-time executives
-will produce the same advantages enjoyed from the push for UNIX
-standardization by AT&T's System V Interface Definition and
-IEEE's POSIX efforts. A compliant multiprocessing executive
-will allow close coupling between UNIX systems and real-time
-executives to provide the many benefits of the UNIX development
-environment to be applied to real-time software development.
-Together they provide the necessary laboratory environment to
-implement real-time, distributed, embedded systems using a wide
-variety of computer architectures.
-
-A study was completed in 1988, within the Research,
-Development, and Engineering Center, U.S. Army Missile Command,
-which compared the various aspects of the Ada programming
-language as they related to the application of Ada code in
-distributed and/or multiple processing systems. Several
-critical conclusions were derived from the study. These
-conclusions have a major impact on the way the Army develops
-application software for embedded applications. These impacts
-apply to both in-house software development and contractor
-developed software.
-
-A conclusion of the analysis, which has been
-previously recognized by other agencies attempting to utilize
-Ada in a distributed or multiprocessing environment, is that the
-Ada programming language does not adequately support
-multiprocessing. Ada does provide a mechanism for
-multi-tasking, however, this capability exists only for a single
-processor system. The language also does not have inherent
-capabilities to access global named variables, flags or program
-code. These critical features are essential in order for data
-to be shared between processors. However, these drawbacks do
-have workarounds which are sometimes awkward and defeat the
-intent of software maintainability and portability goals.
-
-Another conclusion drawn from the analysis, was that
-the run time executives being delivered with the Ada compilers
-were too slow and inefficient to be used in modern missile
-systems. A run time executive is the core part of the run time
-system code, or operating system code, that controls task
-scheduling, input/output management and memory management.
-Traditionally, whenever efficient executive (also known as
-kernel) code was required by the application, the user developed
-in-house software. This software was usually written in
-assembly language for optimization.
-
-Because of this shortcoming in the Ada programming
-language, software developers in research and development and
-contractors for project managed systems, are mandated by
-technology to purchase and utilize off-the-shelf third party
-kernel code. The contractor, and eventually the Government,
-must pay a licensing fee for every copy of the kernel code used
-in an embedded system.
-
-The main drawback to this development environment is
-that the Government does not own, nor has the right to modify
-code contained within the kernel. V&V techniques in this
-situation are more difficult than if the complete source code
-were available. Responsibility for system failures due to faulty
-software is yet another area to be resolved under this
-environment.
-
-The Guidance and Control Directorate began a software
-development effort to address these problems. A project to
-develop an experimental run time kernel was begun that will
-eliminate the major drawbacks of the Ada programming language
-mentioned above. The Real Time Executive for Multiprocessor Systems
-(RTEMS) provides full capabilities for management of tasks,
-interrupts, time, and multiple processors in addition to those
-features typical of generic operating systems. The code is
-Government owned, so no licensing fees are necessary. RTEMS has
-been implemented in both the Ada and C programming languages.
-It has been ported to the following processor families:
-
-@itemize @bullet
-@item Altera NIOS II
-@item Analog Devices Blackfin
-@item ARM
-@item Freescale (formerly Motorola) MC68xxx
-@item Freescale (formerly Motorola) MC683xx
-@item Freescale (formerly Motorola) ColdFire
-@item Intel i386 and above
-@item Lattice Semiconductor LM32
-@item NEC V850
-@item MIPS
-@item PowerPC
-@item Renesas (formerly Hitachi) SuperH
-@item Renesas (formerly Hitachi) H8/300
-@item Renesas M32C
-@item SPARC v7, v8, and V9
-@end itemize
-
-Support for other processor families, including RISC, CISC, and DSP, is
-planned. Since almost all of RTEMS is written in a high level language,
-ports to additional processor families require minimal effort.
-
-RTEMS multiprocessor support is capable of handling
-either homogeneous or heterogeneous systems. The kernel
-automatically compensates for architectural differences (byte
-swapping, etc.) between processors. This allows a much easier
-transition from one processor family to another without a major
-system redesign.
-
-Since the proposed standards are still in draft form,
-RTEMS cannot and does not claim compliance. However, the status
-of the standard is being carefully monitored to guarantee that
-RTEMS provides the functionality specified in the standard.
-Once approved, RTEMS will be made compliant.
-
-This document is a detailed users guide for a
-functionally compliant real-time multiprocessor executive. It
-describes the user interface and run-time behavior of Release
-@value{VERSION} of the @value{LANGUAGE} interface
-to RTEMS.
-
diff --git a/doc/user/rbtree.t b/doc/user/rbtree.t
deleted file mode 100644
index 319d35bfe5..0000000000
--- a/doc/user/rbtree.t
+++ /dev/null
@@ -1,91 +0,0 @@
-@c
-@c Copyright 2014 Gedare Bloom.
-@c All rights reserved.
-
-@chapter Red-Black Trees
-
-@cindex rbtrees
-
-@section Introduction
-
-The Red-Black Tree API is an interface to the SuperCore (score) rbtree
-implementation. Within RTEMS, red-black trees are used when a binary search
-tree is needed, including dynamic priority thread queues and non-contiguous
-heap memory. The Red-Black Tree API provided by RTEMS is:
-
-@itemize @bullet
-@c build_id
-@item @code{@value{DIRPREFIX}rtems_rbtree_node} - Red-Black Tree node embedded in another struct
-@item @code{@value{DIRPREFIX}rtems_rbtree_control} - Red-Black Tree control node for an entire tree
-@item @code{@value{DIRPREFIX}rtems_rbtree_initialize} - initialize the red-black tree with nodes
-@item @code{@value{DIRPREFIX}rtems_rbtree_initialize_empty} - initialize the red-black tree as empty
-@item @code{@value{DIRPREFIX}rtems_rbtree_set_off_tree} - Clear a node's links
-@item @code{@value{DIRPREFIX}rtems_rbtree_root} - Return the red-black tree's root node
-@item @code{@value{DIRPREFIX}rtems_rbtree_min} - Return the red-black tree's minimum node
-@item @code{@value{DIRPREFIX}rtems_rbtree_max} - Return the red-black tree's maximum node
-@item @code{@value{DIRPREFIX}rtems_rbtree_left} - Return a node's left child node
-@item @code{@value{DIRPREFIX}rtems_rbtree_right} - Return a node's right child node
-@item @code{@value{DIRPREFIX}rtems_rbtree_parent} - Return a node's parent node
-@item @code{@value{DIRPREFIX}rtems_rbtree_are_nodes_equal} - Are the node's equal ?
-@item @code{@value{DIRPREFIX}rtems_rbtree_is_empty} - Is the red-black tree empty ?
-@item @code{@value{DIRPREFIX}rtems_rbtree_is_min} - Is the Node the minimum in the red-black tree ?
-@item @code{@value{DIRPREFIX}rtems_rbtree_is_max} - Is the Node the maximum in the red-black tree ?
-@item @code{@value{DIRPREFIX}rtems_rbtree_is_root} - Is the Node the root of the red-black tree ?
-@item @code{@value{DIRPREFIX}rtems_rbtree_find} - Find the node with a matching key in the red-black tree
-@item @code{@value{DIRPREFIX}rtems_rbtree_predecessor} - Return the in-order predecessor of a node.
-@item @code{@value{DIRPREFIX}rtems_rbtree_successor} - Return the in-order successor of a node.
-@item @code{@value{DIRPREFIX}rtems_rbtree_extract} - Remove the node from the red-black tree
-@item @code{@value{DIRPREFIX}rtems_rbtree_get_min} - Remove the minimum node from the red-black tree
-@item @code{@value{DIRPREFIX}rtems_rbtree_get_max} - Remove the maximum node from the red-black tree
-@item @code{@value{DIRPREFIX}rtems_rbtree_peek_min} - Returns the minimum node from the red-black tree
-@item @code{@value{DIRPREFIX}rtems_rbtree_peek_max} - Returns the maximum node from the red-black tree
-@item @code{@value{DIRPREFIX}rtems_rbtree_insert} - Add the node to the red-black tree
-@end itemize
-
-@section Background
-
-The Red-Black Trees API is a thin layer above the SuperCore Red-Black Trees
-implementation. A Red-Black Tree is defined by a control node with pointers to
-the root, minimum, and maximum nodes in the tree. Each node in the tree
-consists of a parent pointer, two children pointers, and a color attribute. A
-tree is parameterized as either unique, meaning identical keys are rejected, or
-not, in which case duplicate keys are allowed.
-
-Users must provide a comparison functor that gets passed to functions that need
-to compare nodes. In addition, no internal synchronization is offered within
-the red-black tree implementation, thus users must ensure at most one thread
-accesses a red-black tree instance at a time.
-
-@subsection Nodes
-
-A red-black tree is made up from nodes that orginate from a red-black tree control
-object. A node is of type @code{@value{DIRPREFIX}rtems_rbtree_node}. The node
-is designed to be part of a user data structure. To obtain the encapsulating
-structure users can use the @code{RTEMS_CONTAINER_OF} macro.
-The node can be placed anywhere within the user's structure and the macro will
-calculate the structure's address from the node's address.
-
-@subsection Controls
-
-A red-black tree is rooted with a control object. Red-Black Tree control
-provide the user with access to the nodes on the red-black tree. The
-implementation does not require special checks for manipulating the root of the
-red-black tree. To accomplish this the
-@code{@value{DIRPREFIX}rtems_rbtree_control} structure is treated as a
-@code{@value{DIRPREFIX}rtems_rbtree_node} structure with a @code{NULL} parent
-and left child pointing to the root.
-
-@section Operations
-
-Examples for using the red-black trees
-can be found in the testsuites/sptests/sprbtree01/init.c file.
-
-@section Directives
-
-@subsection Documentation for the Red-Black Tree Directives
-
-@cindex rbtree doc
-
-Source documentation for the Red-Black Tree API can be found in the
-generated Doxygen output for cpukit/sapi.
-
diff --git a/doc/user/region.t b/doc/user/region.t
deleted file mode 100644
index 33b45579d8..0000000000
--- a/doc/user/region.t
+++ /dev/null
@@ -1,729 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Region Manager
-
-@cindex regions
-
-@section Introduction
-
-The region manager provides facilities to dynamically
-allocate memory in variable sized units. The directives
-provided by the region manager are:
-
-@itemize @bullet
-@item @code{@value{DIRPREFIX}region_create} - Create a region
-@item @code{@value{DIRPREFIX}region_ident} - Get ID of a region
-@item @code{@value{DIRPREFIX}region_delete} - Delete a region
-@item @code{@value{DIRPREFIX}region_extend} - Add memory to a region
-@item @code{@value{DIRPREFIX}region_get_segment} - Get segment from a region
-@item @code{@value{DIRPREFIX}region_return_segment} - Return segment to a region
-@item @code{@value{DIRPREFIX}region_get_segment_size} - Obtain size of a segment
-@item @code{@value{DIRPREFIX}region_resize_segment} - Change size of a segment
-@end itemize
-
-@section Background
-
-@subsection Region Manager Definitions
-
-@cindex region, definition
-@cindex segment, definition
-
-A region makes up a physically contiguous memory
-space with user-defined boundaries from which variable-sized
-segments are dynamically allocated and deallocated. A segment
-is a variable size section of memory which is allocated in
-multiples of a user-defined page size. This page size is
-required to be a multiple of four greater than or equal to four.
-For example, if a request for a 350-byte segment is made in a
-region with 256-byte pages, then a 512-byte segment is allocated.
-
-Regions are organized as doubly linked chains of
-variable sized memory blocks. Memory requests are allocated
-using a first-fit algorithm. If available, the requester
-receives the number of bytes requested (rounded up to the next
-page size). RTEMS requires some overhead from the region's
-memory for each segment that is allocated. Therefore, an
-application should only modify the memory of a segment that has
-been obtained from the region. The application should NOT
-modify the memory outside of any obtained segments and within
-the region's boundaries while the region is currently active in
-the system.
-
-Upon return to the region, the free block is
-coalesced with its neighbors (if free) on both sides to produce
-the largest possible unused block.
-
-@subsection Building an Attribute Set
-
-@cindex region attribute set, building
-
-In general, an attribute set is built by a bitwise OR
-of the desired attribute components. The set of valid region
-attributes is provided in the following table:
-
-@itemize @bullet
-@item @code{@value{RPREFIX}FIFO} - tasks wait by FIFO (default)
-@item @code{@value{RPREFIX}PRIORITY} - tasks wait by priority
-@end itemize
-
-Attribute values are specifically designed to be
-mutually exclusive, therefore bitwise OR and addition operations
-are equivalent as long as each attribute appears exactly once in
-the component list. An attribute listed as a default is not
-required to appear in the attribute list, although it is a good
-programming practice to specify default attributes. If all
-defaults are desired, the attribute
-@code{@value{RPREFIX}DEFAULT_ATTRIBUTES} should be
-specified on this call.
-
-This example demonstrates the attribute_set parameter
-needed to create a region with the task priority waiting queue
-discipline. The attribute_set parameter to the
-@code{@value{DIRPREFIX}region_create}
-directive should be @code{@value{RPREFIX}PRIORITY}.
-
-@subsection Building an Option Set
-
-In general, an option is built by a bitwise OR of the
-desired option components. The set of valid options for the
-@code{@value{DIRPREFIX}region_get_segment} directive are
-listed in the following table:
-
-@itemize @bullet
-@item @code{@value{RPREFIX}WAIT} - task will wait for segment (default)
-@item @code{@value{RPREFIX}NO_WAIT} - task should not wait
-@end itemize
-
-Option values are specifically designed to be
-mutually exclusive, therefore bitwise OR and addition operations
-are equivalent as long as each option appears exactly once in
-the component list. An option listed as a default is not
-required to appear in the option list, although it is a good
-programming practice to specify default options. If all
-defaults are desired, the option
-@code{@value{RPREFIX}DEFAULT_OPTIONS} should be
-specified on this call.
-
-This example demonstrates the option parameter needed
-to poll for a segment. The option parameter passed to the
-@code{@value{DIRPREFIX}region_get_segment} directive should
-be @code{@value{RPREFIX}NO_WAIT}.
-
-@section Operations
-
-@subsection Creating a Region
-
-The @code{@value{DIRPREFIX}region_create} directive creates a region with the
-user-defined name. The user may select FIFO or task priority as
-the method for placing waiting tasks in the task wait queue.
-RTEMS allocates a Region Control Block (RNCB) from the RNCB free
-list to maintain the newly created region. RTEMS also generates
-a unique region ID which is returned to the calling task.
-
-It is not possible to calculate the exact number of
-bytes available to the user since RTEMS requires overhead for
-each segment allocated. For example, a region with one segment
-that is the size of the entire region has more available bytes
-than a region with two segments that collectively are the size
-of the entire region. This is because the region with one
-segment requires only the overhead for one segment, while the
-other region requires the overhead for two segments.
-
-Due to automatic coalescing, the number of segments
-in the region dynamically changes. Therefore, the total
-overhead required by RTEMS dynamically changes.
-
-@subsection Obtaining Region IDs
-
-When a region is created, RTEMS generates a unique
-region ID and assigns it to the created region until it is
-deleted. The region ID may be obtained by either of two
-methods. First, as the result of an invocation of the
-@code{@value{DIRPREFIX}region_create} directive,
-the region ID is stored in a user
-provided location. Second, the region ID may be obtained later
-using the @code{@value{DIRPREFIX}region_ident} directive.
-The region ID is used by other region manager directives to
-access this region.
-
-@subsection Adding Memory to a Region
-
-The @code{@value{DIRPREFIX}region_extend} directive may be used to add memory
-to an existing region. The caller specifies the size in bytes
-and starting address of the memory being added.
-
-NOTE: Please see the release notes or RTEMS source
-code for information regarding restrictions on the location of
-the memory being added in relation to memory already in the
-region.
-
-@subsection Acquiring a Segment
-
-The @code{@value{DIRPREFIX}region_get_segment} directive attempts to acquire
-a segment from a specified region. If the region has enough
-available free memory, then a segment is returned successfully
-to the caller. When the segment cannot be allocated, one of the
-following situations applies:
-
-@itemize @bullet
-@item By default, the calling task will wait forever to acquire the segment.
-
-@item Specifying the @code{@value{RPREFIX}NO_WAIT} option forces
-an immediate return with an error status code.
-
-@item Specifying a timeout limits the interval the task will
-wait before returning with an error status code.
-@end itemize
-
-If the task waits for the segment, then it is placed
-in the region's task wait queue in either FIFO or task priority
-order. All tasks waiting on a region are returned an error when
-the message queue is deleted.
-
-@subsection Releasing a Segment
-
-When a segment is returned to a region by the
-@code{@value{DIRPREFIX}region_return_segment} directive, it is merged with its
-unallocated neighbors to form the largest possible segment. The
-first task on the wait queue is examined to determine if its
-segment request can now be satisfied. If so, it is given a
-segment and unblocked. This process is repeated until the first
-task's segment request cannot be satisfied.
-
-@subsection Obtaining the Size of a Segment
-
-The @code{@value{DIRPREFIX}region_get_segment_size} directive returns the
-size in bytes of the specified segment. The size returned
-includes any "extra" memory included in the segment because of
-rounding up to a page size boundary.
-
-@subsection Changing the Size of a Segment
-
-The @code{@value{DIRPREFIX}region_resize_segment} directive is used
-to change the size in bytes of the specified segment. The size may be
-increased or decreased. When increasing the size of a segment, it is
-possible that the request cannot be satisfied. This directive provides
-functionality similar to the @code{realloc()} function in the Standard
-C Library.
-
-@subsection Deleting a Region
-
-A region can be removed from the system and returned
-to RTEMS with the @code{@value{DIRPREFIX}region_delete}
-directive. When a region is
-deleted, its control block is returned to the RNCB free list. A
-region with segments still allocated is not allowed to be
-deleted. Any task attempting to do so will be returned an
-error. As a result of this directive, all tasks blocked waiting
-to obtain a segment from the region will be readied and returned
-a status code which indicates that the region was deleted.
-
-@section Directives
-
-This section details the region manager's directives.
-A subsection is dedicated to each of this manager's directives
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-@c
-@c
-@c
-@page
-@subsection REGION_CREATE - Create a region
-
-@cindex create a region
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_region_create
-@example
-rtems_status_code rtems_region_create(
- rtems_name name,
- void *starting_address,
- intptr_t length,
- uint32_t page_size,
- rtems_attribute attribute_set,
- rtems_id *id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Region_Create (
- Name : in RTEMS.Name;
- Starting_Address : in RTEMS.Address;
- Length : in RTEMS.Unsigned32;
- Page_Size : in RTEMS.Unsigned32;
- Attribute_Set : in RTEMS.Attribute;
- ID : out RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-@code{@value{RPREFIX}SUCCESSFUL} - region created successfully@*
-@code{@value{RPREFIX}INVALID_NAME} - invalid region name@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{id} is NULL@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{starting_address} is NULL@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - address not on four byte boundary@*
-@code{@value{RPREFIX}TOO_MANY} - too many regions created@*
-@code{@value{RPREFIX}INVALID_SIZE} - invalid page size
-
-@subheading DESCRIPTION:
-
-This directive creates a region from a physically
-contiguous memory space which starts at starting_address and is
-length bytes long. Segments allocated from the region will be a
-multiple of page_size bytes in length. The assigned region id
-is returned in id. This region id is used as an argument to
-other region related directives to access the region.
-
-For control and maintenance of the region, RTEMS
-allocates and initializes an RNCB from the RNCB free pool. Thus
-memory from the region is not used to store the RNCB. However,
-some overhead within the region is required by RTEMS each time a
-segment is constructed in the region.
-
-Specifying @code{@value{RPREFIX}PRIORITY} in attribute_set causes tasks
-waiting for a segment to be serviced according to task priority.
-Specifying @code{@value{RPREFIX}FIFO} in attribute_set or selecting
-@code{@value{RPREFIX}DEFAULT_ATTRIBUTES} will cause waiting tasks to
-be serviced in First In-First Out order.
-
-The @code{starting_address} parameter must be aligned on a
-four byte boundary. The @code{page_size} parameter must be a multiple
-of four greater than or equal to eight.
-
-@subheading NOTES:
-
-This directive will not cause the calling task to be
-preempted.
-
-The following region attribute constants are defined
-by RTEMS:
-
-@itemize @bullet
-@item @code{@value{RPREFIX}FIFO} - tasks wait by FIFO (default)
-@item @code{@value{RPREFIX}PRIORITY} - tasks wait by priority
-@end itemize
-
-@c
-@c
-@c
-@page
-@subsection REGION_IDENT - Get ID of a region
-
-@cindex get ID of a region
-@cindex obtain ID of a region
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_region_ident
-@example
-rtems_status_code rtems_region_ident(
- rtems_name name,
- rtems_id *id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Region_Ident (
- Name : in RTEMS.Name;
- ID : out RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-@code{@value{RPREFIX}SUCCESSFUL} - region identified successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{id} is NULL@*
-@code{@value{RPREFIX}INVALID_NAME} - region name not found
-
-@subheading DESCRIPTION:
-
-This directive obtains the region id associated with
-the region name to be acquired. If the region name is not
-unique, then the region id will match one of the regions with
-that name. However, this region id is not guaranteed to
-correspond to the desired region. The region id is used to
-access this region in other region manager directives.
-
-@subheading NOTES:
-
-This directive will not cause the running task to be preempted.
-
-@c
-@c
-@c
-@page
-@subsection REGION_DELETE - Delete a region
-
-@cindex delete a region
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_region_delete
-@example
-rtems_status_code rtems_region_delete(
- rtems_id id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Region_Delete (
- ID : in RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-@code{@value{RPREFIX}SUCCESSFUL} - region deleted successfully@*
-@code{@value{RPREFIX}INVALID_ID} - invalid region id@*
-@code{@value{RPREFIX}RESOURCE_IN_USE} - segments still in use
-
-@subheading DESCRIPTION:
-
-This directive deletes the region specified by id.
-The region cannot be deleted if any of its segments are still
-allocated. The RNCB for the deleted region is reclaimed by
-RTEMS.
-
-@subheading NOTES:
-
-This directive will not cause the calling task to be preempted.
-
-The calling task does not have to be the task that
-created the region. Any local task that knows the region id can
-delete the region.
-
-@c
-@c
-@c
-@page
-@subsection REGION_EXTEND - Add memory to a region
-
-@cindex add memory to a region
-@cindex region, add memory
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_region_extend
-@example
-rtems_status_code rtems_region_extend(
- rtems_id id,
- void *starting_address,
- intptr_t length
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Region_Extend (
- ID : in RTEMS.ID;
- Starting_Address : in RTEMS.Address;
- Length : in RTEMS.Unsigned32;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-@code{@value{RPREFIX}SUCCESSFUL} - region extended successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{starting_address} is NULL@*
-@code{@value{RPREFIX}INVALID_ID} - invalid region id@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - invalid address of area to add
-
-@subheading DESCRIPTION:
-
-This directive adds the memory which starts at
-starting_address for length bytes to the region specified by id.
-
-@subheading NOTES:
-
-This directive will not cause the calling task to be preempted.
-
-The calling task does not have to be the task that
-created the region. Any local task that knows the region id can
-extend the region.
-
-@c
-@c
-@c
-@page
-@subsection REGION_GET_SEGMENT - Get segment from a region
-
-@cindex get segment from region
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_region_get_segment
-@example
-rtems_status_code rtems_region_get_segment(
- rtems_id id,
- intptr_t size,
- rtems_option option_set,
- rtems_interval timeout,
- void **segment
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Region_Get_Segment (
- ID : in RTEMS.ID;
- Size : in RTEMS.Unsigned32;
- Option_Set : in RTEMS.Option;
- Timeout : in RTEMS.Interval;
- Segment : out RTEMS.Address;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-@code{@value{RPREFIX}SUCCESSFUL} - segment obtained successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{segment} is NULL@*
-@code{@value{RPREFIX}INVALID_ID} - invalid region id@*
-@code{@value{RPREFIX}INVALID_SIZE} - request is for zero bytes or exceeds
-the size of maximum segment which is possible for this region@*
-@code{@value{RPREFIX}UNSATISFIED} - segment of requested size not available@*
-@code{@value{RPREFIX}TIMEOUT} - timed out waiting for segment@*
-@code{@value{RPREFIX}OBJECT_WAS_DELETED} - region deleted while waiting
-
-@subheading DESCRIPTION:
-
-This directive obtains a variable size segment from
-the region specified by id. The address of the allocated
-segment is returned in segment. The @code{@value{RPREFIX}WAIT}
-and @code{@value{RPREFIX}NO_WAIT} components
-of the options parameter are used to specify whether the calling
-tasks wish to wait for a segment to become available or return
-immediately if no segment is available. For either option, if a
-sufficiently sized segment is available, then the segment is
-successfully acquired by returning immediately with the
-@code{@value{RPREFIX}SUCCESSFUL} status code.
-
-If the calling task chooses to return immediately and
-a segment large enough is not available, then an error code
-indicating this fact is returned. If the calling task chooses
-to wait for the segment and a segment large enough is not
-available, then the calling task is placed on the region's
-segment wait queue and blocked. If the region was created with
-the @code{@value{RPREFIX}PRIORITY} option, then the calling
-task is inserted into the
-wait queue according to its priority. However, if the region
-was created with the @code{@value{RPREFIX}FIFO} option, then the calling
-task is placed at the rear of the wait queue.
-
-The timeout parameter specifies the maximum interval
-that a task is willing to wait to obtain a segment. If timeout
-is set to @code{@value{RPREFIX}NO_TIMEOUT}, then the
-calling task will wait forever.
-
-@subheading NOTES:
-
-The actual length of the allocated segment may be
-larger than the requested size because a segment size is always
-a multiple of the region's page size.
-
-The following segment acquisition option constants
-are defined by RTEMS:
-
-@itemize @bullet
-@item @code{@value{RPREFIX}WAIT} - task will wait for segment (default)
-@item @code{@value{RPREFIX}NO_WAIT} - task should not wait
-@end itemize
-
-A clock tick is required to support the timeout functionality of
-this directive.
-
-@c
-@c
-@c
-@page
-@subsection REGION_RETURN_SEGMENT - Return segment to a region
-
-@cindex return segment to region
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_region_return_segment
-@example
-rtems_status_code rtems_region_return_segment(
- rtems_id id,
- void *segment
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Region_Return_Segment (
- ID : in RTEMS.ID;
- Segment : in RTEMS.Address;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-@code{@value{RPREFIX}SUCCESSFUL} - segment returned successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{segment} is NULL@*
-@code{@value{RPREFIX}INVALID_ID} - invalid region id@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - segment address not in region
-
-@subheading DESCRIPTION:
-
-This directive returns the segment specified by
-segment to the region specified by id. The returned segment is
-merged with its neighbors to form the largest possible segment.
-The first task on the wait queue is examined to determine if its
-segment request can now be satisfied. If so, it is given a
-segment and unblocked. This process is repeated until the first
-task's segment request cannot be satisfied.
-
-@subheading NOTES:
-
-This directive will cause the calling task to be
-preempted if one or more local tasks are waiting for a segment
-and the following conditions exist:
-
-@itemize @bullet
-@item a waiting task has a higher priority than the calling task
-
-@item the size of the segment required by the waiting task
-is less than or equal to the size of the segment returned.
-@end itemize
-
-@c
-@c
-@c
-@page
-@subsection REGION_GET_SEGMENT_SIZE - Obtain size of a segment
-
-@cindex get size of segment
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_region_get_segment_size
-@example
-rtems_status_code rtems_region_get_segment_size(
- rtems_id id,
- void *segment,
- ssize_t *size
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Region_Get_Segment_Size (
- ID : in RTEMS.ID;
- Segment : in RTEMS.Address;
- Size : out RTEMS.Unsigned32;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-@code{@value{RPREFIX}SUCCESSFUL} - segment obtained successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{segment} is NULL@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{size} is NULL@*
-@code{@value{RPREFIX}INVALID_ID} - invalid region id@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - segment address not in region
-
-@subheading DESCRIPTION:
-
-This directive obtains the size in bytes of the specified segment.
-
-@subheading NOTES:
-
-The actual length of the allocated segment may be
-larger than the requested size because a segment size is always
-a multiple of the region's page size.
-
-@c
-@c
-@c
-@page
-@subsection REGION_RESIZE_SEGMENT - Change size of a segment
-
-@cindex resize segment
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_region_resize_segment
-@example
-rtems_status_code rtems_region_resize_segment(
- rtems_id id,
- void *segment,
- ssize_t size,
- ssize_t *old_size
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Region_Resize_Segment (
- ID : in RTEMS.ID;
- Segment : in RTEMS.Address;
- Size : in RTEMS.Unsigned32;
- Old_Size : out RTEMS.Unsigned32;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-@code{@value{RPREFIX}SUCCESSFUL} - segment obtained successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{segment} is NULL@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{old_size} is NULL@*
-@code{@value{RPREFIX}INVALID_ID} - invalid region id@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - segment address not in region
-@code{@value{RPREFIX}UNSATISFIED} - unable to make segment larger
-
-@subheading DESCRIPTION:
-
-This directive is used to increase or decrease the size of
-a segment. When increasing the size of a segment, it
-is possible that there is not memory available contiguous
-to the segment. In this case, the request is unsatisfied.
-
-@subheading NOTES:
-
-If an attempt to increase the size of a segment fails, then
-the application may want to allocate a new segment of the desired
-size, copy the contents of the original segment to the new, larger
-segment and then return the original segment.
-
diff --git a/doc/user/rtemsarc.png b/doc/user/rtemsarc.png
deleted file mode 100644
index 13c3b30789..0000000000
--- a/doc/user/rtemsarc.png
+++ /dev/null
Binary files differ
diff --git a/doc/user/rtemsarc.txt b/doc/user/rtemsarc.txt
deleted file mode 100644
index 98b5f2c28b..0000000000
--- a/doc/user/rtemsarc.txt
+++ /dev/null
@@ -1,11 +0,0 @@
- +-----------------------------------------------------------+
- | Application Dependent Software |
- | +----------------------------------------+ |
- | | Standard Application Components | |
- | | +-------------+---+ |
- | +---+-----------+ | | |
- | | Board Support | | RTEMS | |
- | | Package | | | |
- +----+---------------+--------------+-----------------+-----|
- | Target Hardware |
- +-----------------------------------------------------------+
diff --git a/doc/user/rtemspie.eps b/doc/user/rtemspie.eps
deleted file mode 100644
index ad0eebbb5f..0000000000
--- a/doc/user/rtemspie.eps
+++ /dev/null
@@ -1,2164 +0,0 @@
-%!PS-Adobe-3.0 EPSF-3.0
-%%Creator: (ImageMagick)
-%%Title: (rtemspie.eps)
-%%CreationDate: (Wed Oct 6 10:47:26 1999)
-%%BoundingBox: 0 213 495 508
-%%DocumentData: Clean7Bit
-%%LanguageLevel: 1
-%%Pages: 0
-%%EndComments
-
-%%BeginDefaults
-%%PageOrientation: Portrait
-%%EndDefaults
-
-%%BeginProlog
-%
-% Display a color image. The image is displayed in color on
-% Postscript viewers or printers that support color, otherwise
-% it is displayed as grayscale.
-%
-/buffer 512 string def
-/byte 1 string def
-/color_packet 3 string def
-/pixels 768 string def
-
-/DirectClassPacket
-{
- %
- % Get a DirectClass packet.
- %
- % Parameters:
- % red.
- % green.
- % blue.
- % length: number of pixels minus one of this color (optional).
- %
- currentfile color_packet readhexstring pop pop
- compression 0 gt
- {
- /number_pixels 3 def
- }
- {
- currentfile byte readhexstring pop 0 get
- /number_pixels exch 1 add 3 mul def
- } ifelse
- 0 3 number_pixels 1 sub
- {
- pixels exch color_packet putinterval
- } for
- pixels 0 number_pixels getinterval
-} bind def
-
-/DirectClassImage
-{
- %
- % Display a DirectClass image.
- %
- systemdict /colorimage known
- {
- columns rows 8
- [
- columns 0 0
- rows neg 0 rows
- ]
- { DirectClassPacket } false 3 colorimage
- }
- {
- %
- % No colorimage operator; convert to grayscale.
- %
- columns rows 8
- [
- columns 0 0
- rows neg 0 rows
- ]
- { GrayDirectClassPacket } image
- } ifelse
-} bind def
-
-/GrayDirectClassPacket
-{
- %
- % Get a DirectClass packet; convert to grayscale.
- %
- % Parameters:
- % red
- % green
- % blue
- % length: number of pixels minus one of this color (optional).
- %
- currentfile color_packet readhexstring pop pop
- color_packet 0 get 0.299 mul
- color_packet 1 get 0.587 mul add
- color_packet 2 get 0.114 mul add
- cvi
- /gray_packet exch def
- compression 0 gt
- {
- /number_pixels 1 def
- }
- {
- currentfile byte readhexstring pop 0 get
- /number_pixels exch 1 add def
- } ifelse
- 0 1 number_pixels 1 sub
- {
- pixels exch gray_packet put
- } for
- pixels 0 number_pixels getinterval
-} bind def
-
-/GrayPseudoClassPacket
-{
- %
- % Get a PseudoClass packet; convert to grayscale.
- %
- % Parameters:
- % index: index into the colormap.
- % length: number of pixels minus one of this color (optional).
- %
- currentfile byte readhexstring pop 0 get
- /offset exch 3 mul def
- /color_packet colormap offset 3 getinterval def
- color_packet 0 get 0.299 mul
- color_packet 1 get 0.587 mul add
- color_packet 2 get 0.114 mul add
- cvi
- /gray_packet exch def
- compression 0 gt
- {
- /number_pixels 1 def
- }
- {
- currentfile byte readhexstring pop 0 get
- /number_pixels exch 1 add def
- } ifelse
- 0 1 number_pixels 1 sub
- {
- pixels exch gray_packet put
- } for
- pixels 0 number_pixels getinterval
-} bind def
-
-/PseudoClassPacket
-{
- %
- % Get a PseudoClass packet.
- %
- % Parameters:
- % index: index into the colormap.
- % length: number of pixels minus one of this color (optional).
- %
- currentfile byte readhexstring pop 0 get
- /offset exch 3 mul def
- /color_packet colormap offset 3 getinterval def
- compression 0 gt
- {
- /number_pixels 3 def
- }
- {
- currentfile byte readhexstring pop 0 get
- /number_pixels exch 1 add 3 mul def
- } ifelse
- 0 3 number_pixels 1 sub
- {
- pixels exch color_packet putinterval
- } for
- pixels 0 number_pixels getinterval
-} bind def
-
-/PseudoClassImage
-{
- %
- % Display a PseudoClass image.
- %
- % Parameters:
- % class: 0-PseudoClass or 1-Grayscale.
- %
- currentfile buffer readline pop
- token pop /class exch def pop
- class 0 gt
- {
- currentfile buffer readline pop
- token pop /depth exch def pop
- /grays columns 8 add depth sub depth mul 8 idiv string def
- columns rows depth
- [
- columns 0 0
- rows neg 0 rows
- ]
- { currentfile grays readhexstring pop } image
- }
- {
- %
- % Parameters:
- % colors: number of colors in the colormap.
- % colormap: red, green, blue color packets.
- %
- currentfile buffer readline pop
- token pop /colors exch def pop
- /colors colors 3 mul def
- /colormap colors string def
- currentfile colormap readhexstring pop pop
- systemdict /colorimage known
- {
- columns rows 8
- [
- columns 0 0
- rows neg 0 rows
- ]
- { PseudoClassPacket } false 3 colorimage
- }
- {
- %
- % No colorimage operator; convert to grayscale.
- %
- columns rows 8
- [
- columns 0 0
- rows neg 0 rows
- ]
- { GrayPseudoClassPacket } image
- } ifelse
- } ifelse
-} bind def
-
-/DisplayImage
-{
- %
- % Display a DirectClass or PseudoClass image.
- %
- % Parameters:
- % x & y translation.
- % x & y scale.
- % label pointsize.
- % image label.
- % image columns & rows.
- % class: 0-DirectClass or 1-PseudoClass.
- % compression: 0-RunlengthEncodedCompression or 1-NoCompression.
- % hex color packets.
- %
- gsave
- currentfile buffer readline pop
- token pop /x exch def
- token pop /y exch def pop
- x y translate
- currentfile buffer readline pop
- token pop /x exch def
- token pop /y exch def pop
- currentfile buffer readline pop
- token pop /pointsize exch def pop
- /Helvetica findfont pointsize scalefont setfont
- x y scale
- currentfile buffer readline pop
- token pop /columns exch def
- token pop /rows exch def pop
- currentfile buffer readline pop
- token pop /class exch def pop
- currentfile buffer readline pop
- token pop /compression exch def pop
- class 0 gt { PseudoClassImage } { DirectClassImage } ifelse
- grestore
-} bind def
-%%EndProlog
-%%Page: 1 1
-%%PageBoundingBox: 0 213 495 508
-userdict begin
-%%BeginData:
-DisplayImage
-0 213
-495.101124 295.280899
-12
-1787 1066
-1
-0
-0
-256
-000000
-000033
-000066
-000099
-0000cc
-0000ff
-003300
-003333
-003366
-003399
-0033cc
-0033ff
-006600
-006633
-006666
-006699
-0066cc
-0066ff
-009900
-009933
-009966
-009999
-0099cc
-0099ff
-00cc00
-00cc33
-00cc66
-00cc99
-00cccc
-00ccff
-00ff00
-00ff33
-00ff66
-00ff99
-00ffcc
-00ffff
-330000
-330033
-330066
-330099
-3300cc
-3300ff
-333300
-333333
-333366
-333399
-3333cc
-3333ff
-336600
-336633
-336666
-336699
-3366cc
-3366ff
-339900
-339933
-339966
-339999
-3399cc
-3399ff
-33cc00
-33cc33
-33cc66
-33cc99
-33cccc
-33ccff
-33ff00
-33ff33
-33ff66
-33ff99
-33ffcc
-33ffff
-660000
-660033
-660066
-660099
-6600cc
-6600ff
-663300
-663333
-663366
-663399
-6633cc
-6633ff
-666600
-666633
-666666
-666699
-6666cc
-6666ff
-669900
-669933
-669966
-669999
-6699cc
-6699ff
-66cc00
-66cc33
-66cc66
-66cc99
-66cccc
-66ccff
-66ff00
-66ff33
-66ff66
-66ff99
-66ffcc
-66ffff
-990000
-990033
-990066
-990099
-9900cc
-9900ff
-993300
-993333
-993366
-993399
-9933cc
-9933ff
-996600
-996633
-996666
-996699
-9966cc
-9966ff
-999900
-999933
-999966
-999999
-9999cc
-9999ff
-99cc00
-99cc33
-99cc66
-99cc99
-99cccc
-99ccff
-99ff00
-99ff33
-99ff66
-99ff99
-99ffcc
-99ffff
-cc0000
-cc0033
-cc0066
-cc0099
-cc00cc
-cc00ff
-cc3300
-cc3333
-cc3366
-cc3399
-cc33cc
-cc33ff
-cc6600
-cc6633
-cc6666
-cc6699
-cc66cc
-cc66ff
-cc9900
-cc9933
-cc9966
-cc9999
-cc99cc
-cc99ff
-cccc00
-cccc33
-cccc66
-cccc99
-cccccc
-ccccff
-ccff00
-ccff33
-ccff66
-ccff99
-ccffcc
-ccffff
-ff0000
-ff0033
-ff0066
-ff0099
-ff00cc
-ff00ff
-ff3300
-ff3333
-ff3366
-ff3399
-ff33cc
-ff33ff
-ff6600
-ff6633
-ff6666
-ff6699
-ff66cc
-ff66ff
-ff9900
-ff9933
-ff9966
-ff9999
-ff99cc
-ff99ff
-ffcc00
-ffcc33
-ffcc66
-ffcc99
-ffcccc
-ffccff
-ffff00
-ffff33
-ffff66
-ffff99
-ffffcc
-ffffff
-000000
-0d0d0d
-1a1a1a
-282828
-353535
-434343
-505050
-5d5d5d
-6b6b6b
-787878
-868686
-939393
-a1a1a1
-aeaeae
-bbbbbb
-c9c9c9
-d6d6d6
-e4e4e4
-f1f1f1
-ffffff
-000000
-000000
-000000
-000000
-000000
-000000
-000000
-000000
-000000
-000000
-000000
-000000
-000000
-000000
-000000
-000000
-000000
-000000
-000000
-000000
-d7ffd7ffd7ffd7ffd7ffd7ffd7ffd7ffd7ffd7ffd75b002dd7ffd7ffd7ffd7ffd7ffd7ff
-d7aa0071d7ffd7ffd7ffd7ffd7ffd7ffd772009dd7ffd7ffd7ffd7ffd7ffd7ffd74900c3
-d7ffd7ffd7ffd7ffd7ffd7ffd72700e1d7ffd7ffd7ffd7ffd7ffd7ffd70a00fdd7ffd7ff
-d7ffd7ffd7ffd7ef00ff0017d7ffd7ffd7ffd7ffd7ffd7d700ff002dd7ffd7ffd7ffd7ff
-d7ffd7c200ff0041d7ffd7ffd7ffd7ffd7ffd7ad0072d7710072d7ffd7ffd7ffd7ffd7ff
-d7990065d79d0065d7ffd7ffd7ffd7ffd7ffd789005bd7bf005bd7ffd7ffd7ffd7ffd7ff
-d77b0057d7d50057d7ffd7ffd7ffd7ffd7ffd76c0055d7e90055d7ffd7ffd7ffd7ffd7ff
-d75d0051d7780000d7850051d7ffd7ffd7ffd7ffd7ffd74f004dd7830000d790004dd7ff
-d7ffd7ffd7ffd7ffd7410049d78e0000d79b0049d7ffd7ffd7ffd7ffd7ffd7340044d799
-0000d7a60044d7ffd7ffd7ffd7ffd7ffd728003fd7ffd757003fd7ffd7ffd7ffd7ffd7ff
-d71c003cd7ffd769003cd7ffd7ffd7ffd7ffd7ffd710003bd7ffd777003bd7ffd7ffd7ff
-d7ffd7ffd704003ad7ffd785003ad7ffd7ffd7ffd7ffd7f80039d7ffd7930039d7ffd7ff
-d7ffd7ffd7ed0037d7c90000d7d60037d7ffd7ffd7ffd7ffd7e30035d7d00000d7dd0035
-d7ffd7ffd7ffd7ffd7d90033d7d70000d7e40033d7ffd7ffd7ffd7ffd7cf0031d7de0000
-d7eb0031d7ffd7ffd7ffd7ffd7c40030d7ffd7d90030d7ffd7ffd7ffd7ffd7b9002ed7ff
-d7e7002ed7ffd7ffd7ffd7ffd7af002cd7ffd7f5002cd7ffd7ffd7ffd7ffd7a5002ad7ff
-d7ffd703002ad7ffd7ffd7ffd7ffd79b0029d7ffd7ffd70f0029d7ffd7ffd7ffd7ffd792
-0029d7ffd7040000d7ffd7110029d7ffd7ffd7ffd7ffd7890029d7ffd7090000d7ffd716
-0029d7ffd7ffd7ffd7ffd7800029d7ffd70d0000d7ffd71a0029d7ffd7ffd7ffd7ffd777
-0029d7ffd7120000d7ffd71f0029d7ffd7ffd7ffd7ffd76e0028d7ffd7ffd73d0028d7ff
-d7ffd7ffd7ffd7660028d7ffd7ffd7450028d7ffd7ffd7ffd7ffd75d0028d7ffd7ffd74f
-0028d7ffd7ffd7ffd7ffd7540028d7ffd7ffd7570028d7ffd7ffd7ffd7ffd74b0028d7ff
-d7ffd7610027d7ffd7ffd7ffd7ffd7430028d7ffd72d0000d7ffd73a0027d7ffd7ffd7ff
-d7ffd73b0027d7ffd7320000d7ffd73e0027d7ffd7ffd7ffd7ffd7330027d7ffd7360000
-d7ffd7430026d7ffd7ffd7ffd7ffd72b0026d7ffd73b0000d7ffd7470026d7ffd7ffd7ff
-d7ffd7230026d7ffd7ffd78c0026d7ffd7ffd7ffd7ffd71b0026d7ffd7ffd7950025d7ff
-d7ffd7ffd7ffd7130025d7ffd7ffd79e0025d7ffd7ffd7ffd7ffd70b0025d7ffd7ffd79c
-0000d7080025d7ffd7ffd7ffd7ffd7030025d7ffd7ffd7a00000d70d0024d7ffd7ffd7ff
-d7fc0024d7ffd7540000d7ffd74d0000d7120023d7ffd7ffd7ffd7f50024d7010000d7ff
-d7550000d7ffd74c0000d7170023d7ffd7ffd7ffd7ee0023d7060000d7ffd7540000d7ff
-d7690022d7ffd7ffd7ffd7e70023d70a0000d7ffd7540000d7ffd76d0022d7ffd7ffd7ff
-d7e00022d70f0000d7ffd7ffd7c60021d7ffd7ffd7ffd7d90022d7ffd7ffd7b30000d72a
-0021d7ffd7ffd7ffd7d20021d7ffd7ffd7b60000d72f0021d7ffd7ffd7ffd7cb0020d7ff
-d7ffd7ba0000d7330020d7ffd7ffd7ffd7c40020d7230000d7ffd7ffd7980000d7380020
-d7ffd7ffd7ffd7bd0020d7260000d7ffd74f0000d7ffd7840020d7ffd7ffd7ffd7b60020
-d72b0000d7ffd74e0000d7ffd7880020d7ffd7ffd7ffd7af0020d72f0000d7ffd74d0000
-d7ffd78b0020d7ffd7ffd7ffd7a9001fd7ffd7820000d7ffd78e0020d7ffd7ffd7ffd7a3
-001fd7ffd7ffd7ca0000d74d001fd7ffd7ffd7ffd79d001ed7ffd7ffd7ce0000d750001f
-d7ffd7ffd7ffd797001ed7ffd7ffd7d00000d754001fd7ffd7ffd7ffd791001ed7430000
-d7ffd7ffd78d0000d759001ed7ffd7ffd7ffd78a001ed7470000d7ffd7ffd7eb001fd7ff
-d7ffd7ffd783001ed74b0000d7ffd7490000d7ffd7a2001fd7ffd7ffd7ffd77d001dd750
-0000d7ffd7480000d7ffd7a6001ed7ffd7ffd7ffd777001dd7ffd79d0000d7ffd7a9001e
-d7ffd7ffd7ffd771001dd7ffd7a00000d7ffd73e0000d76c001ed7ffd7ffd7ffd76b001d
-d7ffd7ffd7e30000d76f001ed7ffd7ffd7ffd765001dd7ffd7ffd7e50000d773001ed7ff
-d7ffd7ffd75f001dd7630000d7ffd7ffd7820000d777001ed7ffd7ffd7ffd75a001cd766
-0000d7ffd7ffd7fe001dd7ffd7ffd7ffd755001cd76a0000d7ffd7ffd7ffd701001cd7ff
-d7ffd7ffd74f001cd76e0000d7ffd7420000d7ffd7bf001cd7ffd7ffd7ffd749001cd7ff
-d7b50000d7ffd7c2001cd7ffd7ffd7ffd743001cd7e40001d7170001d71f0002d7080001
-d73f0002d7460000d7ffd7390000d78a001cd7ffd7ffd7ffd73e001bd7e60004d7130005
-d71b0004d7070004d73c0004d7450000d7ffd7380000d78e001bd7ffd7ffd7ffd739001b
-d77d0000d740000dd71a0005d7130005d7190006d7060005d73b0005d7ffd77f0000d791
-001bd7ffd7ffd7ffd733001bd7800000d7420008d71d0005d7130005d7180007d7060005
-d73b0005d7ffd77e0000d795001bd7ffd7ffd7ffd72d001bd7840000d7430006d71d0005
-d7090001d7070005d7180000d7010004d7060005d7320000d7080004d7ffd7ffd718001b
-d7ffd7ffd7ffd728001bd7870000d7430004d7200002d70a0001d7080003d71c0004d707
-0003d7330000d7090003d7ffd7ffd71a001bd7ffd7ffd7ffd723001bd7cf0004d72e0001
-d7290004d73f0000d7ffd7ffd72b001bd7ffd7ffd7ffd71d001bd7d20004d72d0002d729
-0004d73e0001d7530000d7ffd7d9001bd7ffd7ffd7ffd718001ad7d50004d72d0002d729
-0004d73d0002d7530000d7ffd7330000d7a7001ad7ffd7ffd7ffd7140019d7d80004d72c
-0003d7290004d73c0003d7530000d7ffd7320000d7ab0019d7ffd7ffd7ffd7100019d799
-0000d73f0004d72a0005d7290004d73b0004d7530000d7a40002d7890000d7ae0019d7ff
-d7ffd7ffd70b0019d79c0000d73f0004d7090002d7020004d70c0002d7050009d7060002
-d7080007d70a0004d7090002d7050011d7050006d708000ad7050002d70b0006d70c0002
-d7030004d7bd0004d7ffd73c0019d7ffd7ffd7ffd7060018d7a00000d73e0004d7060005
-d7010007d7070005d703000bd7030005d707000ad7080004d7060005d7050011d704000a
-d703000cd7020005d709000ad7070005d7010008d77a0019d7240006d7ffd73f0018d7ff
-d7ffd7ffd7020017d7e30004d7040007d7000009d7040007d703000bd7010007d7050005
-d7010005d7070004d7040007d7050010d7030004d7020005d702000cd7000007d7080004
-d7020004d7040007d7000009d77a0019d7230007d7ffd7420017d7ffd7ffd7fd0018d7e5
-0004d7040012d7040007d7060004d7050007d7050003d7040005d7060004d7040007d705
-0002d7070005d7030003d7040004d7060003d7060006d7070004d7030005d7040012d779
-0004d7040005d7050003d7240000d7000004d7ffd7440018d7ffd7ffd7f80017d7e80004
-d7070007d7020005d7060004d7060004d7080004d7040004d7050004d7060004d7070004
-d7050001d7070005d7030003d7060003d7060003d7080004d7060004d7050005d7050007
-d7030005d7780002d7060005d7060002d7260004d7860000d7bf0017d7ffd7ffd7f40016
-d7eb0004d7070005d7050004d7060004d7060004d7080004d7040004d7050004d7060004
-d7070004d7050000d7080004d7040004d7050003d7060003d7090003d7060003d7070004
-d7050005d7060004d7150000d7610001d7070005d7070001d7270003d7850000d7c30016
-d7ffd7ffd7f00016d7b10000d73a0004d7070004d7060004d7060004d7060004d7080004
-d7040004d7060003d7060004d7070004d7050000d7070004d7050004d7050004d7050003
-d7090003d7060003d7070004d7050004d7070004d7150000d7610001d7070005d7070001
-d7270003d7850000d7c50016d7ffd7ffd7eb0016d7b50000d7390004d7070004d7070003
-d7060004d7060004d7080004d7040004d7060003d7060004d7070004d70d0005d7050003
-d7060004d7050003d7090003d7050004d7080004d7040004d7070004d7150000d7610001
-d7070005d7080000d7270003d7840000d7c90016d7ffd7ffd7e60016d7b80000d7380004
-d7070004d7070003d7060004d7060004d7080004d70f0004d7060004d7070004d70c0005
-d7100005d7050003d7090003d7040005d7080004d7040004d7070004d7150000d76b0005
-d7310003d7ffd7510016d7ffd7ffd7e20016d7f40004d7070004d7070003d7060004d706
-0004d7080004d70c0007d7060004d7070004d70c0004d70f0007d7050003d7090003d704
-0005d7080005d7030004d7070004d7820005d7310003d7ffd7530016d7ffd7ffd7de0015
-d7f70004d7070004d7070003d7060004d7060004d7080004d7090005d7000003d7060004
-d7070004d70b0004d70c0005d7000004d7050003d7090003d7040005d7080005d7030004
-d7070004d7820005d70c0007d70b0006d7000001d7060003d7040009d7ffd7470015d7ff
-d7ffd7d90016d7f90004d7070004d7070003d7060004d7060004d7080004d7080003d703
-0003d7060004d7070004d70a0005d70b0004d7020004d7050003d7090003d7040005d708
-0005d7030004d7070004d7820005d70b000ad708000ad7060003d7040009d7ffd7490016
-d7ffd7ffd7d40015d7fc0004d7070004d7070003d7060004d7060004d7080004d7070003
-d7040003d7060004d7070004d7090005d70b0003d7040004d7050003d7090003d7040005
-d7090004d7030004d7070004d7820005d70a000cd706000bd7060003d7050004d7750000
-d7d90015d7ffd7ffd7d00015d7c70000d7350004d7070004d7070003d7060004d7060004
-d7080004d7050004d7050003d7060004d7070004d7080005d70b0003d7050004d7050003
-d7090003d7040005d7090004d7030004d7070004d7820005d7090004d7030005d7050002
-d7040003d7060003d7050002d7770000d7db0015d7ffd7ffd7cc0014d7ca0000d7350004
-d7070004d7070003d7060004d7060004d7080004d7040004d7060003d7060004d7070004
-d7080004d70b0003d7060004d7050003d7090003d7040005d7090004d7030004d7070004
-d7150000d76b0005d7080004d7050004d7040003d7050002d7060003d7040002d7770000
-d7df0014d7ffd7ffd7c70015d7cd0000d7340004d7070004d7070003d7060004d7060004
-d7080004d7040003d7070003d7060004d7070004d7070005d7070001d7000004d7060004
-d7050003d7090003d7050005d7080003d7040004d7070004d7150000d76b0005d7080004
-d7050004d7040003d7060001d7060003d7030002d7770000d7e20015d7ffd7ffd7c20015
-d7d00000d7330004d7070004d7070003d7060004d7060004d7080004d7040003d7070003
-d7060004d7070004d7060005d7080001d7000004d7060004d7050003d7090003d7050005
-d7070004d7040004d7070004d7150000d76b0005d7080004d7060003d7040003d7060001
-d7060003d7020001d7ffd75f0015d7ffd7ffd7be0014d7ffd7080004d7070004d7070003
-d7060004d7060004d7080004d7040004d7050004d7060004d7070004d7050005d7090001
-d7000004d7060004d7050003d7090003d7060004d7070003d7050004d7070004d7150000
-d76b0005d7080004d7060003d7040004d7050001d7060003d7010001d7ffd7630014d7ff
-d7ffd7b90015d7ffd70a0004d7070004d7070003d7060004d7060004d7010003d7020004
-d7040005d7020006d7010001d7020004d7070004d7050004d7090002d7000005d7020007
-d7000001d7020004d7010002d7030003d7070003d7070003d7050004d7070004d7820005
-d70a0001d7060004d7040006d70c0003d7000001d7ffd7660015d7ffd7ffd7b40014d7ff
-d70c0006d7060004d7060005d7050005d7050009d7020005d704000ad7000007d7020004
-d7070005d7030005d7070004d7000013d7020009d7020005d7060005d7040003d7060005
-d7060004d7820005d7100007d7040008d70a0007d7ffd7680014d7ffd7ffd7b00014d7dd
-0000d72b000dd700000ad7010009d700000ad7040007d701000ad7010009d7010006d700
-000ad701000ad7000013d7010008d7010006d7030007d701000ad705000bd705000ad701
-000ad77f0005d70e0004d7000003d7060008d7080008d7760000d7f10014d7ffd7ffd7ac
-0014d7e00000d72a000dd700000ad7010009d700000ad7040006d702000ad7030006d702
-0004d702000ad701000ad7000013d7020006d7030004d7050006d701000ad7070008d706
-000ad701000ad77f0005d70c0005d7010003d7080007d7070009d7750000d7f30014d7ff
-d7ffd7a70015d7e20000d7640001d7140002d7060001d7360002d7060000d70a0001d71b
-0001d7a10005d70b0003d7040003d7090007d7060009d7740000d7f60015d7ffd7ffd7a2
-0014d7e60000d7ffd7280000d76b0005d7090004d7050003d70b0005d7060003d7000005
-d7720000d7fa0014d7ffd7ffd79e0014d7ffd7ffd7120000d76b0005d7080004d7060003
-d70d0004d7050003d7010005d7ffd76f0014d7ffd7ffd79a0014d7ffd7ffd7140000d76b
-0005d7080003d7070003d7040000d7070004d7050003d7020005d7ffd7700014d7ffd7ff
-d7950014d7ffd7ffd7170000d76b0005d7080003d7070003d7040001d7070004d7040003
-d7020005d7ffd7730014d7ffd7ffd7900014d7f30000d7ffd7910005d7080003d7060004
-d7040001d7080003d7040003d7030005d7ffd7740014d7ffd7ffd78c0014d7f50000d7ff
-d7910005d7080005d7020006d7010001d7000002d7060003d7040004d7040005d76a0000
-d7ffd7090014d7ffd7ffd7880014d7f80000d7ffd7900005d7080013d7000003d7050002
-d7050004d7050005d7690000d7ffd70b0014d7ffd7ffd7840013d7fc0000d7ffd78b000d
-d704000ad7000006d701000bd703000ad7010009d7650000d7ffd70f0013d7ffd7ffd780
-0013d7ffd7ffd7220000d767000dd7060006d7020004d703000ad704000ad7010009d7ff
-d7780013d7ffd7ffd77c0013d7ffd7ffd7240000d77d0002d7060001d7050000d7040002
-d7ffd7980013d7ffd7ffd7780013d7ffd7ffd7260000d7ffd7ffd7330013d7ffd7ffd774
-0012d7ffd7080000d7ffd71f0000d7ffd7ffd7360012d7ffd7ffd7700012d7ffd70b0000
-d7ffd71e0000d7ffd7180000d77d0002d7340002d7650012d7ffd7ffd76c0012d7ffd70d
-0000d7ffd7ffd7380000d7660007d7030001d7060004d7320004d7670012d7ffd7ffd768
-0012d7ffd7100000d7ffd7ffd7360000d764000cd7010001d7040006d7300006d7690012
-d7ffd7ffd7640012d7ffd7ffd7ffd7490000d7630006d7020008d7030007d72f0007d76b
-0012d7ffd7ffd7600012d7ffd7ffd7ffd7af0004d7080005d7030000d7010004d72f0000
-d7000005d76d0012d7ffd7ffd75c0012d7ffd7ffd7350000d7ffd7790004d70b0003d706
-0004d7320004d76f0012d7ffd7ffd7580012d7ffd7ffd7370000d7ffd7780004d70d0002
-d7060004d7320004d7710012d7ffd7ffd7550011d7ffd71e0000d7ffd7190000d7ffd777
-0004d70f0002d7050004d7320004d7730011d7ffd7ffd7520011d7ffd7210000d7ffd718
-0000d7ffd7130000d7620004d70f0002d7050004d7320004d7750011d7ffd7ffd74e0011
-d7ffd7240000d7ffd7170000d7ffd7120000d7620005d7100001d7050004d7320004d777
-0011d7ffd7ffd74a0011d7ffd7ffd7ffd7530000d7620005d7100001d7050004d7320004
-d7790011d7ffd7ffd7460011d7ffd7ffd7ffd7540000d7620005d7110001d7050004d70b
-0006d70f0006d7080004d7030009d76d0011d7ffd7ffd7420011d7ffd7ffd7ffd7ba0005
-d7190004d709000ad70c0008d7070004d7030009d76f0011d7ffd7ffd73e0011d7ffd7ff
-d7ffd7bc0004d71a0004d708000cd709000cd7050004d7050004d7740011d7ffd7ffd73a
-0011d7ffd7310000d7ffd7140000d7ffd7750004d71a0004d7070004d7030004d7080002
-d7040005d7050004d7040003d7780011d7ffd7ffd7360012d7ffd7330000d7ffd7130000
-d7ffd7740005d71a0004d7060004d7050004d7070002d7050005d7040004d7040001d77b
-0012d7ffd7ffd7320012d7ffd7360000d7ffd7120000d7ffd70d0000d7650005d71a0004
-d7060003d7070004d7050003d7050005d7040004d7030001d77e0012d7ffd7ffd72e0012
-d7ffd7ffd74c0000d7ffd70d0000d7650005d71a0004d7060003d7070004d7050002d706
-0005d7040004d7020001d7810012d7ffd7ffd72a0012d7ffd7ffd74e0000d7ffd70c0000
-d7660005d71a0004d7050004d7080004d7030003d7080002d7050004d7010001d7840012
-d7ffd7ffd7260012d7ffd7ffd7ffd75d0000d7670005d71a0004d7040005d7080004d703
-0003d7110004d7000001d7870012d7ffd7ffd7220012d7ffd7ffd7ffd7c80005d71a0004
-d7040005d7080005d7010004d7110008d7880012d7ffd7ffd71e0012d7ffd7430000d7ff
-d7ffd7850005d71a0004d7040005d7080005d7010004d7110008d78a0012d7ffd7ffd71a
-0012d7ffd7460000d7ffd7ffd7850004d71a0004d7040005d7080005d7010004d7110009
-d78b0012d7ffd7ffd7170012d7ffd7470000d7ffd70e0000d7ffd7080000d76b0005d719
-0004d7040005d7090004d7010004d711000ad78b0012d7ffd7ffd7140012d7ffd74a0000
-d7ffd70d0000d7ffd7080000d76b0006d7110000d7050004d7040005d7090004d7010004
-d70b0000d7040004d7000005d78c0012d7ffd7ffd7100012d7ffd7ffd75b0000d7ffd707
-0000d76d0005d7110001d7040004d7040005d7090004d7010005d7090001d7040004d701
-0004d78e0012d7ffd7ffd70d0011d7ffd7ffd75d0000d7ffd7060000d76e0005d7100002
-d7040004d7050004d7090003d7030004d7090001d7040004d7020004d78f0011d7ffd7ff
-d70a0011d7ffd7ffd75f0000d7ffd7770005d70e0002d7050004d7050004d7080004d703
-0004d7080002d7040004d7020005d7900011d7ffd7ffd7060014d7ffd7530000d7ffd7ff
-d7820006d70c0001d7070004d7060004d7070003d7050005d7050002d7050004d7030005
-d7910010d7ffd7ffd7040016d7ffd7520000d7ffd7ffd7830007d7090002d7070004d706
-0004d7070003d705000ed7050004d7040005d78d0000d7030010d7ffd7ffd700001ad7ff
-d7510000d7ffd7ffd70d0000d7740009d7030004d7080005d7060005d7040003d707000c
-d7050005d7050005d78b0000d7060010d7ffd7fc001ed7ffd7500000d7ffd7ffd70b0000
-d778000ed706000ad705000bd70a000ad704000ad700000ad7910010d7ffd7fa0021d7b4
-0002d7ffd79f0000d7ffd7020000d77a000ad708000ad7070008d70c0008d705000ad700
-000ad7930010d7ffd7f60010d7000012d75e0017d7390005d70e0018d7ffd7770000d7ff
-d7010000d77e0004d7220001d7110003d7a30000d710000fd7ffd7f30011d7020013d75c
-0017d7370007d70e0018d7ffd7770000d7ffd7ffd7630001d7120010d7ffd7f00010d706
-0013d75d0014d7370007d7120014d7710000d7ffd7040000d7ffd7ffd7620000d7160010
-d7ffd7ec0011d7090013d75c0005d7090003d71b0000d71d0004d7130004d70a0003d772
-0000d7ffd7030000d7ffd7ffd77b0010d7ffd7e90011d70d0012d75b0005d70a0002d71b
-0000d71d0004d7130004d70b0002d7720000d7ffd7ffd7020000d7ffd77e0010d7ffd7e6
-0010d7100013d7590005d70a0002d71a0001d71d0004d7130004d70c0001d7730000d7ff
-d7ffd7010000d7ffd75e0000d720000fd7ffd7e30011d7130013d7570005d70b0001d719
-0002d71d0004d7130004d70c0001d7ffd7ffd7750000d7ffd75d0001d7220010d7ffd7df
-0011d7170013d7550005d70b0001d7190002d71d0004d7130004d70c0001d7ffd7ffd774
-0000d7ffd75d0000d7260010d7ffd7dc0011d71a0012d7540005d7260003d71d0004d713
-0004d7ffd7860000d7ffd7ffd7830010d7ffd7d90011d71d0013d7520005d7150004d709
-0005d70c0004d70b0004d7130004d7160002d7030001d7050002d7030001d70a0002d70f
-0001d7030001d7ffd7310000d7ffd7ffd7850010d7ffd7d60010d7210013d7500005d707
-0001d7090009d705000bd704000ad7080004d7130004d7090001d7080004d7010004d702
-0004d7020003d7070008d7090003d7020004d72f0000d7fe0000d7ffd7ffd7540001d730
-000fd7ffd7d30011d7240013d74e0005d7070001d708000cd702000cd703000cd7070004
-d7130004d7090001d7060006d700000dd7000006d704000ad7070005d7010005d7300000
-d7fd0000d7ffd7ffd7530000d7330010d7ffd7d00010d7280012d74d0005d7070001d707
-0004d7020005d7060003d7070004d7030004d7070004d7130004d7090001d705001ed702
-0004d7030005d7040006d7000007d7300000d7fc0000d7f80000d7ffd7580000d7360010
-d7ffd7cc0011d72a0013d74b0005d7060002d7070002d7060003d7060003d7070003d705
-0004d7060004d7130004d7080002d7050000d700000dd701000cd7020003d7060004d703
-0000d700000cd7ffd7ffd7280000d7ffd7920010d7ffd7ca0010d72e0013d749000fd706
-0003d7060003d7060003d7060004d7050004d7060004d7130010d7080005d7010003d702
-0006d7010003d7020003d7060004d7060005d7010003d7ffd7ffd7270000d7ffd7950010
-d7ffd7c60010d7320013d747000fd7060004d7050004d7050003d7060004d7050004d706
-0004d7130010d7080004d7040000d7030004d7040001d7020003d7080004d7050004d704
-0000d7ffd7ffd7ffd77f0001d73f000fd7ffd7c40010d7350012d7460005d7040004d706
-0003d7060004d7050003d7060004d7050004d7060004d7130004d7060004d7080004d709
-0004d7080004d7080005d7040003d7ffd7ffd7ffd7850000d7420010d7ffd7c00010d738
-0013d7440005d7060002d7070002d7050005d7050003d7070002d7050005d7060004d713
-0004d7080002d7080004d7090004d7080004d7080005d7040003d73c0000d7f90000d7ff
-d7ffd74b0000d745000fd7ffd7be0010d73b0013d7420005d7070001d70e0007d7050003
-d70e0007d7060004d7130004d7090001d7080004d7090004d7080004d7080005d7040003
-d73d0000d7f80000d7ffd7ffd7930010d7ffd7ba0010d73f0013d7400005d7070001d70c
-0009d7050003d70c0009d7060004d7130004d7090001d7080004d7090004d7070005d709
-0004d7040003d73e0000d7f70000d7f20000d7ffd7520000d74d000fd7ffd7b8000fd743
-0012d73f0005d7070001d70a0004d7010004d7050003d70b0003d7010004d7060004d713
-0004d7090001d7080004d7090004d7070005d7090004d7040003d7ffd7370000d7f10000
-d7ffd7510001d750000fd7ffd7b40010d7460012d73d0005d7120004d7030004d7050003
-d7080005d7020004d7060004d7130004d7140004d7090004d7070005d7090004d7040003
-d7ffd7370000d7f00000d7ffd7510000d7530010d7ffd7b1000fd7490013d73b0005d711
-0003d7050004d7050003d7080003d7040004d7060004d7130004d7140004d7090004d707
-0005d7090004d7040003d7ffd7ffd7ffd7d3000fd7ffd7ae0010d74c0013d7390005d710
-0004d7050004d7050003d7060004d7050004d7060004d7130004d70f0001d7020004d709
-0004d7080004d7090004d7040003d7ffd7ffd7ffd7d40010d7ffd7ab000fd7500012d738
-0005d7100003d7060004d7050003d7060003d7060004d7060004d7130004d70e0002d702
-0004d7090004d7080004d7090004d7040003d7420000d7ffd7ffd7ffd7330000d75d000f
-d7ffd7a80010d7530012d7360005d70f0004d7060004d7050003d7050004d7060004d706
-0004d7130004d70d0002d7030004d7090004d7080005d7080004d7040003d7420000d7ff
-d7ffd7ffd7310001d75f0010d7ffd7a5000fd7560013d7340005d70f0004d7060004d705
-0004d7040004d7060004d7060004d7130004d70c0003d7030004d7090004d7090004d708
-0003d7050003d7430000d7f20000d7ed0000d7ffd74c0000d763000fd7ffd7a20010d759
-0013d7320005d70f0005d7030006d7010000d7020004d7010008d7040005d7010001d702
-0004d7130004d70c0002d7040004d7090004d7090004d7070003d7060004d7ffd7360000
-d7ed0000d7ffd7b20010d7ffd79f000fd75d0012d7310005d70f0013d7020009d7000013
-d7020004d7120005d70b0003d7040004d7090004d70a0005d7050003d7060004d7ffd736
-0000d7ec0000d7ffd7b5000fd7ffd79d000ed7610012d72e0008d70e0011d7030008d701
-0011d7030006d7100015d7040006d7070006d70a0006d7010004d7050007d7ffd7350000
-d7eb0000d7ffd7490000d76d000ed7ffd79a000fd7630013d729000dd70d0007d7010005
-d7050006d7030008d7010004d702000ad70b0018d702000ad703000ad70a0009d706000a
-d7ffd7330000d7ffd7ffd7340001d76f000fd7ffd797000ed7670013d7440004d7040003
-d7070003d7060005d7030003d75d0005d7570000d7ffd7ffd7ffd7230000d773000ed7ff
-d795000ed76a0012d7ffd72e0000d7ffd7ffd7ffd799000ed7ffd792000ed76e0012d7ff
-d72d0000d7ffd7d70000d7ffd7c1000ed7ffd78f000ed7700013d7ffd72c0000d7ffd7d5
-0000d7ffd7450000d77c000ed7ffd78d000dd7740013d7ffd7ffd7180000d7e70000d7ff
-d7440000d77f000dd7ffd78a000ed7770012d7ffd7ffd7170000d7e60000d7ffd7440000
-d781000ed7ffd787000ed77a0012d7ffd7ffd7150000d7ffd7ffd7b0000ed7ffd785000d
-d77d0013d7ffd7280000d7e90000d7ffd7ffd7b2000dd7ffd782000ed7800013d7ffd726
-0000d7e90000d7ffd7ffd7260001d78a000ed7ffd77f000ed7830012d7ffd7260000d7ff
-d7cc0000d7ffd7410000d78d000ed7ffd77d000dd7870012d7ffd7250000d7ffd7cb0000
-d7ffd7400000d790000dd7ffd77a000ed7890013d7ffd7ffd7ef0000d7ffd7d4000ed7ff
-d777000dd78d0013d7ffd7ffd7ec0000d7ffd73d0000d798000dd7ffd775000dd7900012
-d7ffd7ffd7090000d7ffd7ffd71d0001d79a000dd7ffd772000ed7930012d7ffd7220000
-d7e30000d7ffd7ffd71c0000d79d000ed7ffd76f000dd7960013d7ffd7200000d7e30000
-d7ffd7ffd7bd000dd7ffd76d000dd7990013d7ffd71f0000d7e20000d7ffd7ffd7be000d
-d7ffd76a000ed79c0012d7ffd71f0000d7e10000d7dd0000d7ffd7380000d7a6000ed7ff
-d767000dd7a00012d7ffd7ffd7de0000d7ffd7370001d7a9000dd7ffd765000dd7a20013
-d7ffd7ffd7db0000d7ffd7370000d7ac000dd7ffd763000dd7a50013d7ffd7ffd7ffd7ff
-d7c1000dd7ffd760000dd7a90012d7ffd7ffd7ffd7ffd7c2000cd7ffd75e000dd7ac0012
-d7ffd7190000d7de0000d7ffd7ffd70e0001d7b5000dd7ffd75b000dd7af0012d7ffd718
-0000d7dd0000d7ffd7ffd70d0000d7b8000dd7ffd759000cd7b20013d7ffd7170000d7dc
-0000d7d70000d7ffd7330000d7bb000cd7ffd756000dd7b50012d7ffd7f40000d7d60000
-d7ffd7f2000cd7ffd754000dd7b80012d7ffd7f20000d7d50000d7ffd7f4000cd7ffd752
-000dd7bb0012d7ffd7ffd7ffd7f90000d7c3000dd7ffd74f000dd7bd0013d7ffd7ffd7ff
-d7f60000d7c5000dd7ffd74c000dd7c10012d7ffd7130000d7ffd7ffd7df0000d7c8000c
-d7ffd74a000dd7c40012d7ffd7110000d7ffd7ffd7ffd7aa000cd7ffd748000dd7c70012
-d7ffd7100000d7d70000d7d20000d7ffd72c0000d7cf000cd7ffd746000dd7c90013d7ff
-d7e70000d7d10000d7ffd72b0001d7d1000dd7ffd742000ed7cc0012d7ffd7e60000d7d0
-0000d7ffd72b0000d7d4000dd7ffd740000dd7d00012d7ffd7e40000d7ffd7ffd7d5000c
-d7ffd73e000dd7d30012d7ffd7e20000d7ffd7ffd7d6000cd7ffd73c000dd7d50013d7ff
-d70b0000d7ffd7ffd7cd0000d7dd000cd7ffd73a000dd7d80012d7ffd70a0000d7ffd7ff
-d7cb0001d7df000dd7ffd736000ed7db0012d7ffd7090000d7ffd7a10000d7ffd7260000
-d7e2000dd7ffd734000dd7df0012d7ffd7080000d7ffd79f0000d7ffd7ffd70d000cd7ff
-d732000dd7e10013d7ffd7d90000d7cc0000d7ffd7ffd70e000cd7ffd730000dd7e40012
-d7ffd7d80000d7cb0000d7ffd7230000d7eb000cd7ffd72e000dd7e70012d7ffd7d60000
-d7ffd7ee0001d7ed000dd7ffd72b000dd7ea0012d7ffd7040000d7ce0000d7ffd7ed0000
-d7f0000dd7ffd729000dd7ec0013d7ffd7020000d7ce0000d7ffd7ffd7e0000dd7ffd726
-000dd7f00012d7ffd7020000d7ffd7960000d7ffd7ffd719000cd7ffd724000dd7f30012
-d7ffd7010000d7ffd7950000d7ffd71e0001d7f9000cd7ffd722000dd7f60012d7ffd7ff
-d7950000d7ffd71e0000d7fc000dd7ffd71f000dd7f80013d7ffd7ffd7920000d7ffd71e
-0000d7fe000dd7ffd71d000dd7fb0012d7ffd7ca0000d7ffd7ffd7e6000dd7ffd71b000d
-d7fe0012d7fe0000d7c80000d7ffd7ffd7e7000dd7ffd719000dd7ffd7010012d7fc0000
-d7c80000d7ffd7e00001d7ffd705000dd7ffd716000dd7ffd7040013d7fb0000d7c70000
-d7c20000d7ffd71b0000d7ffd709000dd7ffd713000dd7ffd7070012d7fb0000d7c60000
-d7c20000d7ffd71a0000d7ffd70b000dd7ffd711000dd7ffd70a0012d7ffd7ffd7840000
-d7ffd7ffd729000dd7ffd70f000dd7ffd70d0012d7ffd7ffd7810000d7ffd7170000d7ff
-d712000dd7ffd70d000dd7ffd70f0013d7ffd7ffd7ffd7960001d7ffd714000dd7ffd70b
-000dd7ffd7120012d7f70000d7ffd7ffd79b0000d7ffd717000dd7ffd709000dd7ffd715
-0012d7f50000d7c30000d7ffd7ffd7f0000dd7ffd707000cd7ffd7190012d7f40000d7c2
-0000d7ffd7ffd7f2000cd7ffd705000cd7ffd71c0012d7f30000d7c10000d7bc0000d7ff
-d7130000d7ffd720000cd7ffd703000cd7ffd71e0012d7ffd7b50000d7bc0000d7ffd711
-0001d7ffd722000cd7ffd701000cd7ffd7210012d7ffd7b30000d7bb0000d7ffd7110000
-d7ffd725000cd7ff000cd7ffd7240012d7ffd7ffd7ffd7ffd7a9000cd7fd000cd7ffd727
-0012d7ffd7ffd7ffd7ffd7a8000cd7fb000cd7ffd7290012d7ef0000d7ffd7ffd7880000
-d7ffd72d000cd7fa000bd7ffd72c0012d7ed0000d7ffd7ffd7860001d7ffd72f000bd7f9
-000bd7ffd72f0012d7ec0000d7bc0000d7b70000d7ffd70d0000d7ffd732000bd7f7000b
-d7ffd7320012d7ffd7a80000d7b60000d7ffd7ffd743000bd7f5000bd7ffd7340012d7ff
-d7a70000d7b50000d7ffd7ffd745000bd7f3000bd7ffd7370012d7ffd7a50000d7ffd7c0
-0001d7ffd73a000bd7f1000bd7ffd73a0012d7ffd7a30000d7ffd7bf0000d7ffd73d000b
-d7ef000bd76c0017d7b80012d7e70000d7ffd7ffd7780000d7ffd73f000bd7ed000bd76d
-0017d7b90012d7e70000d7ffd7ffd7ffd7b9000bd7eb000bd7710014d7bb0012d7e60000
-d7ffd76a0000d7ffd7ffd74d000bd7e9000bd7730005d70a0002d74b0001d76f0012d7ff
-d7ffd74f0000d7ffd7060001d7ffd746000bd7e7000bd7740005d70a0003d74a0001d771
-0012d7ffd79a0000d7b10000d7ffd7050000d7ffd749000bd7e5000bd7750005d70b0002
-d7490002d7720012d7ffd7990000d7b00000d7ffd7050000d7ffd74b000bd7e3000bd776
-0005d70b0002d7490002d7740012d7ffd7970000d7ffd7ffd7ffd705000bd7e1000bd777
-0005d70b0002d7480003d7760012d7e00000d7b30000d7ffd7b20000d7ffd752000bd7df
-000bd7780005d7560004d7780012d7de0000d7b30000d7ffd7b00001d7ffd754000bd7dd
-000bd7790005d7550005d7790012d7de0000d7ffd7600000d7ffd7010000d7a20002d7b1
-000bd7db000bd77a0005d7090000d705000ad7040006d7060007d70a0001d7030006d704
-000bd7770012d7dd0000d7ffd75f0000d7ffd7870019d7020004d7b1000bd7da000ad77b
-0005d7080001d705000ad7040006d7050009d7060004d7020007d704000bd7790012d7ff
-d7ffd73b0000d7ffd7880019d7020005d7b1000ad7d9000ad77c0005d7080001d7080005
-d7080002d7060002d7030004d7030006d7010009d7060004d77f0012d7ffd7ffd7380000
-d7fe0000d7890019d7020005d7b2000ad7d7000ad77d0005d7070002d7080005d7080001
-d7060002d7050004d7020013d7050004d7800012d7ffd78b0000d7ffd7a80001d78a0003
-d7060004d7050003d7020004d7b4000ad7d5000ad77e0010d7090004d7080001d7050002
-d7070003d7050005d7050004d7050004d7820012d7d90000d7ae0000d7ffd7a70000d78c
-0002d7070004d7070002d7020002d7b6000ad7d3000ad77f0010d7090004d7080001d705
-0002d7070004d7040003d7070004d7050004d7840012d7d80000d7ad0000d7ffd7ffd735
-0001d7080004d7070002d7bd000ad7d1000bd77f0010d70a0004d7060001d7050003d707
-0004d7040003d7070004d7050004d7860012d7d60000d7ad0000d7a70000d7ffd78c0001
-d7080004d7070002d7bd000bd7cf000bd7800005d7070002d70a0004d7060001d7050010
-d7040003d7070004d7050004d7870012d7d60000d7ffd7550000d7f80001d7910001d708
-0004d7080001d7be000bd7cd000bd7810005d7080001d70b0004d7040001d7060011d703
-0003d7070004d7050004d7890012d7ffd7ffd72a0000d7f80000d79e0004d7ca000bd7cb
-000bd7820005d7080001d70b0004d7040001d7060003d7110003d7070004d7050004d78b
-0012d7ffd7ffd7270000d7f80000d79f0004d7cb000bd7c9000bd7830005d7090000d70b
-0005d7020002d7050004d7110003d7070004d7050004d78d0012d7ffd7ffd7ffd7c00004
-d70e0002d7090002d7020005d7050005d70b0008d7090002d7020003d76f000bd7c7000b
-d7840005d7170004d7020001d7060004d7110003d7070004d7050004d78e0012d7d30000
-d7ffd7ffd7ea0004d70b0005d7060005d7010007d7030007d709000ad7050005d7010005
-d76f000bd7c6000ad7850005d7170005d7000002d7060004d7110003d7070004d7050004
-d7900012d7d10000d7a80000d7ffd79a0000d7a40004d7090007d7040012d7010009d708
-0003d7000006d7020007d7010005d770000ad7c5000ad7860005d70e0001d7070004d700
-0001d7080003d70b0000d7040003d7070004d7050004d7920012d7d00000d7a70000d7a2
-0000d7f50000d7a50004d70a0006d7040012d700000ad7060003d7040005d7010007d700
-0006d771000ad7c3000ad7870005d70d0002d7070007d7080004d70a0001d7030003d707
-0004d7050004d7940012d7cf0000d7a60000d7a10000d7f50000d7a60004d70c0004d707
-0005d7040007d7040004d7040003d7060004d7040006d7010003d772000ad7c1000ad788
-0005d70d0001d7090005d7090005d7080001d7040003d7070004d7050004d7960011d7ff
-d7760000d7a10000d7ffd79d0004d70d0003d7070004d7060004d7060004d7040003d706
-0005d7030005d7030001d774000ad7bf000ad7890005d70c0002d7090005d7090006d706
-0002d7040003d7070004d7050004d7970012d7ffd7ffd7160000d7f10000d7ab0004d70d
-0003d7070004d7060004d7060004d7040002d7080004d7030005d77b000ad7bd000bd789
-0005d70b0003d7090005d70a0007d7030003d7040003d7070004d7050004d7020002d793
-0012d7ffd7ffd7ffd7050001d7ac0004d70d0003d7070004d7060004d7060004d7040010
-d7030004d77c000bd7bb000bd78a0005d70a0003d70b0003d70c000dd7050004d7060004
-d7050009d7960012d7ffd7ffd7ffd7020000d7ae0004d70d0003d7070004d7060004d706
-0004d7030011d7030004d77d000bd7b9000bd78a0015d70b0003d70d000bd7050005d706
-0005d7050007d7990011d7cb0000d7ffd7ffd7e40004d70d0003d7070004d7060004d706
-0004d7030003d7110004d77e000bd7b8000ad7880017d70d0001d70f0009d704000ad700
-000ad7030007d79a0012d7c90000d7ffd7ffd7e40004d70d0003d7070004d7060004d706
-0004d7030004d7100004d77f000ad7b7000ad7890017d70d0001d7100006d706000ad700
-000ad7040005d79d0012d7c80000d7a10000d79c0000d7ed0000d7b30004d70d0003d707
-0004d7060004d7060004d7030004d7100004d780000ad7b5000ad7ffd7930012d7ffd769
-0000d79b0000d7ec0001d7b40004d70d0003d7070004d7060004d7060004d7030004d710
-0004d781000ad7b3000ad7ffd7960011d7ffd7680000d79a0000d7ec0000d7b60004d70d
-0003d7070004d7060004d7060004d7030004d70b0000d7030004d782000ad7b1000ad7ff
-d7980012d7ffd7660000d7ffd7ffd7400004d70d0003d7070004d7060004d7060004d703
-0005d7090001d7030004d783000ad7af000bd7ffd79a0012d7ffd7ffd7ffd7a60004d70d
-0003d7070004d7060004d7060004d7040005d7080001d7030004d783000bd7ae000ad7ff
-d79d0012d7c30000d7ffd7ffd7220000d7bb0004d70d0003d7070004d7060004d7060004
-d7040005d7080001d7030004d784000ad7ad000ad7ffd7a00011d7c30000d7ffd7ffd71f
-0001d7bc0004d70d0003d7070004d7060004d7060004d7040007d7040002d7040004d785
-000ad7ab000ad7ffd7a20012d7c20000d7ffd7340000d7e70000d7bd0005d70d0003d707
-0004d7060004d7060004d705000ed7040004d786000ad7a9000bd7ffd7a40012d7ffd7f5
-0000d7ffd7a70006d70b0005d7050005d7050005d7050006d705000cd7050005d785000b
-d7a7000bd7ffd7a70012d7ffd75b0000d7950000d7ffd7a4000dd705000bd700000ad700
-000ad700000ad7040009d704000bd783000bd7a6000ad7ffd7aa0011d7ffd75a0000d7ff
-d77a0001d7be000dd705000bd700000ad700000ad700000ad7060006d705000bd784000a
-d7a5000ad7020000d7ffd7a80012d7ffd7580000d7ffd7790000d7ffd7aa000ad7a3000b
-d7030001d7ffd7a80012d7bc0000d7980000d7ffd7780000d7ffd7ab000bd7a1000bd706
-0000d7ffd7a90012d7bb0000d7ffd7ffd7ffd7bf000bd79f000bd70d0001d7ffd7a40011
-d7bb0000d7ffd7290000d7ffd7ffd794000bd79d000bd7100001d7ffd7a30012d7ffd7e4
-0000d7e00001d7ffd7b2000bd79c000ad7180001d7ffd79e0012d7ffd7e10000d7e00000
-d7ffd7b5000ad79b000bd71a0001d7ffd79e0012d7ffd7de0000d7e00000d7ffd7b6000b
-d799000bd7ffd7be0011d7ffd74c0000d7ffd7ffd7ffd72a000bd797000bd7230001d7ff
-d79a0012d7b50000d7930000d7ffd76c0000d7ffd7bd000bd796000ad7260001d7ffd79a
-0012d7b40000d7920000d7ffd76a0001d7ffd7bf000ad795000bd72d0001d7ffd7950012
-d7b20000d7920000d78c0000d7db0000d7ffd7c1000bd793000bd7300001d7ffd7950011
-d7b20000d7ffd71f0000d7ffd7ffd79f000bd792000ad7380000d7ffd7900012d7ffd7d0
-0000d7ffd7ffd79d0001d701000ad791000ad73a0001d7ffd7900012d7ffd7cd0000d7d8
-0000d7ffd7c20001d704000ad78f000bd73c0000d7ffd7910012d7ffd7ffd7a30001d7ff
-d7bc0001d70b000bd78d000bd7430001d7ffd78c0011d7af0000d7ffd7f00000d7ffd7bc
-0001d70e000bd78c000ad7460001d7ffd78c0011d7ad0000d78d0000d7ffd7ffd7ffd731
-000ad78b000bd74d0001d7ffd7860012d7ac0000d78c0000d7870000d7ffd7ffd78f0001
-d716000bd789000bd7500001d7ffd7860012d7ab0000d78b0000d7860000d7d40000d7ff
-d7b80001d719000bd788000ad7ffd7dc0011d7ffd7370000d7860000d7d20001d7ffd7b3
-0001d720000ad787000ad7590001d7ffd7830011d7ffd7bc0000d7d20000d7ffd7b20002
-d723000ad785000bd75b0001d7ffd7820012d7ffd7ffd7ffd7ffd73d0000d72a000bd784
-000ad7630001d7ffd77d0012d7a70000d7ffd7ffd7ffd7900001d72c000ad783000ad766
-0001d7ffd77d0011d7a70000d7ffd7dc0001d7ffd7ae0001d72f000ad781000bd76d0000
-d7ffd7790011d7a50000d7ffd7db0000d7ffd7aa0001d735000bd77f000bd76f0001d7ff
-d7780012d7a40000d7860000d7810000d7ce0000d7ffd7a80002d738000bd77e000ad772
-0000d7ffd7790011d7ffd72b0000d7800000d7ffd7ffd7730001d740000ad77d000bd778
-0001d7ffd7740011d7ffd7290000d77f0000d7cc0000d7ffd7a30002d742000bd77b000b
-d77b0001d7ffd7740011d7ffd7270000d7ffd74b0001d7ffd7eb000bd77a000ad7830001
-d7ffd76e0012d7ffd7ffd7710000d7ffd7a00001d74b000ad779000ad7860001d7ffd76e
-0011d7a00000d7ffd7ffd7ffd76d0002d74e000ad777000bd7ffd7f90011d79f0000d7ff
-d7ffd7ffd7660001d755000bd776000ad78e0001d7ffd76b0011d79e0000d7fe0000d7c7
-0000d7ffd7990002d758000ad775000ad7910001d7ffd76a0012d7ffd79b0000d7c60001
-d7ffd7950000d760000ad774000ad7980001d7ffd7650011d7ffd71d0000d77a0000d7c6
-0000d7ffd7950001d761000ad773000ad79b0001d7ffd7650011d7ffd71b0000d7ffd7ff
-d7d70001d764000ad7720009d7a30000d7ffd7610011d7ffd7190000d7ffd7ffd7d10001
-d76b0009d771000ad7a40001d7ffd7600012d7980000d77d0000d7ffd73d0000d7ffd78f
-0002d76d000ad76f000ad7a70000d7ffd7610011d7980000d7ffd7b90001d7ffd78a0001
-d775000ad76e000ad7ad0001d7ffd75c0011d7970000d7f30000d7c20000d7ffd7890002
-d777000ad76d000ad7b00001d7ffd75c0011d7ffd7890000d7ffd7ffd7ca000ad76c0009
-d7b80001d7ffd7560012d7ffd7860000d7ffd7ffd7490001d7800009d76b000ad7ba0001
-d7ffd7560011d7ffd7ffd7450001d7ffd7850002d782000ad769000ad7ffd7ffd7160011
-d7ffd70d0000d7ffd7330000d7ffd7810001d78a000ad768000ad7c20001d7ffd7530011
-d7910000d7780000d7ffd7320000d7ffd77f0002d78c000ad767000ad7c50001d7ffd752
-0012d7900000d7770000d7ffd7ffd7ae0000d794000ad7660009d7cd0001d7ffd74d0011
-d78f0000d7770000d7710000d7ffd7ffd7390001d7960009d765000ad7cf0001d7ffd74d
-0011d78e0000d7e90000d7ba0000d7ffd77b0001d798000ad7640009d7d70000d7ffd749
-0011d7ffd7760000d7ba0000d7ffd7760001d79f0009d7630009d7d90001d7ffd7480012
-d7ffd7730000d7ba0000d7ffd7740002d7a20009d761000ad7db0000d7ffd7490011d7ff
-d7ffd7ffd79e0001d7a9000ad7600009d7e20001d7ffd7440011d78b0000d7ffd79a0000
-d7ffd7700002d7ac0009d75f000ad7e40001d7ffd7440011d7890000d7720000d7ffd724
-0001d7ffd7ffd721000ad75e0009d7ec0001d7ffd73f0011d7880000d7710000d76c0000
-d7b50000d7ffd76d0001d7b40009d75d0009d7ef0001d7ffd73e0011d7880000d7700000
-d76b0000d7ffd7ffd7220002d7b70009d75c0009d7ffd7ffd7320011d7f80000d76b0000
-d7ffd7ffd71c0001d7be0009d75b0009d7f70001d7ffd73b0011d7ffd7620000d7b20000
-d7ffd7660002d7c10009d75a0009d7f90001d7ffd73b0011d7ffd7ffd7120001d7ffd761
-0001d7c80009d7590009d7ffd7010001d7ffd7350011d7840000d7ffd78a0000d7ffd760
-0002d7cb0009d7580008d7ffd7040001d7ffd7350011d7820000d7ffd7ffd7ffd7bc0008
-d7570009d7ffd70b0001d7ffd7300011d7810000d76d000dd7580000d7ffd7ffd70f0001
-d7d30009d7560008d7ffd70e0001d7ffd7300011d7800000d7520042d73d0000d7ae0000
-d7ffd75c0002d7d60008d7550009d7ffd7ffd7420011d7c6005cd72f0000d7ad0001d7ff
-d7570001d7dd0009d7540008d7ffd7160001d7ffd72c0011d7ba0070d7240000d7ad0000
-d7ffd7560002d7e00008d7530009d7ffd7180001d7ffd72c0011d7b2007cd7ffd7ffd720
-0000d7e70009d7520008d7ffd7200001d7ffd7270011d77d0000d72a008ad7ffd7ffd717
-0001d7e90008d7510009d7ffd7220001d7ffd7260011d77c0000d7240096d7ba0001d7ff
-d7520001d7eb0009d7500008d7ffd72a0000d7ffd7220011d77b0000d71c00a4d7b20000
-d7ffd74e0001d7f20008d74f0009d7ffd72b0001d7ffd7220011d77a0000d71500b0d701
-0000d7a80000d7ffd74c0002d7f40009d74e0008d7ffd72e0000d7ffd7230011d78a0048
-d7280048d7ffd7ee0001d7fc0008d74d0009d7ffd7330001d7ffd71e0011d785003fd742
-003fd7ffd7e70002d7fe0009d74c0008d7ffd7360002d7ffd71d0011d77f0036d75c0036
-d7990001d7ffd7ffd74a0008d74b0009d7ffd73d0001d7ffd7190011d7790030d7700030
-d7940000d7ffd7430001d7ffd7060009d74a0008d7ffd7400002d7ffd7180011d773002e
-d77c002ed78f0000d7ffd7410002d7ffd7090008d7490009d7ffd7ffd75d0011d76e002c
-d788002cd7ffd7c80001d7ffd7100009d7480008d7ffd7480001d7ffd7150011d7690029
-d7940029d7830000d7ffd73d0002d7ffd7130008d7470009d7ffd74a0002d7ffd7140011
-d7630026d7a20026d77d0001d7ffd7390000d7ffd71a0009d7460008d7ffd7520001d7ff
-d7100011d75d0024d7ae0024d7780000d7ffd7390001d7ffd71c0008d7450009d7ffd754
-0002d7ffd70e0011d7590021d7b90022d7ffd7ae0001d7ffd71e0009d7440008d7ffd75c
-0000d7ffd70b0011d754001ed7c5001fd7ffd7a50001d7ffd7250008d7430009d7ffd75d
-0001d7ffd70b0011d74f001dd7ce001cd76b0000d7ffd7330002d7ffd7270009d7420008
-d7ffd7600001d7ffd70b0011d74a001cd7d6001bd7660001d7ffd72e0001d7ffd72f0008
-d7410009d7ffd7660001d7ffd7060011d746001bd7de001ad7620000d7ffd72d0002d7ff
-d7310009d7400008d7ffd7690002d7ffd7050011d740001cd7e4001bd7ffd7ffd7c30008
-d7400008d7ffd7700001d7ffd7010011d73b001cd7ea001cd7ffd7830001d7ffd7390008
-d73f0009d7ffd7720002d7ffd7000011d736001dd7ee001dd7520000d7ffd7290002d7ff
-d73b0009d73e0008d7ffd7ffd7790010d733001cd7f4001cd74e0001d7ffd7240001d7ff
-d7430008d73d0009d7ffd77a0001d7fd0011d72f001bd7fa001bd74b0000d7ffd7230002
-d7ffd7450009d73c0008d7ffd77d0002d7fc0011d72b0019d7ffd7020019d7ffd7690000
-d7ffd74d0008d73c0008d7ffd7840001d7f80011d7270017d7ffd70a0017d7420000d7ff
-d7210001d7ffd74e0008d73b0009d7ffd7860002d7f70010d7230017d7ffd7100017d73d
-0001d7ffd7200001d7ffd7500009d73a0008d7ffd78e0000d7f30011d71f0016d7ffd716
-0016d73a0000d7ffd71c0001d7ffd7570008d7390009d7ffd78f0001d7f30011d71a0017
-d7ffd71a0017d7ffd7520002d7ffd7590009d7380009d7ffd7910001d7f30011d7160016
-d7ffd7200016d7310000d7ffd7170001d7ffd7600009d7380008d7ffd7980001d7ef0010
-d7120016d7ffd7260015d72d0001d7ffd7150002d7ffd7630008d7370009d7ffd79a0002
-d7ed0011d70e0016d7ffd72a0015d72a0000d7ffd7ffd77e0009d7360008d7ffd7a20001
-d7e90011d70a0015d7ffd7300014d7ffd73b0001d7ffd76b0008d7350009d7ffd7a40002
-d7e80011d7060015d7ffd7340014d7210000d7ffd7140001d7ffd76d0009d7340009d7ff
-d7ffd7920010d7030014d7ffd73a0013d71d0001d7ffd70e0001d7ffd7740009d7340008
-d7ffd7ac0001d7e50026d7ffd73e0013d71a0000d7ffd70e0001d7ffd7770008d7330009
-d7ffd7ae0002d7e40021d7ffd7440012d7ffd7220000d7ffd77e0009d7320009d7ffd7b5
-0001d7e0001dd7ffd7480013d7100000d7ffd70b0001d7ffd77f0009d7310009d7ffd7b8
-0002d7df0019d7ffd74c0013d70c0001d7ffd70b0000d7ffd7820009d7300009d7ffd7bf
-0000d7db0016d7ffd7500013d7090000d7ffd7060001d7ffd7880009d7300008d7ffd7c1
-0001d7da0013d7ffd7540013d7ffd70d0001d7ffd78b0008d72f0009d7ffd7c30001d7d7
-0012d7ffd7580012d7ffd7050001d7ffd7920009d72e0009d7ffd7c90001d7cf0012d7ff
-d75c0013d7ffd7000001d7ffd7940009d72e0008d7ffd7cc0002d7cb0012d7ffd75e0012
-d7ffd7ffd7980008d72d0009d7ffd7d30001d7c30012d7ffd7620012d7f70001d7ffd79c
-0009d72c0009d7ffd7d50002d7bf0011d7ffd7660011d7f40001d7ffd79e0009d72c0008
-d7ffd7ffd7970011d7ffd76a0011d7eb0001d7ffd7a60008d72b0009d7ffd7dd0001d7b5
-0011d7ffd76e0011d7e70001d7ffd7a80009d72a0009d7ffd7df0002d7b10010d7ffd772
-0010d7e00000d7ffd7af0009d72a0008d7ffd7e70001d7a90010d7ffd7760010d7dc0001
-d7ffd7b10008d7290009d7ffd7e90002d7a5000fd7ffd77a000fd7da0000d7d6000cd7cf
-0009d7280009d76d0009d7130009d7ffd75a0000d79e000fd7ffd77e000fd7d10001d7df
-0006d7d20009d7280008d76e0009d7130009d7ffd75b0001d79a000fd7ffd782000fd7cd
-0001d7e10006d7210000d76b0001d7420008d7280008d7700008d7110007d7ffd7600001
-d797000ed7ffd786000ed7c50001d7e90004d7210001d76b0001d7420008d7270009d771
-0007d7110006d7ffd7670001d78f000fd7ffd788000fd7c10001d7eb0004d7210001d76b
-0001d7420009d7260009d7720007d70f0007d7ffd7690001d78c000fd7ffd78a000fd7ba
-0000d7f20004d7200002d76a0002d7420009d7260008d7730007d70f0007d7ffd7700001
-d784000ed7ffd78e000ed7b70001d7f30004d71f0003d7690003d7430008d7250009d773
-0007d70e0008d7ffd7720001d781000ed7ffd790000ed7b50000d7f50004d71f0003d769
-0003d7430009d7240009d7730008d70d0008d7ffd7780000d77a000fd7ffd792000fd7ac
-0001d7fb0004d71e0004d7680004d7430009d7240008d7740008d70c0009d7ffd7790001
-d777000ed7ffd796000ed7a90001d7fd0004d7090002d7030004d706000bd7050008d709
-0002d7020003d7040002d7020003d7000007d7040006d7070002d7020005d706000bd73f
-0008d7230009d7740002d7000005d70b0002d7000005d7ffd77b0000d775000ed7ffd798
-000ed7a10001d7ffd7040004d7060005d7010008d703000cd704000ad7060004d7010005
-d7010004d701000dd7040006d7040005d7010008d703000cd73f0009d7220009d7740002
-d7000005d70a0003d7000005d7090008d709000ad706000ad7060009d70c0007d70d0007
-d7ffd70a0001d76e000ed7ffd79a000ed79e0001d7ffd7060004d7040007d7000009d703
-000cd7040003d7000006d7030006d701000cd7010006d7000005d7060004d7020007d700
-000ad702000cd73f0009d7220008d7750002d7010005d7090002d7010005d708000ad707
-000bd705000bd705000cd7080010d705000ad7ffd70a0002d769000ed7ffd79e000ed7ff
-d7a50004d7050012d7050004d7080002d7040005d7020006d700000dd7000007d7010004
-d7070003d7020013d7050004d7450008d7210009d7750002d7010005d7090002d7010005
-d7080002d7020005d7050003d7030004d7040003d7030004d7040004d7020005d7070003
-d7040008d7040002d7030005d7ffd7100001d762000ed7ffd7a0000ed7940001d7ffd70d
-0004d7070005d7050004d7050004d7070002d7060004d7050005d7010003d7020005d701
-0003d7020004d7070003d7050007d7030005d7040004d7450009d7200009d7750002d702
-0004d7080002d7020005d7060003d7040005d7030003d7050003d7030003d7050003d704
-0003d7050003d7070003d7050006d7040003d7040004d7ffd7120001d75f000dd7ffd7a4
-000dd7910001d7ffd70f0004d7070004d7060004d7050004d7070002d7060005d7040004
-d7030001d7030005d7020002d7020004d7070003d7050005d7050005d7040004d7450009
-d7200008d7760002d7020005d7070002d7020005d7050003d7060004d7030003d7060002
-d7030003d7060002d7030003d7060003d7060003d7060004d7050003d7060003d7ffd772
-000dd7ffd7a8000dd7880001d7ffd7160004d7070004d7060004d7050004d7060002d708
-0004d7040004d7090004d7090004d7070003d7050004d7070004d7040004d7460008d720
-0008d7760002d7030004d7060002d7030005d7050003d7060005d7020003d7060002d703
-0003d7060002d7030004d7050004d7050003d7060004d7050003d7060004d7ffd7170001
-d756000dd7ffd7aa000dd7850001d7ffd7180004d7070004d7070003d7050004d7060010
-d7040003d70a0003d70a0004d7070003d7050004d7070005d7030004d7460008d71f0009
-d7760002d7030005d7050002d7030005d7040003d7070005d7020004d7050002d7030004
-d7050002d7030003d7060004d7040004d7070003d7040003d7070005d7ffd7180001d753
-000cd7ffd7ae000cd77f0000d7ffd71e0004d7070004d7070003d7050004d7050011d704
-0003d70a0003d70a0004d7070003d7050004d7080004d7030004d7460009d71e0009d776
-0002d7040004d7040002d7040005d7040011d7020005d7050001d7030005d7050001d704
-0002d7050005d7040004d7070003d7040011d7ffd71e0001d74c000cd7ffd7b0000cd77c
-0001d7ffd71f0004d7070004d7070003d7050004d7050003d7120003d70a0003d70a0004
-d7070003d7050004d7080004d7030004d7460009d71e0008d7770002d7040004d7040002
-d7040005d7040011d7030006d70a0006d7110007d7040004d7070003d7040011d7ffd720
-0002d748000cd7ffd7b2000cd7790001d7ffd7210004d7070004d7070003d7050004d705
-0004d7110003d70a0003d70a0004d7070003d7050004d7080004d7030004d7470008d71e
-0008d7770002d7040005d7020003d7040005d7040003d7110009d7070009d70c0009d704
-0004d7070003d7040003d7ffd7350000d742000cd7ffd7b4000cd7720001d7ffd7270004
-d7070004d7070003d7050004d7050004d7110003d70a0003d70a0004d7070003d7050004
-d7080004d7030004d7470008d71d0009d7770002d7050004d7020002d7050005d7040003
-d7130009d7070009d7080004d7010004d7050003d7060004d7040003d7ffd7360001d73f
-000cd7ffd7b6000bd7700001d7ffd7290004d7070004d7070003d7050004d7050004d711
-0003d70a0003d70a0004d7070003d7050004d7080004d7030004d7470008d71d0009d777
-0002d7050005d7000003d7050005d7040003d7140008d7080008d7060004d7030004d705
-0004d7050003d7050003d7ffd7380000d73d000cd7ffd7b8000bd7680001d7ffd7300004
-d7070004d7070003d7050004d7050004d70b0000d7040003d70a0003d70a0004d7070003
-d7050004d7080004d7030004d7470009d71c0008d7780002d7060004d7000002d7060005
-d7040004d7160006d70a0006d7040004d7040004d7060004d7030003d7060004d7ffd73c
-0001d736000cd7ffd7ba000bd7650001d7ffd7320004d7070004d7070003d7050004d705
-0005d7090001d7040003d70a0003d70a0004d7070003d7050004d7080004d7030004d748
-0008d71c0008d7780002d7060008d7060005d7040004d70b0000d70a0006d70a0006d703
-0003d7050004d707000ad7070004d70a0000d7ffd7320001d733000cd7ffd7bc000bd7ff
-d7990004d7070004d7070003d7050004d7060005d7080001d7040003d70a0003d70a0004
-d7070003d7050004d7080003d7040004d7480008d71b0009d7780002d7070006d7070005
-d7040005d7090001d7020001d7070004d7020001d7070004d7020003d7060004d7070008
-d7090004d70a0001d7ffd7380001d72b000cd7ffd7be000bd75d0001d7ffd7380004d707
-0004d7070003d7050004d7060005d7080001d7040003d70a0003d70a0004d7070003d705
-0004d7080003d7040004d7480008d71b0009d7780002d7070006d7070005d7040006d707
-0002d7020001d7070004d7020001d7070004d7010004d7060004d7060002d7100006d707
-0002d7ffd73a0001d728000cd7ffd7c0000bd75a0001d7ffd73a0004d7070004d7070003
-d7050004d7030001d7010006d7040003d7040003d70a0003d70a0005d7040006d7040004
-d7080003d7040004d7030001d7420008d71b0008d7790002d7080004d7080005d7040007
-d7060002d7020001d7080003d7020001d7080003d7010004d7060004d7050002d7110007
-d7060002d7ffd765000ad7ffd7c3000bd7530001d7ffd7400004d7070004d7070004d705
-0004d7000002d702000ed7050003d70a0004d70a0005d7010008d7000000d7020005d706
-0003d7050005d7000002d7440007d71b0008d7790002d7080004d7080005d7050007d704
-0002d7030002d7070003d7020002d7070003d7010004d7040006d7010000d7010005d710
-0007d7030003d7ffd7410001d721000ad7ffd7c5000bd7500001d7ffd7410006d7060005
-d7050005d7050008d703000cd7050005d7080005d70a000ad7000007d7010006d7040003
-d7060009d7440008d71a0008d7790002d7090002d7090005d707000cd7040003d7050003
-d7030003d7050003d7020013d7010011d705000dd7ffd7440001d71e000ad7ffd7c7000b
-d7490000d7ffd745000cd700000ad701000ad7020007d705000ad704000ad703000ad708
-0008d7010005d703000ed7080007d7450008d7190009d7780004d7080002d7080007d706
-000cd7040004d7030004d7030004d7030004d7030012d7010012d705000bd7ffd74b0001
-d717000ad7ffd7c9000bd7460001d7ffd746000cd700000ad701000ad7030005d7080006
-d706000ad703000ad7080006d7030002d706000cd70b0005d7460008d7190008d776000a
-d7060000d706000dd7040009d706000cd704000cd7050007d7010006d7030012d7050009
-d7ffd74e0002d713000bd7ffd7ca000bd7440000d7ffd7c70004d7610007d7190008d776
-000ad7060000d706000dd7060006d7070009d7070009d7090005d7030004d7050012d705
-0007d7ffd7560000d70d000bd7ffd7cc000bd73d0001d7ffd7cc0004d7610007d7190008
-d7ee0001d70d0003d7ffd7650001d70a000bd7ffd7cd000cd73a0001d7ffd7ce0004d761
-0008d7170009d7ed0002d70e0001d7ffd7680000d709000ad7ffd7cf000bd7340001d7ff
-d7d40004d7610008d7170008d7ed0003d70d0002d7ffd76d0001d702000bd7ffd7d0000b
-d7300002d7ffd7d60004d7620007d7170008d7ed0003d70d0002d7ffd76f000dd7ffd7d2
-000bd7ffd7ffd7090004d7620007d7170008d7ed0006d7080003d7ffd771000bd7ffd7d4
-000bd7280001d7ffd7dd0004d7620007d7160009d7ed0012d7ffd771000bd7ffd7d6000b
-d7250001d7ffd7dc000ad75f0008d7150008d7ef000fd7ffd773000bd7ffd7d6000bd71f
-0001d7ffd7e2000ad7600007d7150008d7f1000cd7ffd773000bd7ffd7d8000bd71c0001
-d7ffd7ffd7500007d7150008d7f50005d7ffd776000ad7ffd7da000ad7160000d7ffd7ff
-d7570007d7150008d7ffd7ffd771000ad7ffd7dc000ad7130001d7ffd7ffd7580007d715
-0008d7ffd7ffd7710009d7ffd7de0009d7120000d7ffd7ffd75a0007d7150008d7ffd7ff
-d7700009d7ffd7e00009d70b0001d7ffd7ffd75f0008d7130009d7ffd7ffd76f000ad7ff
-d7e0000ad7080001d7ffd7ffd7610008d7130008d7ffd7ffd7700009d7ffd7e20009d702
-0001d7ffd7ffd7680007d7130008d7ffd7ffd76f0009d7ffd7e4000bd7ffd7ffd76a0007
-d7130008d7ffd7ffd76e0009d7ffd7480003d7090001d78d0009d7ffd7ffd76b0007d713
-0008d7ffd7ffd76d0009d79e0012d7100020d702001ed708000bd71a000ad704000bd704
-0002d78e0009d7ffd7ffd76a0007d7130008d7ffd7ffd76d0009d79d0015d70e0020d702
-001ed708000bd719000bd703000ed7010003d78e0009d7ffd7ffd76a0008d7120008d7ff
-d7ffd76c0009d7a00015d70b0020d705001bd70a000ad718000ad7040014d7900009d7ff
-d7ffd7690008d7120008d7ffd7ffd76c0009d7a20014d70a0020d7070019d70d0007d718
-0007d7060005d7050009d7900009d7ffd7ffd7690008d7110009d7ffd7ffd76b0009d7a3
-0007d7060006d7090006d7060005d7070004d7080006d70b0005d70e0006d7170007d706
-0005d7090006d7910009d7ffd7ffd7680008d7110008d7ffd7ffd76c0009d7a30006d707
-0006d7090004d7070005d7090003d7080005d70d0004d70e0007d7150008d7060004d70a
-0006d7910009d7ffd7ffd7690007d7110008d7ffd7ffd76b0009d7a40006d7080006d707
-0004d7080005d7090002d7080006d70e0002d70e0008d7140008d7060005d70b0005d792
-0009d7ffd7ffd7680008d7100008d7ffd7ffd76b0009d7a40006d7080006d7070002d70a
-0005d7090002d7080006d70e0002d70e0008d7140008d7060004d70d0003d7930009d7ff
-d7ffd7680008d7100008d7ffd7ffd76a0009d7a50006d7080006d7070002d7090006d709
-0002d7080006d70e0002d70e0008d7130009d7050005d70d0003d7940009d7ffd7ffd767
-0009d70f0008d7ffd7ffd76a0009d7a50005d70a0006d7060002d7090005d70a0002d708
-0005d70f0001d70f0008d7120009d7060005d70d0003d7940009d7ffd7ffd7670009d70f
-0008d7ffd7ffd7690009d7a60005d70a0006d7050002d7090006d70a0001d7090005d70f
-0001d70e0009d711000ad7060005d70e0002d7950009d7ffd7ffd7660009d70f0008d7ff
-d7ffd7690009d7a50006d7090006d7060002d7090006d70a0001d7080006d7200009d710
-000bd7060006d70d0001d7960009d7ffd7ffd766000ad70d0009d7ffd7ffd7680009d7a6
-0006d7090006d7130006d7150006d7200009d7100003d7000005d7070006d70c0002d797
-0009d7ffd7ffd765000ad70d0008d7ffd7ffd7690009d7a50006d70a0006d7120006d715
-0006d7090001d7140003d7000006d70e000bd7070007d70b0002d7970009d7ffd7ffd766
-0009d70d0008d7ffd7ffd7680009d7a60006d7090006d7130006d7150006d7080002d714
-0003d7000006d70d0004d7000006d7080007d7a60009d7ffd7ffd7650009d70d0008d7ff
-d7ffd7680009d7a60006d7090006d7130006d7150006d7070003d7130004d7000006d70d
-000cd7090006d7a60009d7ffd7ffd765000ad70c0008d7ffd7ffd7680008d7a70006d709
-0006d7130006d7150006d7070003d7130004d7000006d70c0004d7000007d7090007d7a6
-0008d7ffd7ffd765000ad70c0008d7ffd7ffd7670009d7a60006d7080007d7140005d715
-0006d7080002d7140003d7010006d70c0004d7000006d70b0007d7a50009d7ffd7ffd764
-000ad70c0008d7ffd7ffd7670008d7a70006d7060007d7150006d7150006d7050005d713
-0004d7010006d70b0004d7000007d70b0008d7a50008d7ffd7ffd764000ad70c0008d7ff
-d7ffd7660009d7a70007d701000ad7160006d7150012d7130004d7010006d70a0004d701
-0007d70c0008d7a40009d7ffd7ffd763000ad70c0008d7ffd7ffd7660009d7a70013d717
-0006d7140012d7140003d7020006d70a0003d7020007d70d0008d7a30009d7ffd7ffd763
-000ad70c0008d7ffd7ffd7660008d7a70010d71b0005d7150012d7140003d7030005d709
-0004d7020006d70f0008d7a30008d7ffd7ffd763000bd70b0008d7ffd7ffd7660008d7a7
-000fd71b0006d7150005d7060005d7130004d7030006d7070004d7020007d7100008d7a2
-0008d7ffd7ffd763000bd70b0008d7ffd7ffd7650009d7a70005d7030006d71a0006d714
-0005d7080004d7130003d7040006d7070003d7030007d7110008d7a10009d7ffd7ffd762
-000bd70b0008d7ffd7ffd7650009d7a70005d7040005d71a0005d7150005d7090002d714
-0003d7040006d7060003d7040006d7130008d7a00009d7ffd7ffd762000bd70b0008d7ff
-d7ffd7650008d7a70006d7040005d71a0005d7150005d7090002d7140003d7040006d705
-0004d7040006d7130008d7a10008d7ffd7ffd762000cd70a0008d7ffd7ffd7650008d7a7
-0006d7040006d7180006d7150005d7090002d7130004d7040006d7040004d7040007d714
-0008d7a00008d7ffd7ffd762000cd70a0008d7ffd7ffd7640009d7a70005d7050006d718
-0005d7150005d70a0001d7140003d7050006d7040003d7050006d7160008d79f0009d7ff
-d7ffd761000cd70a0008d7ffd7ffd7640008d7a80005d7060005d7180005d7150005d70a
-0001d7140003d7050006d7030003d7060006d7070001d70d0007d7a00008d7ffd7ffd761
-000cd70a0008d7ffd7ffd7640008d7a70006d7060006d7170005d7150005d7210003d705
-0006d7020004d7060006d7070000d70f0006d7a00008d7ffd7ffd761000dd7090008d7ff
-d7ffd7640008d7a70005d7070006d7160006d7140005d7140001d70a0003d7070006d701
-0003d7060007d7060001d70f0006d7a00008d7ffd7ffd761000dd7080008d7ffd7ffd764
-0009d7a70005d7080005d7160005d7150005d7130002d70a0003d7070006d7000003d707
-0006d7070001d70f0006d7a00009d7ffd7ffd761000cd7080008d7ffd7ffd7640008d7a8
-0005d7080006d7150005d7150005d7120002d70b0003d707000ad7080006d7070001d710
-0005d7a10008d7ffd7ffd761000cd7080008d7ffd7ffd7640008d7a70006d7080006d715
-0005d7140006d7120002d70b0002d708000ad7080006d7070002d70f0005d7a10008d7ff
-d7ffd761000dd7070008d7ffd7ffd7640008d7a70005d70a0005d7140005d7150005d712
-0003d70a0003d7080009d7090005d7070003d70f0005d7a10008d7ffd7ffd761000dd707
-0008d7ffd7ffd7640008d7a60006d70a0006d7130005d7150005d7110003d70b0003d708
-0008d70a0005d7070003d70f0004d7a20008d7ffd7ffd761000dd7070008d7ffd7ffd764
-0008d7a60006d70a0006d7120006d7150005d7100004d70b0003d7080007d70a0005d708
-0003d70e0005d7a20008d7ffd7ffd761000dd7070008d7ffd7ffd7630009d7a60006d70a
-0007d7110006d7150005d70f0005d70b0002d7090007d7090006d7080004d70d0005d7a2
-0009d7ffd7ffd760000ed7060008d7ffd7ffd7630008d7a60006d70c0007d7100005d715
-0006d70c0007d70b0003d70a0005d70a0006d7070006d70b0005d7a40008d7ffd7ffd760
-000ed7060008d7ffd7ffd7630008d7a50008d70b0007d70f0007d7130008d708000ad70a
-0004d70a0004d70a0007d7070008d7090004d7a50008d7ffd7ffd760000ed7060008d7ff
-d7ffd7630008d7a4000ad70a0009d70b000ad711001dd7090007d7080003d70a0009d706
-000ad7040005d7a70008d7ffd7ffd760000ed7060008d7ffd7ffd7630008d7a10010d708
-000bd7050011d70a001fd706000ed7050003d7060011d7020014d7a80008d7ffd7ffd760
-000ed7060008d7ffd7ffd7630008d7a1000fd709000bd7040012d70a001fd706000ed705
-0002d7070011d7010002d705000ad7aa0008d7ffd7ffd760000fd7050008d7ffd7ffd763
-0008d7ffd7450001d70a0003d7ad0008d7ffd7ffd760000fd7050009d7040003d7040003
-d7040003d7040003d7040003d7040003d7040003d7040003d7040003d7040003d7040003
-d7040003d7040003d7040003d7040003d7040003d7040003d7040003d7030004d7030004
-d7030004d7030004d7030004d7030004d7030004d7030004d7030004d7030004d7030004
-d7030004d7030004d7030004d7030004d7030004d7030004d7030004d7030004d7030004
-d7030004d7030004d7030004d7030004d7030004d7030004d7030004d7030004d7030004
-d7030004d7030004d7030004d7030003d7040003d7040003d7040003d7040003d7040003
-d7040003d7040003d7040003d7040003d7040003d7040003d7040003d7040003d7040003
-d7040003d7040003d704000cd7ffd7ffd7040008d7ffd7ffd760000fd7050008d7ffd7ff
-d7630008d7ffd7ffd7040008d7ffd7ffd760000fd7050008d7ffd7ffd7630008d7ffd7ff
-d7040008d7ffd7ffd760000fd7050008d7ffd7ffd7630008d7ffd7ffd7040008d7ffd7ff
-d7600010d7040008d7ffd7ffd7630008d7ffd7ffd7040008d7ffd7ffd7600010d7040008
-d7ffd7ffd7630008d7ffd7ffd70400ff00ff007ad7040008d7ffd7ffd7630008d7ffd7ff
-d70400ff00ff007ad7040008d7ffd7ffd7630008d7ffd7ffd70400ff00ff007ad7040008
-d7ffd7ffd7630008d7ffd7ffd70400ff00ff007ad7040008d7ffd7ffd7630008d7ffd7ff
-d70400ff00ff007bd7030008d7ffd7ffd7630008d7ffd7ffd70400ff00ff007bd7030008
-d7ffd7ffd7630008d7ffd7ffd70400ff00ff007bd7030008d7ffd7ffd7630008d7ffd7ff
-d70400ff00ff007bd7040008d7ffd7ffd7620008d7ffd7ffd70400ff00ff007bd7040008
-d7ffd7ffd7620008d7ffd7ffd70400ff00ff007bd7040008d7ffd7ffd7620009d7ffd7ff
-d702000cd7ffd7ffd75c0008d7000008d7040008d7ffd7ffd7630008d7ffd7ffd702000c
-d7ffd7ffd75c0008d7000008d7040008d7ffd7ffd7630008d7ffd7ffd702000cd7ffd7ff
-d75c0008d7000009d7030008d7ffd7ffd7630008d7de0009d7060001d7ffd710000cd7ff
-d7ffd75c0008d7010008d7030008d7ffd7ffd7630008d7da0011d7000003d7ffd710000d
-d7ffd7ffd75b0008d7010008d7030008d7ffd7ffd7630009d7d60019d7ffd70f000ed7ff
-d7ffd75b0008d7010008d7030008d7ffd7ffd7630009d7d50007d7080008d7ffd710000e
-d7ffd7ffd75b0008d7010008d7030008d7ffd7ffd7640008d7d30006d70d0006d7ffd710
-000ed7ffd7ffd75b0008d7010008d7030008d7ffd7ffd7640008d7d20006d70f0005d7ff
-d710000ed7ffd7ffd75b0008d7010008d7030008d7ffd7ffd7640009d7d10005d7110004
-d7ffd70f000fd7ffd7ffd75b0008d7010008d7030008d7ffd7ffd7640009d7cf0006d712
-0003d7ffd710000fd7ffd7ffd75b0008d7010008d7030008d7ffd7ffd7650008d7ce0006
-d7130003d7ffd710000fd7ffd7ffd75b0008d7010008d7030008d7ffd7ffd7650009d7cc
-0006d7150002d7ffd70f0011d7ffd7ffd75a0008d7010008d7030008d7ffd7ffd7650009
-d7cc0005d7160002d7ffd70f0011d7ffd7ffd75a0008d7010008d7030008d7ffd7ffd766
-0008d7cb0006d7160001d7ffd7100011d7ffd7ffd75a0008d7020007d7030009d7ffd7ff
-d7650008d7ca0006d7170001d7ffd7100011d7ffd7ffd7590008d7030007d7040008d7ff
-d7ffd7650009d7c90006d7170001d7ffd70f0012d7ffd7ffd7590008d7030007d7040008
-d7ffd7ffd7650009d7c80006d72d0002d7140002d7060001d7110002d7c30012d7ffd7ff
-d7590008d7030007d7040008d7ffd7ffd7650009d7c80006d7290009d70b0008d7050004
-d70a000ad7c00012d7ffd7ffd7590008d7030007d7040008d7ffd7ffd765000ad7c60006
-d727000dd707000ad7040006d708000dd7be0012d7ffd7ffd75a0008d7030007d7040008
-d7ffd7ffd765000ad7c60006d7260004d7050004d7070009d7030007d7070004d7040005
-d7bd0012d7ffd7ffd75a0008d7030007d7040008d7ffd7ffd765000bd7c40006d7260004
-d7070003d70b0005d7030007d7060003d7060005d7bc0009d7000008d7ffd7ffd75a0007
-d7040007d7040008d7ffd7ffd765000bd7c40006d7240005d7080004d70a0005d7020008
-d7040004d7070005d7bc0009d7000008d7ffd7ffd75a0007d7040007d7040009d7ffd7ff
-d764000cd7c20007d7230005d70a0004d7090004d7020002d7000005d7030004d7080005
-d7bb0009d7010008d7ffd7ffd7590008d7040007d7050008d7ffd7ffd764000cd7c20006
-d7240005d70a0004d7090004d7020001d7020003d7030004d7090004d7bc0009d7010008
-d7ffd7ffd7590008d7040008d7040008d7ffd7ffd765000bd7c20006d7230005d70b0004
-d7090004d7010001d7030002d7030005d7090004d7bc0008d7020008d7ffd7ffd7590008
-d7040008d7040008d7ffd7ffd765000cd7c10006d7220005d70c0004d7080005d7000001
-d70b0004d7080006d7bb0009d7010009d7ffd7ffd7590008d7040008d7040008d7ffd7ff
-d765000cd7c10006d7210006d70b0006d7070004d7000002d70a0005d7070006d7bc0008
-d7020008d7ffd7ffd75a0007d7050008d7040008d7ffd7ffd765000dd7c00006d7210005
-d70c0006d7060008d70b0004d7070005d7bd0009d7020008d7ffd7ffd75a0007d7050008
-d7040008d7ffd7ffd766000cd7c00006d7200006d70c0006d7060007d70c0004d7050006
-d7be0008d7030008d7ffd7ffd75a0007d7050008d7040008d7ffd7ffd766000dd7bf0006
-d7200006d70c0006d7060006d70c0005d7030007d7be0009d7030008d7ffd7ffd75a0007
-d7050008d7040009d7ffd7ffd765000dd7bf0006d71f0006d70d0005d7070006d70c0004
-d7010008d7c00008d7040008d7fc0002d7810002d7d40008d7050008d7050008d7ffd7ff
-d765000ed7be0006d71f0006d70d0005d7060006d70c000dd7c20009d7040008d7fa0004
-d77f0004d7d40008d7050008d7050008d7ffd7ffd765000ed7be0006d71f0006d70d0005
-d7060006d70c000ad7c50008d7040008d7ab0014d7380006d70f0010d75c0006d70d0009
-d7140009d79d0007d7060008d7050008d7ffd7ffd765000fd7bd0006d71f0005d70d0006
-d7060005d70c0005d7ca0009d7040008d7ae0015d7330007d712000fd7590007d70f0007
-d7140006d7a00007d7060008d7050008d7f20002d7ffd770000fd7bc0007d71e0005d70d
-0005d7070005d70c0005d7c90009d7050008d7af0005d7070007d7350004d7130005d703
-0006d7300000d7280004d7110006d7120006d7a10007d7060008d7050008d7790006d703
-0001d7690004d7ffd76c0002d700000fd7bd0006d7160002d7040005d70c0005d7070005
-d70d0005d7c90009d7050008d7af0005d7090006d7350003d7130005d7040006d72f0000
-d7280004d7120005d7120006d7a10007d7060008d7050008d776000fd7670006d7ffd763
-0002d7030001d7030010d7bc0006d7150003d7040005d70c0005d7070005d70d0005d7c8
-0009d7060007d7b00005d70a0006d7340003d7130005d7050006d72d0001d7280004d712
-0006d7100006d7a20007d7060008d7050009d7740004d7040006d7670006d7ffd7620000
-d70c0011d7bc0006d7140002d7050005d70b0005d7080005d70d0005d70e0001d7b60009
-d7060008d7b00005d70b0005d7340003d7130005d7060005d72c0002d7280004d7120006
-d7100006d7a10008d7060008d7060008d7740004d7060004d7690004d7ffd75b0002d711
-0012d7bb0006d7120003d7060005d70a0006d7080004d70e0006d70c0003d7b40009d707
-0008d7b00005d70c0005d7330003d7130005d7070004d72c0002d7280004d7120007d70e
-0007d7a10007d7070008d7060008d7740003d7080003d76a0003d7ffd75a0000d7140012
-d7bc0006d7100003d7070005d70a0005d7080005d70f0005d70a0003d7b60009d7060009
-d7b00005d70d0004d7330003d7130005d7070005d72a0003d7280004d7120007d70e0007
-d7a10007d7070008d7060008d7730003d70a0002d76a0003d7ffd7520002d71b0012d7bc
-0007d70e0002d7080005d7090005d7090004d7100006d7080003d7b60009d7070008d7b1
-0005d70d0005d7320003d7130005d7070005d7290004d7280004d7120002d7000004d70c
-0002d7000004d7a10007d7070008d7060009d7710004d70a0002d76a0003d7ffd7510000
-d71e0013d7bc0007d70b0003d70a0005d7070005d70a0004d7110008d7020005d7b60009
-d7070009d7b10005d70e0004d7020007d7040006d7080006d70b0003d7130005d7070005
-d7080006d70c0002d7010003d702000ad7070005d70e0005d7000004d7120002d7000004
-d70c0002d7000004d70b0005d70b0002d7030004d7070003d70e0006d70c0001d7020003
-d700000ad7030007d7260008d7070008d7070008d7710005d70a0001d76a0003d7ffd74a
-0002d7230014d7bc0014d70d0005d7040005d70c0004d711000fd7b7000ad7070009d7b1
-0005d70e0005d7010007d7040006d707000ad7080003d7130005d7070005d706000ad707
-0005d7000012d704000ad70a000dd7120002d7010004d70a0002d7010004d709000ad705
-0005d7010008d7020008d70a000ad7070004d7010010d7030007d7260008d7060008d708
-0008d7710005d70a0001d76a0003d7ffd7490000d7260009d700000ad7bd0011d710000c
-d70d0004d714000cd7b7000ad7080009d7b10005d70e0005d7030005d7060004d7050004
-d7010006d7070003d7130005d7070004d7060004d7010005d7040007d7000012d7040003
-d7000006d7080003d7010008d7120002d7010004d70a0002d7010004d7080003d7010006
-d7020007d700000ad7000009d7090004d7010005d7040006d7010006d7000005d7090002
-d7280007d7070008d7080008d7710005d70a0001d76a0003d7ffd7420002d72c0014d7be
-000ed7130009d70f0004d7150009d7b9000ad7070009d7b20005d70e0006d7030004d707
-0003d7040003d7050004d7070003d7130005d7060005d7050004d7030004d704000fd701
-0004d7080002d7040004d7070003d7040006d7120002d7020004d7080002d7020004d707
-0003d7040004d7030006d7000016d7070003d7040004d7040006d7000007d7010004d709
-0001d7290007d7070008d7080009d7700006d7090001d7090008d70a0002d7020005d705
-0005d70b0007d70a0002d7020006d7080003d7030005d70c0007d70b0002d7020003d706
-0008d7f40002d7030001d72f0009d700000ad7c20007d7170005d72e0004d7bb000ad708
-0009d7b20005d70e0006d7030004d7070003d7040003d7060003d7070003d7130005d705
-0005d7050004d7050004d7060006d7000004d7010004d7070002d7060004d7050003d706
-0005d7120002d7020004d7080002d7020004d7060003d7060004d7040007d7030007d703
-0004d7060003d7060004d706000cd7010005d7070002d7280008d7070008d7090008d771
-0007d712000ad7060005d7010007d7030007d709000ad7060004d7010008d7070003d701
-0008d709000ad7080004d7010005d704000ad7f20000d7390015d7ffd7d6000bd707000a
-d7b20005d70f0005d7030004d7070003d7040003d7060003d7070003d7130005d7030006
-d7050004d7070004d7050005d7020002d7020004d7070002d7060005d7030004d7070004
-d7120002d7030004d7060002d7030004d7060003d7060004d7040005d7050005d7060003
-d7050004d7070004d7050005d7020002d7030004d7070002d7280008d7070008d7090008
-d7720008d7100003d7000006d7030012d7010009d7060004d7020005d7030006d700000a
-d7060003d700000ad7070005d7010005d7040006d7010006d7030002d7010006d7ea0002
-d73e0009d700000bd7ffd7d4000bd7080009d7b30005d70f0005d7030004d7070003d704
-0003d7060003d7070003d713000fd7060004d7070004d7050004d7090004d7060002d708
-0004d7030004d7070004d7120002d7030004d7060002d7030004d7050003d7070004d705
-0003d7070003d7070004d7040004d7070004d7050004d70b0003d7060002d7290008d707
-0008d7090008d772000ad70d0002d7040005d7020012d700000ad7060003d7040004d703
-0012d706000fd7070003d7050004d7030006d7000007d7010003d7040005d7e80000d742
-0009d700000ad7ffd7d4000ad708000ad7020002d7ad0005d70f0005d7030004d7070003
-d7040003d7060003d7070003d713000ed7070003d7090004d7040004d7090004d7060010
-d7020005d7070004d7120002d7040004d7040002d7040004d7050011d7040003d7070003
-d7070004d7040003d7090004d7040003d70c0004d7050002d7290008d7070008d7090009
-d772000ad70b0002d7060004d7050005d7040007d7040004d7040003d7060003d7050007
-d7030005d7050006d7030004d7060003d7060004d7060005d7010003d7010003d7060004
-d7e10002d7470009d701000ad7ffd7d2000ad7090009d7060000d7ac0005d70e0005d704
-0004d7070003d70e0004d7070003d7130005d70f0004d7090004d7040004d7090004d705
-0011d7020004d7080004d7120002d7040004d7040002d7040004d7050011d7040003d707
-0003d7070004d7030004d7090004d7040003d70d0003d7050001d7290008d7080008d709
-0009d774000ad7090002d7060005d7040004d7060005d7050004d7040004d7050004d704
-0005d7060005d7040004d7060004d7040004d7070004d7050004d7030001d7020003d706
-0005d7de0001d74b0009d701000ad7ffd7d0000ad709000ad70c0001d7a50005d70e0005
-d7040004d7070003d7090009d7070003d7130005d70f0004d7090004d7040004d7090004
-d7050012d7010004d7080004d7120002d7040005d7020003d7040004d7050011d7040003
-d7070003d7070004d7030004d7090004d7040003d70d0004d7030002d7290008d7080008
-d70a0008d775000ad7070002d7080004d7040004d7060004d7060004d7040003d7060004
-d7040004d7080004d7040003d7070004d7040003d7080004d7050004d7070003d7070005
-d7d70002d7510009d701000bd7ffd7ce000bd7090009d70f0001d7a30005d70e0005d704
-0004d7070003d7080005d7000003d7070003d7130005d70f0004d7090005d7030004d709
-0004d7050003d7100004d7080004d7120002d7050004d7020002d7050004d7050003d712
-0003d7070003d7070004d7030004d7090004d7040003d70e0003d7030002d7290008d708
-0008d70a0008d776000ad7060010d7040004d7060004d7060004d7040003d7060004d704
-0004d7080004d7040003d7070004d7030004d7080005d7040003d7080011d7d50001d755
-0009d701000ad7ffd7cd000bd709000ad7b50005d70e0005d7040004d7070003d7070004
-d7020003d7070003d7130005d70f0004d70a0004d7030004d7090004d7050004d70f0004
-d7080004d7120002d7050005d7000003d7050004d7050003d7120003d7070003d7070004
-d7030004d7090004d7040003d70e0004d7010002d72a0008d7080008d70a0009d7770009
-d7040011d7040004d7060004d7060004d70c0007d7040004d7080004d7040003d7070004
-d7030004d7080005d7040003d7080011d7cc0004d75b0009d702000ad7ffd7cb000bd70a
-0009d7160002d79c0005d70e0004d7050004d7070003d7050004d7040003d7070003d713
-0005d70f0004d70a0004d7030004d7090004d7050004d70f0004d7080004d7120002d706
-0004d7000002d7060004d7050004d7110003d7070003d7070004d7030004d7090004d704
-0003d70e0004d7010002d7290009d7080008d70a0009d7790008d7030003d7120004d706
-0004d7060004d709000ad7040004d7080004d7040003d7070004d7030004d7090004d704
-0003d7080003d7d30002d7650009d702000ad7ffd7c9000bd70a000ad7190000d79b0005
-d70e0004d7050004d7070003d7040003d7060003d7070003d7130005d70f0005d7090003
-d7040004d7090004d7050004d70b0000d7020004d7080004d7120002d7060008d7060004
-d7050004d70a0000d7050003d7070003d7070004d7030005d7080004d7040003d70f0004
-d7000001d72a0008d7090008d70b0008d77b0006d7030004d7110004d7060004d7060004
-d7080005d7000004d7040004d7090003d7040003d7070004d7030004d7090004d7040003
-d7080003d7d10001d7680009d703000ad7ffd7c7000bd70b0009d71f0002d7940005d70d
-0004d7060004d7070003d7040003d7060003d7070003d7130005d70f0005d7090003d704
-0004d7090004d7050005d70a0001d7010005d7070004d7120002d7070006d7070004d705
-0005d7090001d7040003d7070003d7070004d7030005d7080004d7040003d70f0007d72a
-0008d7090008d70b0008d76e0001d70b0006d7020004d7110004d7060004d7060004d706
-0005d7020004d7040004d7090003d7040003d7070004d7030004d7090004d7040003d708
-0003d7ca0002d76f0009d703000ad7ffd7c5000bd70b000ad7220001d7920005d70c0005
-d7060004d7070003d7030003d7070003d7070003d7130005d7100004d7090003d7040004
-d7090004d7060005d7080001d7020005d7070004d7120002d7070006d7070004d7050005
-d7090001d7040003d7070003d7070004d7030005d7080004d7040003d7100006d72a0008
-d7090008d70b0009d76d0001d70c0005d7020004d7110004d7060004d7060004d7050004
-d7040004d7040004d7090003d7040003d7070004d7030004d7090004d7040003d7080004
-d7c70001d7720009d703000bd7ffd7c3000bd70c0009d7b80005d70b0005d7070004d707
-0003d7030003d7070003d7070003d7130005d7100004d7080004d7040004d7090004d706
-0005d7080001d7020006d7060004d7120002d7080004d7080004d7050006d7070002d704
-0003d7070003d7070004d7030005d7080003d7050003d7100005d72a0009d7090008d70b
-0009d76d0002d70b0005d7020004d70b0000d7040004d7060004d7060004d7050003d705
-0004d7040004d7090003d7040003d7070004d7030004d7090004d7040003d7080004d70b
-0000d7ffd7300009d703000cd7ffd7c0000bd70c000ad7290002d78b0005d70a0006d707
-0004d7050005d7030004d7050004d7070003d7130005d7100005d7070003d7050004d709
-0004d7070005d7060002d7030005d7060004d7120002d7080004d7080004d7060006d705
-0002d7050003d7070003d7070004d7040005d7060004d7050003d7110004d72a0009d708
-0008d70d0008d76d0002d70c0004d7020005d7090001d7040004d7060004d7060004d704
-0003d7060004d7040004d7090003d7040003d7070004d7030004d7090004d7040003d708
-0005d7090001d7b30002d7790009d704000cd7ffd7be000bd70d0009d72d0000d78a0005
-d7080007d7090005d7010008d7000000d7000006d701000ad7030003d7130005d7110005
-d7050003d7060004d70a0004d7010002d701000ed7040007d7020006d7010000d70f0002
-d7090002d7090005d705000ed7050004d7070004d7060004d7050005d7050003d7060004
-d7100003d72b0008d7090008d70d0008d76d0002d70c0004d7030005d7080001d7040004
-d7060004d7060004d7030004d7060004d7040004d7090003d7040003d7070004d7030005
-d7080004d7040003d7080006d7080001d7b20000d77d0009d704000cd7ffd7bc000bd70d
-0009d7330002d7830008d7010008d70c000ad7000006d700000ad7000007d7020005d712
-0005d7120005d7030003d7070005d7090008d703000cd7060013d70e0003d7090002d709
-0005d706000cd7060005d7050005d7060004d7060005d7030003d7070004d7110002d72b
-0008d7090008d70d0009d76c0003d70b0004d7030005d7080001d7040004d7060004d706
-0004d7030004d7060004d7040004d7090003d7040003d7070004d7030005d7080003d705
-0003d7080006d7070002d7aa0002d7830009d705000cd7ffd7ba000bd70e0009d7360000
-d77e0016d70e0008d7010004d7030008d7010006d700000ad70c000dd70f000bd705000a
-d7070007d705000ad7080009d7000005d70c000bd7060000d706000dd7040009d704000a
-d701000ad700000ad704000bd705000ad70e0002d72a0009d7090008d70d0009d76c0003
-d70b0004d7040006d7040003d7040004d7060004d7060004d7030004d7040006d7010000
-d7010005d7070003d7050003d7070004d7040005d7060003d7060003d7090007d7040002
-d7aa0000d7870009d705000cd7ffd7b8000bd70e0009d73d0001d7770012d7120007d702
-0002d7060006d7020005d701000ad70c000dd7110008d706000ad7080006d7070006d70c
-0007d7000002d70f000bd7060000d706000dd7050007d705000ad701000ad700000ad705
-0008d707000ad70d0002d72b0009d7090008d70e0008d76c0005d7080004d705000ed705
-0004d7060004d7060004d7030006d701000ad7010005d7060003d7060003d7070004d705
-0005d7050003d7060004d709000dd7a40001d78e0009d705000cd7ffd7b6000bd70e000a
-d73f0001d7ffd7ee0002d72b0008d70a0008d70e0009d76b0006d7050004d708000cd705
-0005d7060004d7060005d7020013d7010006d7040003d7060005d7060005d7040006d703
-0003d7060005d70a000cd7a20001d7910009d705000cd7ffd7b4000cd70d000ad7ffd7ff
-d7300002d72b0009d7090008d70f0009d76b0010d70a000ad704000ad700000ad700000a
-d7010008d7010006d702000ed7050009d701000ad703000bd706000ad7080009d7ffd738
-0009d706000cd7ffd7b2000cd70e000ad7460002d7ffd7e60002d72b0009d7090008d710
-0008d76b0002d7020008d70e0006d706000ad700000ad700000ad7030005d7030004d703
-0004d7000006d7070009d701000ad7070005d708000ad70a0006d79d0002d7990009d706
-000cd7ffd7b0000cd70e000ad74a0000d7ffd7df0001d7020002d72c0008d70a0008d710
-0009d7d00004d7f70000d79d0009d706000cd7ffd7ae000cd70e000ad7500002d7ffd7d6
-0009d72b0009d70a0008d7100009d7d00004d7ef0002d7a3000ad706000dd7ffd7aa000d
-d70e000bd7530000d7ffd7d50008d72c0009d70a0008d7110008d7d00004d7ee0000d7a7
-000ad707000dd7ffd7a6000dd70f000bd7ffd7ffd72b0007d72d0008d70b0008d7110009
-d7cf0004d7ffd797000bd707000dd7ffd7a4000dd70f000bd75b0002d7ffd7cd0006d72d
-0009d70a0009d7110009d7cf0004d7e60002d7ae000ad708000ed7ffd7a0000ed710000a
-d75f0000d7ffd7cd0004d72e0009d70a0008d7130008d7cf0004d7e50000d7b1000bd709
-000dd7ffd79e000dd711000bd7650002d7ffd7f90008d70b0008d7130008d7cf0004d7dd
-0002d7b8000bd709000dd7ffd79c000dd711000bd7690000d7ffd7f80008d70b0008d713
-0009d7cb000ad7d90000d7bc000bd709000dd7ffd79a000dd711000bd7700001d7ffd7f0
-0009d70b0008d7130009d7cb000ad7d20001d7c3000bd709000ed7ffd796000ed711000b
-d7730001d7ffd7ee0009d70b0008d7140008d7ffd7a70001d7c6000bd709000ed7ffd794
-000ed712000ad7ffd7ffd7650008d70b0009d7140009d7ffd7ffd76f000cd70a000dd7ff
-d792000dd713000bd77b0002d7ffd7e50009d70b0008d7150009d7ffd79e0002d7ce000b
-d70b000dd7ffd790000dd713000bd77f0000d7ffd7e40009d70b0008d7160008d7ffd79d
-0000d7d2000bd70b000ed7ffd78c000ed713000bd7860002d7ffd7dc0008d70c0008d716
-0009d7ffd7940002d7d9000bd70b000fd7ffd788000fd714000ad78a0000d7ffd7da0009
-d70c0008d7160009d7ffd7930000d7dd000bd70c000ed7ffd786000ed715000ad7ffd7ff
-d7670009d70c0008d7160009d7ffd78c0001d7e4000bd70d000ed7ffd782000ed716000a
-d7920002d7ffd7d20008d70c0009d7170009d7ffd7890001d7e7000bd70d000ed7ffd780
-000ed716000bd7950000d7ffd7d00009d70c0008d7180009d7ffd7ffd774000bd70e000e
-d7ffd77c000ed716000cd79c0002d7ffd7c80009d70c0008d7180009d7ffd7810002d7f0
-000bd70e000fd7ffd778000fd716000cd7a00000d7ffd7c70008d70d0008d718000ad7ff
-d77f0000d7f4000bd70f000fd7ffd774000fd717000cd7a70001d7ffd7bf0009d70d0008
-d718000ad7ffd7770002d7fb000bd70f0010d7ffd7700010d717000cd7aa0001d7ffd7bd
-0009d70c0009d7190009d7ffd7760000d7ff000cd70e0010d7ffd76e0010d717000cd7ff
-d7ffd76b0008d70d0008d71a000ad7ffd7ffd777000cd70f0010d7ffd76a0010d717000d
-d7b30002d7ffd7b40009d70d0008d71a000ad7ffd76d0002d7ffd707000cd70f0011d7ff
-d7660011d717000dd7b70000d7ffd7b30008d70e0008d71a000bd7ffd76b0000d7ffd70b
-000dd70e0012d7ffd7620012d717000dd7be0002d7ffd7aa0009d70e0008d71a000bd7ff
-d7630002d7ffd712000dd70f0012d7ffd75e0012d718000dd7c20000d7ffd7a90009d70d
-0009d71a000bd7ffd7620000d7ffd716000dd7100012d7ffd75a0012d719000dd7ffd7ff
-d76e0008d70e0009d71b000bd7ffd75a0001d7ffd71d000dd7110012d7ffd7560012d71a
-000dd7ca0002d7ffd7a00009d70e0008d71c000bd7ffd7580001d7ffd721000dd7110012
-d7ffd7520012d71a000dd7cf0000d7ffd79f0008d70f0008d71c000bd7ffd7ffd77d000d
-d7110013d7ffd74e0012d71b000dd7d50002d7ffd7980008d70f0008d71c000cd7ffd74f
-0002d7ffd72a000dd7120014d7ffd7480013d71c000dd7d90001d7ffd7950009d70e0009
-d71c000cd7ffd74e0000d7ffd72f000cd7130014d7ffd7440013d71d000cd7e10001d7ff
-d78f0008d70f0009d71d000cd7ffd7450002d7ffd734000fd7130014d7ffd7400013d71d
-000dd7e40001d7ffd78c0009d70f0008d71e000cd7ffd7440000d7ffd7350012d7140014
-d7ffd73c0013d71d000ed7e70000d7ffd78b0008d7100008d71e000cd7ffd7ffd7790015
-d7150014d7ffd7380014d71d000ed7ed0002d7ffd7840008d7100008d71e000dd7ffd73b
-0002d7ffd7380018d7150014d7ffd7340014d71d000ed7f20001d7ffd7810009d70f0009
-d71e000dd7ffd73a0000d7ffd739001bd7160014d7ffd7300014d71e000ed7f90002d7ff
-d77a0008d7100009d71f000cd7ffd7330002d7ffd73c001fd7160015d7ffd72a0015d71e
-000fd7fd0001d7ffd7780008d7100008d720000dd7ffd7300001d7ffd73d0011d700000f
-d7170015d7ffd7260015d71f000fd7ffd7ffd7780008d7110008d720000dd7ffd72a0001
-d7ffd7420010d7030010d7170016d7ffd7200016d720000fd7ffd7050002d7ffd7700008
-d7100009d720000ed7ffd7270001d7ffd7420010d707000fd7180018d7ffd7180018d720
-000fd7ffd70a0001d7ffd76d0009d7100009d721000dd7ffd7260000d7ffd7420011d70a
-000fd7190019d7ffd7100019d722000ed7ffd7120002d7ffd7660008d7110008d722000d
-d7ffd71f0002d7ffd7450011d70d000fd71a001ad7ffd70a001ad723000ed7ffd7160001
-d7ffd7640008d7100009d722000ed7ffd71c0001d7ffd7460011d711000fd71b001ad7ff
-d704001ad724000ed7ffd71e0002d7ffd75c0008d7110009d723000dd7ffd7150002d7ff
-d74b0010d7140010d71b001ad7ffd7000019d725000fd7060000d7ffd71a0001d7ffd75a
-0008d7110008d724000ed7ffd7120001d7ffd74c0010d718000fd71d001ad7fa001ad725
-000fd7090001d7ffd7ffd7740009d7100009d724000ed7ffd7ffd75f0011d71b000fd71d
-001bd7f4001ad726000fd7ffd72c0002d7ffd7520008d7110009d725000ed7ffd70a0002
-d7ffd74e0011d71e0010d71e001cd7ec001bd7270010d7ffd7300001d7ffd74f0009d711
-0008d726000ed7ffd7080001d7ffd74f0011d7220010d71f001dd7e4001cd7280010d714
-0001d7ffd7210002d7ffd7480008d7110009d726000fd7ffd7000002d7ffd7540010d725
-0011d71f001ed7dd001ed7280011d7170001d7ffd7220001d7ffd7450009d7110009d727
-000ed7fe0001d7ffd7550011d7280011d720001fd7d5001fd7290011d7ffd7440001d7ff
-d73f0008d7120008d728000fd7f70001d7ffd7590011d72b0012d7210020d7cd0020d72a
-0012d7ffd7470001d7ffd73c0009d7120008d728000fd7f50001d7ffd7590011d72f0012
-d7220021d7c60020d72b0012d7220001d7ffd7260000d7ffd73b0008d7120009d7280010
-d7f30000d7ffd75a0010d7320013d7230022d7be0022d72b0013d7250001d7ffd7290002
-d7ffd7330009d7120009d729000fd7ec0002d7ffd75d0010d7360013d7240023d7b60023
-d72c0013d7ffd7560001d7ffd7310008d7130008d72a0010d7e90001d7ffd75e0011d739
-0013d7250025d7ac0025d72d0014d7ffd75d0002d7ffd7290009d7120009d72a0010d7e2
-0002d7ffd7620011d73d0013d7270027d7a00027d72f0014d7300000d7ffd7300001d7ff
-d7270008d7130009d72b0010d7df0001d7ffd7630011d7410013d7290029d7940029d731
-0014d7330001d7ffd7ffd7570009d7130008d72c0010d7ffd7ffd7440010d7450014d72a
-002bd788002bd7320015d7370000d7ffd7330002d7ffd71f0008d7130009d72c0011d7d7
-0002d7ffd7660010d7490014d72c002ed77a002ed7340015d7ffd7710001d7ffd71c0009
-d7130009d72d0010d7d50001d7ffd7670011d74c0015d72d0030d76e0030d7350016d7ff
-d7790002d7ffd7150008d7140008d72e0011d7cd0002d7ffd76b0011d7500015d7300034
-d75c0034d7380016d7420001d7ffd7390001d7ffd7120009d7130009d72e0011d7cb0001
-d7ffd76c0011d7540016d733003bd742003bd73b0016d7470001d7ffd73d0001d7ffd70c
-0008d7140009d72f0011d7c40001d7ffd7710010d7580016d73600b0d73e0016d7ffd78b
-0001d7ffd7090009d7140008d7300011d7c20001d7ffd7710011d75c0016d73700a8d73f
-0016d7ffd7900000d7ffd7080008d7140009d7300012d7c00000d7ffd7710011d7600017
-d73800a0d7400017d7540000d7ffd7410002d7ffd7000009d7140009d7310012d7b80002
-d7ffd7740011d7640017d73b0096d7430017d7570001d7ffd7420001d7fd0009d7140009
-d7320012d7b60001d7ffd7760010d7680018d73e008ad7460018d7ffd7a40002d7f60009
-d7140009d7330012d7ae0002d7ffd77a0010d76c0019d7450076d74d0019d7ffd7a90001
-d7f30009d7150008d7340012d7ac0001d7ffd77b0011d76f001bd74b0062d753001bd763
-0001d7ffd7ffd73b0008d7150009d7340013d7ffd7ffd7270011d774001cd74d0056d755
-001cd7680001d7ffd7490002d7eb0009d7150009d7350008d7000009d7a30002d7ffd77d
-0011d778001dd7540042d75c001dd7ffd7b90001d7e80009d7150009d7360013d7a10001
-d7ffd77f0010d77d001dd76c000cd774001dd7ffd7c20002d7e10009d7150009d7370008
-d7000009d7990002d7ffd7830011d781001cd7ea001cd7760001d7ffd74f0001d7de0009
-d7150009d7380008d7000009d7970001d7ffd7840011d786001cd7e4001dd77a0001d7ff
-d7530001d7d80009d7150009d7380009d7000009d78f0002d7ffd7880011d78a001ed7dd
-001dd7ffd7d50001d7d50009d7160009d7390008d7010009d78c0001d7ffd7890011d78f
-001fd7d5001fd7ffd7d90000d7d30009d7160009d73a0009d7000009d7ffd7ffd7170010
-d7940020d7cd0020d7880001d7ffd7560002d7cc0009d7160009d73b0008d7010009d784
-0002d7ffd78c0011d7990020d7c40021d78e0001d7ffd7570001d7c90009d7160009d73c
-0008d701000ad7810001d7ffd78d0011d79e0023d7b80023d7ffd7f20002d7c1000ad716
-0009d73c0009d7010009d77a0002d7ffd7910011d79f002ad7ac0025d7ffd7f90001d7bf
-0009d7170009d73d0008d7020009d7770001d7ffd7930010d7a10030d7a00027d7ffd7ff
-d7be0009d7170009d73e0008d7020009d7710001d7ffd7970010d7a2000ad7020029d795
-002ad7a20001d7ffd7600002d7b70009d7170009d73f0008d7020009d76e0001d7ffd797
-0011d7a2000ad7070029d78d002fd7a30001d7ffd7610001d7b40009d7170009d7400008
-d702000ad76c0000d7ffd7970011d7a3000ad70c0029d7850033d7ffd7ffd70d0002d7ac
-000ad7170009d7400009d7020009d7650002d7ffd79a0011d7a5000ad710002dd774002d
-d703000bd7ffd7ffd70f0001d7aa0009d717000ad7410008d702000ad7620001d7ffd79c
-0010d7a6000ad7150035d75c0035d708000bd7a60001d7ffd76b0001d7a3000ad7170009
-d7420009d7020009d75b0002d7ffd7a00011d7a6000ad71a003ed742003ed70d000ad7a8
-0001d7ffd76b0001d7a10009d717000ad7430008d7030009d7580001d7ffd7a10011d7a8
-000ad71e0048d7270047d712000ad7ffd7ffd7170000d79f0009d7180009d7440009d702
-000ad7ffd7f90011d7a9000ad72400aed717000bd7ffd7ffd71b0002d797000ad717000a
-d7440009d7030009d7500002d7ffd7a30011d7aa000ad72b00a2d71e000bd7ab0001d7ff
-d76f0001d7950009d718000ad7450009d702000ad74d0001d7ffd7a50010d7ab000ad732
-0096d725000ad7ad0001d7ffd7730002d78d000ad717000ad7460009d703000ad7450002
-d7ffd7a90011d7ac000ad738008ad72b000bd7ffd7ffd7250001d78a000ad718000ad747
-0009d703000ad7420001d7ffd7aa0011d7ad000ad740007cd733000bd7ffd7ffd7b0000a
-d718000ad7480009d703000ad73c0001d7ffd7ae0011d7ae000ad7470070d73a000bd7b0
-0001d7ffd7760002d782000ad718000ad7490009d703000ad7390001d7ffd7ae0011d7b0
-000ad751005cd745000ad7b20001d7ffd7770001d77f000ad718000ad74a0009d704000a
-d7370000d7ffd7af0010d7b1000ad75f0042d752000bd7ffd7ffd7310002d777000ad719
-000ad74b0009d703000bd72f0002d7ffd7b20011d7b1000ad76e0027d760000bd7ffd7ff
-d7330001d774000bd718000ad74c0009d704000ad72d0001d7ffd7b30011d7b30009d778
-0009d776000bd7b50001d7ffd7800001d76e000ad719000ad74d0009d704000ad7250002
-d7ffd7b70011d7b4000ad7780009d777000ad7b70001d7ffd7800001d76b000ad719000a
-d74e0009d705000ad7220001d7ffd7b90010d7b5000ad7790009d777000bd7ffd7ffd73b
-0000d769000ad71a000ad74f0009d704000ad7ffd7dc0011d7b5000ad77a0009d778000b
-d7ffd7ffd73f0002d762000ad719000ad7500009d705000ad71a0002d7ffd7bb0011d7b7
-000ad77a0009d779000ad7ffd7ffd7420001d75f000ad71a000ad7510009d705000ad717
-0001d7ffd7bc0011d7b8000ad77b0009d77a000ad7ba0000d7ffd78b0002d757000ad71a
-000ad7520009d705000bd70f0002d7ffd7c00011d7b9000ad77c0009d77a000bd7ba0001
-d7ffd78c0000d755000bd71a000ad7530009d705000ad70d0001d7ffd7c20010d7bb0009
-d77d0009d77b000bd7ffd7ffd74e0001d74e000ad71a000ad7540009d706000ad7060001
-d7ffd7c60011d7bb000ad77d0009d77c000ad7ffd7ffd7500001d74b000ad71b000ad755
-0009d705000bd7030001d7ffd7c60011d7bc000ad77e0009d77c000bd7be0001d7ffd7db
-000bd71a000ad7560009d706000bd7010000d7ffd7c60011d7bd000ad77f0009d77d000b
-d7bf0001d7ffd7930002d741000bd71b000ad7570009d706000ad7ffd7c70011d7bf000a
-d77f0009d77e000bd7ffd7ffd7570000d740000ad71b000ad758000ad706000ad7ffd7c5
-0011d7bf000ad7800009d77f000ad7ffd7ffd75d0002d737000ad71b000bd7590009d706
-000bd7ffd7c20011d7c0000ad7810009d77f000bd7c30001d7ffd7990000d735000bd71b
-000ad75a000ad706000bd7ffd7bf0011d7c20009d7820009d780000bd7c40001d7ffd7cd
-000bd71b000bd75b0009d707000ad7ffd7bd0011d7c3000ad7820009d781000bd7ffd7ff
-d7630002d72c000ad71c000ad75d0009d706000bd7c10001d74d0002d7a60010d7c4000a
-d7830009d782000ad7ffd7ffd7660000d72a000bd71b000ad75e000ad706000bd7aa0005
-d7040001d7060005d7490004d7a40011d7c50009d7840009d782000bd7c80001d7ffd7a0
-0002d721000bd71c000ad75f0009d707000bd7a6000bd7000002d7060005d7470006d7a2
-0011d7c6000ad7840009d783000bd7c90001d7ffd7a10000d71f000bd71c000ad760000a
-d707000ad7a50005d7020007d7060005d7460007d7a00011d7c7000ad7850009d784000a
-d7ffd7ffd7730001d718000ad71c000bd7610009d707000bd7a40003d7070004d7060005
-d7490004d79e0011d7c8000ad7860009d785000ad7ffd7ffd7740001d715000bd71c000a
-d762000ad706000cd7a20003d7080004d7070003d74a0004d79d0010d7ca000ad7860009
-d785000bd7cd0001d7f90003d7150003d7a2000bd71c000ad764000ad7050000d700000b
-d7a00004d7090003d7560004d79b0011d7ca000ad7870009d786000bd7ce0001d7a90010
-d73b0005d7130005d7910002d70b000bd71d000ad7650009d7050000d701000ad7a00004
-d70a0002d7560004d7990011d7cb000ad7880009d787000ad7ffd77a0012d7390005d713
-0005d7940000d70a000ad71d000ad766000ad7040000d702000ad79f0004d70a0002d756
-0004d7970011d7cd0009d7890009d787000bd7ffd77d0010d7370005d7130005d79a0002
-d701000ad71e0009d768000ad7030000d703000ad79e0005d70a0001d7560004d7950011
-d7ce000ad7890009d788000bd7d20000d7a90004d7040006d72c0001d7080004d7090000
-d7080005d79d000bd71e000ad768000ad7030000d703000bd79d0005d70a0001d7560004
-d7940011d7ce000ad78a0009d789000bd7d20000d7a80004d7060005d72b0001d7090001
-d70b0000d70a0001d79f000bd71e0009d76a000ad7020000d704000bd79c0006d7090001
-d7090002d70b0005d70c0002d7030004d70c0006d70a0004d7920011d7cf000ad78b0009
-d78a000ad7d30000d7a70004d7060005d72b0001d7160001d7ab000bd71e000ad76b0009
-d7020000d705000ad79c0008d7100005d7080010d7020004d7010008d708000bd7070004
-d7900011d7d1000ad78b0009d78a000bd7ffd77b0004d7070005d7290002d7160001d7ab
-000ad71e000ad76c000ad7010000d706000ad79c0009d70c0007d7070003d7040008d700
-0006d700000ad7060004d7010005d7070004d78e0011d7d2000ad78c0009d78b000bd7ff
-d77a0004d7070005d7280003d7150002d7aa000ad71f0009d76e000ad7000000d707000a
-d79c000ad70a0007d7070003d7040008d7000012d7050003d7050004d7060004d78d0010
-d7d3000ad78d0009d78c000bd7d50001d7a10004d7070005d7270004d7140003d7a9000a
-d71f000ad76e000ad7000000d707000bd79b000bd70c0004d7060003d7060004d7050007
-d7030005d7040003d7050004d7060004d78b0011d7d40009d78e0009d78d000ad7d70001
-d79f0004d7070005d7070004d70d0001d7040000d7030005d70a0002d7050004d70b0002
-d70c0002d70f0001d7050001d76f000bd71f0009d770000bd708000ad79d000bd70a0004
-d7060003d7060004d7060004d7060004d7040003d7050004d7060004d7890011d7d5000a
-d78e0009d78d000bd7ffd7780004d7070005d705000ad7070003d7020011d7030004d703
-000bd7040004d70a0008d7090003d7030005d76d000ad71f0009d771000bd709000ad79e
-000ad7090004d7050004d7060004d7060003d7070004d7040003d7060003d7060004d787
-0011d7d6000ad78f0009d78e000bd7ffd7770004d7070005d704000cd7040005d7010012
-d7010006d703000bd7020006d708000ad7070005d7010008d76b000ad7200009d772000a
-d70a000ad79e000ad7080004d7050004d7070003d7060003d7070004d7040003d7060003
-d7060004d7850011d7d80009d7900009d78f000ad7db0001d7990004d7070004d7040004
-d7030004d7030006d7000007d7010004d7050007d7060003d7060007d7070003d7030005
-d7040006d700000ad769000ad7200009d774000ad70a000ad79f0009d7070004d7050004
-d7070003d7060003d7070004d70e0004d7060004d7840011d7d8000ad7900009d790000a
-d7dc0001d7970004d7060005d7040003d7050004d7020000d700000dd7010004d7050000
-d7010004d7060003d7060000d7000005d7070003d7050004d7030000d7000008d7010006
-d767000ad720000ad774000ad70b000ad79f0008d7070004d7050004d7070003d7060003
-d7070004d7090009d7060004d7820011d7d9000ad7910009d790000bd7ffd7750004d705
-0005d7040004d7050004d7050005d7010003d7020004d7080004d7060003d7090004d706
-0003d7060005d7050005d7050004d766000ad7210009d776000ad70a000bd7a10006d706
-0004d7060003d7070003d7060003d7070004d7080005d7000003d7060004d7800011d7da
-000ad7920009d791000bd7ffd774000fd7050004d7050004d7050004d7090004d7080004
-d7060003d7090004d7050003d7080004d7050003d7070004d765000bd7020000d71c0009
-d777000bd70a000bd7930001d70a0006d7060004d7060004d7050003d7070003d7070004
-d7070004d7020003d7060004d77e0011d7dc0009d7930009d792000ad7e00001d791000d
-d7070004d7050004d7050003d70a0004d7080004d7060003d7090004d7040004d7080005
-d7040003d7070004d764000bd7030000d71b000ad778000ad70b000bd7920001d70b0006
-d7050004d7070004d7030003d7080003d7070004d7050004d7040003d7060004d77c0011
-d7dd000ad7930009d792000bd7e10001d78f000bd70a0002d7050005d7050003d70a0004
-d7080004d7060003d7090004d7040004d7090004d7040003d7070004d763000bd7040000
-d71b0009d77a000ad70b000ad7920001d70c0005d7050004d708000ad7090003d7070004
-d7040003d7060003d7060004d77b0011d7dd000ad7940009d793000bd7ffd7720004d718
-0007d7050003d70a0004d7080004d7060003d7090004d7040004d7090004d7040003d707
-0004d763000ad7050000d71a0009d77b000bd70b000ad7910002d70b0005d7050004d709
-0007d70b0003d7070004d7040003d7060003d7060004d7790011d7df0009d7950009d794
-000bd7ffd7710004d7160009d7050003d70a0004d7080004d7060003d7090004d7040004
-d7090004d7040003d7070004d762000ad7060000d719000ad77c000bd70b000ad7900002
-d70c0004d7050004d7070003d7010002d70c0003d7070004d7030003d7070003d7060004
-d7770011d7e0000ad7950009d795000ad7e50001d7890004d7130005d7010004d7050003
-d70a0004d7080004d7060003d7090004d7040004d7090004d7040003d7070004d761000a
-d721000ad77e000ad70c000ad78f0002d70c0003d7060004d7060002d7130003d7070004
-d7030003d7070003d7060004d7750011d7e1000ad7960009d795000bd7e60001d7870004
-d7120004d7030004d7050003d70a0004d7080004d7060003d7090004d7040004d7090004
-d7040003d7070004d760000ad7220009d77f000bd70c000ad78e0003d70a0004d7060004
-d7060002d7130003d7070004d7030004d7050004d7060004d7740010d7e2000ad7970009
-d796000bd7ffd76f0004d7110003d7050004d7050003d70a0004d7080004d7060003d709
-0004d7040004d7090004d7040003d7070004d75f000ad722000ad780000bd70b000bd78d
-0005d7080003d7070004d7050010d7060004d7060004d7030006d701000ad7020004d772
-0011d7e30009d7980009d797000bd7ffd76e0004d7100004d7050004d7050003d70a0004
-d7080004d7060003d7090004d7040004d7090004d7040003d7070004d75e000bd721000a
-d782000ad70c000bd78c0005d7060004d7070006d7040011d7040005d7060005d702000a
-d7000007d7020005d76f0011d7e4000ad7980009d798000ad7e90001d7820004d7100003
-d7060004d7050003d70a0004d7080004d7060003d7090004d7040004d7090004d7040003
-d7070004d75d000bd70a0000d7160009d784000ad70c000bd78b0010d706000ad7030012
-d700000ad700000ad7010008d7010006d700000ad76b0011d7e5000ad7990009d798000b
-d7ea0001d7800004d70f0004d7060004d7050003d70a0004d7080004d7060003d7090004
-d7040005d7080004d7040003d7070004d75c000bd70b0000d715000ad784000bd70c000b
-d78a0001d7020009d708000ad704001dd700000ad7020006d7020004d702000ad7690011
-d7e70009d79a0009d799000bd7ffd76c0004d70f0004d7060004d7050003d70a0004d708
-0004d7060004d7080004d7050005d7070003d7050003d7070004d75b000bd70c0000d714
-000ad786000ad70d000bd7b00002d70c0003d79f0011d7e7000ad79a0009d79a000ad7ff
-d76c0004d70f0005d7040005d7010001d7010004d7090004d7020002d7020004d7060004
-d7020001d7030004d7050005d7060004d7050003d7070004d75a000bd70d0000d7140009
-d788000ad70d000bd7ae0002d70e0002d79d0011d7e8000ad79b0009d79b000ad7ffd76b
-0004d7100013d7010004d7090009d7030004d7060009d7030004d7060005d7050003d706
-0004d7060004d759000bd70e0000d713000ad788000bd70d000ad7ae0002d70e0001d79c
-0011d7ea0009d79c0009d79b000bd7ed0001d7780008d70e0011d7020006d7090008d702
-0006d7050008d7030006d7060006d7010004d7050006d7050006d758000ad723000ad78a
-000bd70d000ad7ac0003d70d0002d79a0011d7eb0009d79d0009d79c000bd7ee0001d773
-000dd70d0008d7010004d701000ad7070006d702000ad7040006d702000ad706000ad705
-000ad700000ad755000ad723000bd78b000ad70e000ad7ab0004d70b0002d7990011d7ec
-000ad79d0009d79d000ad7ffd7810005d7030003d7170003d7150003d7170005d774000a
-d724000ad78c000bd70e000ad7aa0012d7990011d7ec000ad79e0009d79d000bd7ffd7ff
-d756000ad724000ad78e000bd70e000ad7aa0010d7980011d7ee0009d79f0009d79e000b
-d7f20001d7ffd75f000ad7130000d70f000bd78f000ad70e000bd7ab000dd7970011d7ef
-000ad79f0009d79f000bd7f30001d7ffd75c000bd7130000d70f000ad791000ad70e000b
-d7ac0009d7970011d7f0000ad7a00009d7a0000ad7ffd7ffd751000bd7140000d70e000a
-d792000bd70e000bd7ffd74c0010d7f20009d7a10009d7a0000bd7ffd7ffd74f000bd715
-0000d70d000bd793000bd70e000bd7ffd7490011d7f2000ad7a10009d7a1000bd7f70001
-d7ffd753000bd7160000d70c000bd795000ad70f000bd7ffd7460011d7f3000ad7a20009
-d7a2000bd7f80001d7ffd750000bd725000ad796000bd70f000bd7ffd7430011d7f4000a
-d7a30009d7a3000ad7ffd7ffd74a000bd725000bd797000bd70f000bd7ffd7400011d7f6
-0009d7a40009d7a3000bd7ffd7ffd748000bd725000bd799000bd70f000bd7ffd73e0011
-d7f6000ad7a40009d7a4000bd7fc0000d7ffd748000bd725000bd79b000ad710000bd7ff
-d73b0011d7f7000ad7a50009d7a5000ad7fd0001d7ffd745000bd71b0000d709000ad79c
-000bd710000bd7ffd7380011d7f90009d7a60009d7a6000ad7ffd7ffd743000bd71c0000
-d708000bd79d000bd710000bd7ffd7350011d7fa000ad7a60009d7a6000bd7ffd7ffd741
-000bd71d0000d707000bd79f000bd710000bd7ffd7320011d7fb000ad7a70009d7a7000b
-d7ffd7000001d7ffd73c000bd71f0000d705000bd7a1000ad711000bd7ffd7300011d7fb
-000ad7a80009d7a8000ad7ffd7020001d7ffd739000bd7200000d705000ad7a3000ad711
-000bd7ffd72d0011d7fd0009d7a90009d7a8000bd7ffd7ffd73c000bd727000ad7a5000a
-d711000bd7ffd72a0011d7fe000ad7a90009d7a9000bd7ffd7ffd73a000bd727000ad7a6
-000bd711000bd7ffd7270011d7ff000ad7aa0009d7aa000bd7ffd7050000d7ffd731000b
-d727000bd7a7000bd710000cd7ffd7250011d7ffd7000009d7ab0009d7ab000ad7ffd706
-0001d7ffd72e000cd726000bd7a9000ad711000cd7ffd7220011d7ffd701000ad7ab0009
-d7ab000bd7ffd7070000d7ffd72c000cd7240000d701000ad7ab000ad711000cd7ffd71f
-0011d7ffd702000ad7ac0009d7ac000bd7ffd7ffd733000cd7250000d700000ad7ad000a
-d711000cd7ffd71c0011d7ffd7040009d7ad0009d7ad000bd7ffd7ffd731000cd726000b
-d7ae000bd711000cd7ffd7190011d7ffd7050009d7ae0009d7ae000ad7ffd70a0001d7ff
-d723000cd727000bd7af000ad712000cd7ffd7170011d7ffd705000ad7ae0009d7ae000b
-d7ffd70b0001d7ffd720000cd728000ad7b1000ad712000cd7ffd7140011d7ffd706000a
-d7af0009d7af000bd7ffd7ffd72c000cd728000ad7b3000ad712000cd7ffd7110011d7ff
-d7080009d7b00009d7b0000ad7ffd7ffd72b000cd728000ad7b5000ad712000dd7ffd70d
-0011d7ffd709000ad7b00009d7b1000ad7ffd70f0001d7ffd716000dd728000ad7b7000a
-d712000dd7ffd70a0011d7ffd70a000ad7b10009d7b1000bd7ffd7100001d7ffd713000d
-d728000ad7b8000bd712000dd7ffd7080011d7ffd70b0009d7b20009d7b2000bd7ffd7ff
-d724000dd728000bd7b9000bd712000dd7ffd7050011d7ffd70c0009d7b30009d7b3000a
-d7ffd7ffd723000dd728000bd7bb000bd712000dd7ffd7020011d7ffd70d000ad7b30009
-d7b3000bd7ffd7140000d7ffd70b000dd728000bd7bd000ad713000dd7ff0011d7ffd70e
-000ad7b40009d7b4000bd7ffd7140001d7ffd708000dd729000ad7bf000ad713000dd7fd
-0011d7ffd70f0009d7b50009d7b5000bd7ffd7ffd71d000cd72a000ad7c1000ad714000d
-d7f90011d7ffd710000ad7b50009d7b6000ad7ffd7ffd71b000dd72a000ad7c3000ad714
-000dd7f60011d7ffd711000ad7b60009d7b6000bd7ffd7180000d7ff000dd72a000ad7c5
-000ad714000dd7f30011d7ffd7130009d7b70009d7b7000bd7ffd7180001d7fc000dd72a
-000ad7c6000bd714000dd7f00011d7ffd7140009d7b80009d7b8000bd7ffd7190000d7fa
-000dd72a000bd7c7000bd714000dd7ee0011d7ffd714000ad7b80009d7b9000ad7ffd7ff
-d714000cd72b000bd7c9000bd714000dd7eb0011d7ffd7160009d7b90009d7b9000bd7ff
-d7ffd712000cd72b000bd7cb000bd714000dd7e80011d7ffd7170009d7ba0009d7ba000b
-d7ffd71c0001d7f1000cd72b000bd7cd000bd715000dd7e40011d7ffd718000ad7ba0009
-d7bb000ad7ffd71e0001d7ed000dd72b000bd7cf000bd715000dd7e10012d7ffd718000a
-d7bb0009d7bc000ad7ffd7ffd70c000dd72b000bd7d1000ad716000dd7df0011d7ffd71a
-0009d7bc0009d7bc000bd7ffd7ffd70a000cd72d000ad7d3000ad716000dd7dc0011d7ff
-d71b000ad7bc0009d7bd000bd7ffd7ffd708000cd72d000ad7d5000ad716000dd7d90011
-d7ffd71c000ad7bd0009d7be000ad7ffd7210001d7e3000cd72d000ad7d7000ad716000e
-d7d50011d7ffd71e0009d7be0009d7be000bd7ffd7220001d7df000dd72d000ad7d9000a
-d716000ed7d30011d7ffd71e0009d7bf0009d7bf000bd7ffd7ffd702000dd72d000ad7da
-000bd717000dd7d00011d7ffd71f000ad7bf0009d7c0000bd7ffd7ffd700000cd72e000b
-d7db000bd717000dd7cd0011d7ffd720000ad7c00009d7c1000ad7ffd7ff000cd72e000b
-d7dd000bd717000dd7ca0011d7ffd7220009d7c10009d7c1000bd7ffd7250001d7d5000c
-d72e000bd7df000bd717000ed7c60011d7ffd723000ad7c10009d7c2000bd7ffd7260001
-d7d1000dd72e000bd7e1000bd717000ed7c40011d7ffd723000ad7c20009d7c3000bd7ff
-d7f8000dd72e000bd7e3000bd717000ed7c10011d7ffd7250009d7c30009d7c4000ad7ff
-d7f7000dd72e000bd7e5000bd718000dd7be0011d7ffd7260009d7c40009d7c4000bd7ff
-d7290000d7ca000cd72f000bd7e7000bd718000dd7bb0011d7ffd727000ad7c40009d7c5
-000bd7ffd7290001d7c7000cd72f000bd7e9000bd718000ed7b70012d7ffd7280009d7c5
-0009d7c6000ad7ffd72b0000d7c4000dd72f000bd7eb000bd718000ed7b50011d7ffd729
-0009d7c60009d7c7000ad7ffd7ef000dd72f000bd7ed000bd718000ed7b20011d7ffd72a
-000ad7c60009d7c7000bd7ffd7ed000dd72f000bd7ef000bd719000dd7af0011d7ffd72b
-000ad7c70009d7c8000bd7ffd72d0000d7bc000dd72f000bd7f1000bd719000dd7ac0011
-d7ffd72d0009d7c80009d7c9000ad7ffd72e0001d7b9000dd72f000bd7f3000bd719000e
-d7a80012d7ffd72d0009d7c90009d7c9000bd7ffd72f0000d7b6000dd730000bd7f5000b
-d719000ed7a60011d7ffd72e000ad7c90009d7ca000bd7ffd7e5000dd730000bd7f7000b
-d719000ed7a30011d78b0002d7a10009d7ca0009d7cb000bd7ffd7e3000dd730000bd7f8
-000cd71a000dd7a00011d78d0002d70c0004d78e0009d7cb0009d7cc000ad7ffd7320001
-d7ad000dd730000bd7fa000cd71a000ed79c0011d775000dd70a0002d709000cd789000a
-d7cb0009d7cc000bd7ffd7330001d7a9000ed730000bd7fc000cd71a000ed79a0011d776
-000dd70a0002d707000fd787000ad7cc0009d7cd000bd7ffd7340000d7a7000ed730000b
-d7fe000cd71a000ed7970011d77c0006d70d0002d7060004d7080003d7860009d7cd0009
-d7ce000bd7ffd7db000ed730000bd7ffd700000cd71a000fd7930011d77e0005d70d0002
-d7060004d70a0003d7840009d7ce0009d7cf000ad7ffd7d9000ed731000bd7ffd702000c
-d71b000ed7900011d7810004d70d0002d7050004d70c0003d782000ad7ce0009d7cf000b
-d7ffd7370001d79d000ed731000bd7ffd704000cd71b000ed78d0012d7820004d70d0001
-d7060004d70c0004d7810009d7cf0009d7d0000bd7ffd7380001d79a000ed731000bd7ff
-d706000cd71b000fd78a0011d7840004d70c0002d7050004d70e0004d77f0009d7d00009
-d7d1000ad7ffd7d3000fd731000bd7ffd708000dd71a000fd7870011d7860004d70c0002
-d7050004d70e0004d77e000ad7d00009d7d2000ad7ffd7d1000fd730000cd7ffd70a000d
-d71b000fd7830011d7880004d70c0001d7050004d7100004d77d0009d7d10009d7d2000b
-d7ffd7ce000fd731000cd7ffd70c000dd71b000fd7800011d78a0004d70b0002d7050004
-d7100004d77c0009d7d20009d7d3000bd7ffd73b0001d78e000fd731000cd7ffd70e000d
-d71b000fd77d0012d78b0004d70b0002d7050004d7100004d77b000ad7d20009d7d4000a
-d7b30002d7860001d78b000fd731000cd7ffd710000dd71c000fd77a0011d78d0004d70b
-0001d7050004d7110005d779000ad7d30009d7d4000bd763000ed73d0005d7ffd711000f
-d732000cd7ffd712000dd71c000fd7770011d78f0004d70a0002d7050004d7110005d779
-0009d7d40009d7d5000bd7620013d7380005d7ffd710000fd732000cd7ffd714000dd71d
-000ed7740011d7910004d70a0001d7060004d7110005d7780009d7d50009d7d6000bd764
-0011d7370005d78b0000d782000ed733000cd7ffd717000dd71c000fd7700012d7920004
-d70a0001d7050005d7110006d776000ad7d50009d7d7000ad7650005d7050005d7360005
-d78c0001d77e000fd732000cd7ffd71a000dd71d000ed76e0011d7940004d7090002d705
-0005d7120005d7760009d7d60009d7d7000bd7650004d7060005d7370002d78f0001d77b
-000ed733000cd7ffd71c000dd71d000ed76b0011d7960004d7090001d7060005d7120005
-d7750009d7d70009d7d8000bd7640004d7070005d7ffd746000ed733000cd7ffd71e000d
-d71d000fd7670011d7980004d7080002d7070004d7120004d775000ad7d70009d7d9000b
-d7630004d7080005d7ffd743000fd733000cd7ffd720000dd71e000ed7640011d79a0004
-d7080002d7070004d7110005d774000ad7d80009d7da000ad7630004d7080005d7ce0001
-d771000ed734000cd7ffd722000dd71e000fd7600012d79b0004d7080001d7080004d711
-0005d7740009d7d90009d7da000bd7620004d7080005d7d00001d76d000fd734000cd7ff
-d724000dd71f000ed75e0011d79d0004d7070002d7080004d7110004d7740009d7da0009
-d7db000bd7610004d7080005d7ffd73f000ed735000cd7ffd727000dd71e000fd75a0011
-d79f0004d7070001d7090005d7100004d773000ad7da0009d7dc000ad7610004d7080005
-d70b0007d70c0007d70d0002d70a0007d70c0002d7020005d7d7000fd734000cd7ffd72a
-000dd71f000fd7560011d7a10004d7070001d7090005d7100004d7730009d7db0009d7dd
-000ad7600004d7070006d70a000ad709000fd7030005d709000ad7070005d7010007d7d4
-000fd735000cd7ffd72c000dd71f000fd7530011d7a30004d7060002d70a0004d7100003
-d7730009d7dc0009d7dd000bd75f0004d7070005d70a0003d7010006d7070003d7030009
-d7000007d7080004d7010005d7040007d7000009d76e0001d761000fd735000cd7ffd72e
-000dd71f0010d74f0012d7a40004d7060001d70c0004d70e0004d772000ad7dc0009d7de
-000bd75e0004d7060005d70a0003d7040004d7060003d7050006d7020007d7070003d705
-0004d7030013d76f0001d75d0010d735000cd7ffd730000dd720000fd74d0011d7a60004
-d7060001d70d0003d70e0003d7730009d7dd0009d7df000ad75e0004d7040006d70a0003
-d7060003d7050003d7060004d7070004d7060004d7050004d7060005d7050004d7ce000f
-d736000cd7ffd732000ed71f0010d7490011d7a80004d7050002d70d0004d70c0003d773
-0009d7de0009d7df000bd75d000fd70b0002d7070004d7040003d7070003d7070004d705
-0004d7070004d7050004d7060004d7cc0010d735000dd7ffd734000ed720000fd7460011
-d7a90005d7050001d70f0004d70a0004d7720009d7df0009d7e0000bd75c000dd70c0003
-d7070004d7040003d7070004d7060004d7050004d7070004d7050004d7060004d7cb000f
-d736000dd7ffd737000dd7200010d7420012d7aa0005d7050001d7100004d7080004d772
-000ad7df0009d7e1000bd75b000dd70c0011d7020004d7070004d7060004d7050003d709
-0004d7040004d7070003d7760001d7500010d736000cd7ffd73a000dd721000fd7400011
-d7ab0008d7020001d7120007d7000007d7730009d7e00009d7e2000ad75b0004d7020006
-d70b0011d7020004d7070004d7060004d7040004d7090004d7040004d7070003d7780001
-d74d000fd737000cd7ffd73c000dd7210010d73c0011d7aa000dd7000001d714000cd774
-0009d7e10009d7e2000bd75a0004d7030005d70b0003d7110004d7060004d7060004d704
-0004d7090004d7040004d7070003d7c6000fd738000cd7ffd73e000ed7210010d7380011
-d7ffd753000ad7e10009d7e3000bd7590004d7030006d70a0003d7110004d7060003d707
-0004d7040004d7090005d7030004d7070003d7c40010d737000dd7ffd740000ed7210010
-d7350011d7ffd7550009d7e20009d7e4000bd7580004d7040006d7090003d7120003d705
-0003d7080004d7040004d7090005d7030004d7070003d77e0000d743000fd738000dd7ff
-d743000dd7220010d7310012d7ffd7550009d7e30009d7e5000ad7580004d7050005d709
-0003d7120004d7040002d7090004d7040004d7090005d7030004d7070003d77f0001d73f
-0010d738000cd7ffd746000dd7220010d72f0011d7ffd7560009d7e40009d7e5000bd757
-0004d7060005d7080003d70b0000d706000ad70a0004d7040005d7080004d7040004d707
-0003d7810000d73d000fd739000cd7ffd748000dd7230010d72b0011d7ffd757000ad7e4
-0009d7e6000bd7560004d7060005d7080004d70a0001d7050009d70b0004d7040005d708
-0004d7040004d7070003d7be0010d739000cd7ffd74a000ed7220010d7280011d7ffd759
-0009d7e50009d7e7000ad7560004d7070005d7070005d7090001d7040002d7130004d704
-0005d7080004d7040004d7070003d7bd000fd739000dd7ffd74d000dd7230010d7240011
-d7ffd75a0009d7e60009d7e8000ad7550004d7080005d7060005d7080002d7040002d713
-0004d7040005d7080003d7050004d7070003d7860000d7330010d739000cd7ffd750000d
-d7230011d7200012d7ffd75a000ad7e60009d7e8000bd7540004d7090005d7060007d703
-0003d7040004d7120004d7050005d7070003d7050004d7070003d7870001d72f0010d73a
-000cd7ffd752000dd7240010d71e0011d7ffd75c0009d7e70009d7e9000bd7530004d70a
-0005d705000ed7040010d7070004d7060005d7050003d7060004d7070003d7890001d72c
-000fd73b000cd7ffd754000dd7240011d71a0011d7ffd75d0009d7e80009d7ea000ad752
-0006d7090007d704000cd7050012d7050005d7070004d7020004d7060005d7060005d7b5
-0010d73b000cd7ffd757000dd7240010d7170011d7ffd75e0009d7e90009d7ea000bd74d
-000dd7070009d7030009d7070012d701000ad7070009d705000ad7010009d7b2000fd73b
-000cd7ffd75a000dd7240011d7130012d7ffd75e000ad7e90009d7eb000bd74c000dd708
-0008d7040007d70a0011d700000ad7080005d708000ad7010009d78c0001d7210010d73b
-000cd7ffd75c000dd7250011d7100011d7ffd7600009d7ea0009d7ec000bd7810002d70c
-0003d7c90001d71d0010d73c000cd7ffd75e000dd7250011d70d0011d7ffd7610009d7eb
-0009d7ed000ad7800002d70e0002d7e80010d73c000cd7ffd761000dd7250011d7090011
-d7ffd762000ad7eb0009d7ed000bd77f0002d70e0002d7e60010d73c000cd7ffd764000d
-d7260010d7060011d7ffd7640009d7ec0009d7ee000bd77d0004d70c0002d7e6000fd73d
-000cd7ffd766000dd7260011d7020012d7ffd7640009d7ed0009d7ef000bd77c0005d70a
-0002d7d10001d7110010d73d000cd7ffd768000ed7260023d7ffd765000ad7ed0009d7f0
-000ad77c0012d7d40001d70d0010d73d000dd7ffd76b000dd727001fd7ffd7670009d7ee
-0009d7f0000bd77c0011d7e30010d73d000cd7ffd76e000dd727001cd7ffd7680009d7ef
-0009d7f1000bd77d000cd7e40010d73e000cd7ffd770000ed7270019d7ffd7680009d7f0
-0009d7f2000ad77f0008d7e5000fd73e000dd7ffd773000dd7280015d7ffd769000ad7f0
-0009d7f3000ad7ffd76b0010d73e000dd7ffd775000ed7270012d7ffd76b0009d7f10009
-d7f3000bd7ffd7680010d73e000dd7ffd778000ed7280010d7ffd76a0009d7f20009d7f4
-000bd7ffd7660010d73e000dd7ffd77b000dd7290010d7ffd767000ad7f20009d7f5000a
-d7ffd7640010d73f000dd7ffd77d000ed7260013d7ffd7650009d7f30009d7f5000bd7ff
-d7610010d73f000dd7ffd780000ed7250015d7ffd7620009d7f40009d7f6000bd7ffd75e
-0011d73f000dd7ffd783000dd7240017d7ffd75f0009d7f50009d7f7000bd7ffd75b0011
-d740000dd7ffd785000ed7220019d7ffd75c000ad7f50009d7f8000ad7ffd7590012d73f
-000dd7ffd788000ed721001bd7ffd75a0009d7f60009d7f8000bd7ffd7560012d740000d
-d7ffd78b000dd7200008d7010012d7ffd7570009d747000ed7a00009d7f9000bd7ffd753
-0012d741000dd7ffd78d000ed71e0008d7020012d7ffd755000ad7470012d79c0009d7fa
-000ad7ffd7520012d740000ed7ffd78f000ed71d0008d7040012d7ffd7530009d74b0011
-d79a0009d7fb000ad7ffd74f0012d741000dd7ffd793000ed71b0008d7060012d7ffd750
-0009d74c0005d7050006d7210001d7750009d7fb000bd7ffd74c0012d741000ed7ffd795
-000ed71a0008d7080012d7ffd74d0009d74e0004d7060005d7210001d7750009d7fc000b
-d7ffd7490012d7020000d73e000ed7ffd797000fd7180008d70a0012d7ffd74b0009d74e
-0004d7070005d7200001d7750009d7fd000ad7ffd7470012d7040000d73c000ed7ffd79b
-000fd7160008d70c0012d7ffd7480009d74f0004d7080005d71e0002d7750009d7fd000b
-d7ffd7440012d7060000d73a000fd7ffd79d000fd7150008d70d0013d7ffd7450009d750
-0004d7080005d71d0003d7750009d7fe000bd7ffd7410013d7070000d739000fd7ffd79f
-0010d7130008d70f0013d7ffd742000ad7500004d7080005d71d0003d7750009d7ff000b
-d7ffd73e0013d7090000d737000fd7ffd7a3000fd7120008d7110013d7ffd7400009d751
-0004d7080005d71c0004d7750009d7ffd700000ad7ffd73c0013d743000fd7ffd7a50010
-d7100008d7130013d7ffd73d0009d7520004d7080005d70b0007d706000bd7050008d761
-0009d7ffd700000bd7ffd7390013d7430010d7ffd7a8000fd70f0008d7150013d7ffd73a
-0009d7530004d7080005d708000cd703000cd704000ad7600009d7ffd701000bd7ffd736
-0013d744000fd7ffd7ab0010d70d0008d7160014d7ffd7380009d7530004d7070005d709
-0003d7030004d7060004d7090002d7020005d75f0009d7ffd702000bd7ffd7330014d743
-0010d7ffd7ae000fd70c0008d7180014d7ffd7350009d7540004d7060005d7090003d705
-0004d7050004d7070003d7040005d75e0009d7ffd703000ad7ffd7310014d7120000d730
-000fd7ffd7b2000fd70a0008d71a0014d7ffd7320009d7550004d7030008d7090003d705
-0004d7050004d7060003d7060004d75e0009d7ffd703000bd7ffd72e0014d7140000d72e
-000fd7ffd7b50010d7080008d71c0014d7ffd72f000ad755000ed70c0003d7060003d705
-0004d7060003d7070004d75d0009d7ffd704000bd7ffd72b0014d7160000d72c0010d7ff
-d7b8000fd7070009d71d0014d7ffd72d0009d756000dd70d0003d7060003d7050004d706
-0002d7080004d75d0009d7ffd705000ad7ffd7290014d7180000d72b000fd7ffd7bb0010
-d7050009d71f0014d7ffd72a0009d757000dd70d0003d7050004d7050004d7060010d75d
-0009d7ffd706000ad7ffd7260014d7450010d7ffd7be000fd7040009d7210014d7ffd727
-000ad7570004d7020006d7130007d7050004d7050011d75d0009d7ffd706000bd7ffd723
-0014d746000fd7ffd7c10010d7020009d7230014d7ffd7250009d7580004d7030005d711
-0009d7050004d7050003d76b0009d7ffd707000bd7ffd7200014d7460010d7ffd7c4000f
-d7010009d7250014d7ffd7220009d7590004d7030006d70f0005d7000003d7050004d705
-0004d76a0009d7ffd708000ad7ffd71e0014d747000fd7ffd7c7001ad7270014d7ffd71f
-0009d75a0004d7040006d70c0004d7030003d7050004d7050004d76a0009d7ffd708000b
-d7ffd71b0014d7470010d7ffd7ca0018d7290014d7ffd71d0009d75a0004d7050005d70b
-0003d7050003d7050004d7050004d76a0009d7ffd709000bd7ffd7180014d7240000d721
-0010d7ffd7ce0016d72b0014d7ffd71a0009d75b0004d7060005d7090003d7060003d705
-0004d7050004d70b0000d75d0009d7ffd70a000bd7ffd7150014d7260000d720000fd7ff
-d7d10015d72d0014d7ffd7170009d75c0004d7060005d7080004d7060003d7050004d705
-0005d7090001d75d0009d7ffd70b000ad7ffd7130014d7280000d71e0010d7ffd7d40013
-d7300013d7ffd714000ad75c0004d7070006d7060003d7070003d7050004d7060005d708
-0001d75d0009d7ffd70b000bd7ffd7100013d72b0000d71d000fd7ffd7d70012d7320013
-d7ffd7120009d75d0004d7080006d7050004d7050004d7050004d7060006d7060002d75d
-0009d7ffd70c000bd7ffd70d0013d74a0010d7ffd7da0010d7340013d7ffd70f0009d75e
-0004d7090005d7050004d7040005d7020000d7010004d7030001d7000007d7040002d75e
-0009d7ffd70d000bd7ffd70a0013d74a0010d7ffd7dd0010d7350013d7ffd70c0009d75f
-0004d70a0005d7040006d701000ad7010005d7000002d702000ed75e0009d7ffd70e000a
-d7ffd7080013d74b0010d7ffd7e00010d7350014d7ffd7090009d75e0006d7090007d702
-000ad7000007d7010009d703000cd75f0009d7ffd70e000bd7ffd7040014d74b0010d7ff
-d7e4000fd7360014d7ffd7060009d75c000cd7070009d7000008d7010006d7030007d705
-0009d7610009d7ffd70f000bd7ffd7010014d74c000fd7ffd7e70010d7360014d7ffd703
-0009d75d000cd7080008d7020005d7020004d7060005d7080006d7620009d7ffd710000a
-d7ff0014d7370000d7130010d7ffd7e90011d7360015d7ff000ad7ffd70d0009d7ffd711
-000ad7fb0015d7390000d7110010d7ffd7eb0012d7380014d7fd0009d7ffd70e0009d7ff
-d711000bd7f80014d73c0000d7100010d7ffd7ec0014d7380014d7fa0009d7ffd70f0009
-d7ffd712000bd7f50014d73e0000d70e0010d7ffd7ee0015d7390014d7f70009d7ffd710
-0009d7ffd713000ad7f30014d74f000fd7ffd7f70010d7390015d7f40009d7ffd7100009
-d7ffd713000bd7ef0015d74f0010d7ffd7fa0010d73a0014d7f10009d7ffd7110009d7ff
-d714000bd7ec0014d7500010d7ffd7fd0010d73b0014d7ee0009d7ffd7120009d7ffd715
-000bd7e90014d7510010d7ffd7ffd7000010d73b0014d7ec0009d7ffd7120009d7ffd716
-000ad7e70014d7510010d7ffd7ffd7040010d73c0014d7e80009d7ffd7130009d7ffd716
-000bd7e30014d74c0000d7040010d7ffd7ffd7070011d73c0014d7e50009d7ffd7140009
-d7ffd717000bd7e00014d74e0000d7020011d7ffd7ffd70a0011d73c0015d7e10009d7ff
-d7150009d7ffd718000bd7dc0015d7500000d7000011d7ffd7ffd70d0012d73c0015d7df
-0009d7ffd7150009d7ffd719000ad7da0015d7520012d7ffd7ffd7100012d73d0014d7dc
-0009d7ffd7160009d7ffd719000bd7d70014d7530012d7ffd7ffd7140012d73d0015d7d8
-0009d7d80003d73a0009d7ffd71a000bd7d30015d7530012d7ffd7ffd7170012d73e0015
-d7d60009d72c0009d7130009d7820005d7390009d7450002d7140003d7920003d722000a
-d7d10015d7530013d7ffd7ffd71a0012d73e0016d7d20009d72d0009d7130009d7820005
-d7390013d7140009d7190005d7130004d7910004d723000ad7cd0016d7530013d7ffd7ff
-d71e0012d73f0015d7cf0009d7310007d7110007d7850005d7390013d7140009d7170007
-d7130005d7900005d722000bd7ca0015d7540013d7ffd7ffd7220012d73f0016d7cb0009
-d7320007d7110006d74e0001d7360004d7390009d7020007d7120006d71b0007d7130005
-d7900005d723000bd7c60016d7540013d7ffd7ffd7260012d73f0016d7c90009d7330007
-d70f0007d74e0001d7380000d73b0009d7040005d7120006d71e0004d7090000d7090003
-d7920003d725000ad7c40016d7540013d7ffd7ffd72a0012d73f0016d7c60009d7340007
-d70f0007d74e0001d7750009d7040006d7100006d71f0004d7090000d70a0001d7940001
-d726000bd7c10016d7540013d7ffd7ffd72e0012d7400016d7c20009d7350007d70e0008
-d74d0002d7750009d7040006d7100006d71f0004d7080001d7cb000bd7bd0016d7550013
-d7ffd7ffd7320012d7400016d7c00009d7350008d70d0008d74c0003d7750009d7040007
-d70e0007d71f0004d7080001d7cc000bd7ba0016d7550013d7ffd7ffd7360012d7400017
-d7bc0009d7360008d70c0009d74b0004d7750009d7040007d70e0007d71f0004d7070002
-d7cd000ad7b70017d7560012d7ffd7ffd73a0012d7410017d7b80009d7370002d7000005
-d70b0002d7000005d70c0003d70e0002d7040002d7100002d70b0005d70d0003d70e0002
-d7040002d70c0002d70d0003d7270009d7040008d70c0008d71f0004d7060003d7cd000b
-d7b30017d7570012d7ffd7ffd73e0012d7410017d7b60009d7370002d7000005d70a0003
-d7000005d70a0008d7090004d7030005d70b0008d706000cd7060008d7090004d7030005
-d7080004d7090009d7250009d7040002d7000004d70c0002d7000004d71f0004d7050004
-d70b0001d7090001d7040001d70d0001d7030001d70a0003d7130002d7100001d70e0004
-d7010001d7080004d7010001d7080001d7090001d7050001d7110002d700000bd7b00017
-d7570012d7ffd7ffd7420012d7410018d7b20009d7380002d7010005d7090002d7010005
-d709000ad7060006d7010007d70a000ad705000cd705000ad7060006d7010007d7060006
-d708000bd7240009d7040002d7000005d70a0003d7000004d7040006d7040007d7060004
-d703000bd7040003d7070003d7020006d7080003d7020004d7060009d70b0009d7090008
-d709000ad706000ad7060003d7070003d7030005d70c0013d7ac0018d7570012d7ffd7ff
-d7460012d7410019d7ae0009d7390002d7010005d7090002d7010005d7070004d7020005
-d7040007d7000009d7070004d7020005d7070004d7080004d7020005d7040007d7000009
-d7040007d7070003d7030005d7230009d7040002d7010004d70a0002d7010004d7040006
-d7040007d7060004d703000bd7020005d7050005d7010008d7050005d7010006d703000c
-d709000bd707000ad707000bd705000bd7040005d7050005d7010008d7080016d7a90019
-d7570012d7ffd7ffd74a0012d7420019d7aa0009d73a0002d7020004d7080002d7020005
-d7070003d7050004d7030000d7000009d7010005d7060003d7050004d7060004d7080003
-d7050004d7030000d7010008d7010005d7030000d7010004d7060003d7050004d7230009
-d7040002d7010005d7080003d7010004d7070003d7070004d7060004d7060003d7060006
-d7040006d700000ad7030006d7000007d7020003d7040004d7080003d7030004d7060003
-d7030004d7050003d7040003d7040003d7040003d7030006d7040006d700000ad7070003
-d704000ed7a50019d7580012d7ffd7ffd74e0012d742001ad7a70009d73a0002d7020005
-d7070002d7020005d7060003d7060004d7060005d7050004d7050003d7060004d7060004
-d7070003d7060004d7060005d7050004d7060004d7050003d7060004d7230009d7040002
-d7020004d7080002d7020004d7070003d7070004d7060004d7060003d7060000d7000004
-d7040000d7000011d7020000d700000cd7030003d7050004d7060003d7050004d7050001
-d7060004d7040002d7060002d7040002d7060002d7030000d7000004d7040000d7000008
-d7010005d7060003d706000ed7a1001ad7580012d7ffd7ffd7520012d742001ad7a40009
-d73b0002d7030004d7060002d7030005d7050004d7070004d7050004d7060004d7050003
-d7070004d7050004d7060004d7070004d7050004d7060004d7060004d7050003d7060004
-d7230009d7040002d7020005d7060003d7020004d7070003d7070004d7060004d7060003
-d7090003d7070006d7030005d7050005d7010003d7020003d7060005d7040003d7060004
-d7040002d7070004d7020003d7060002d7030003d7060002d7060003d7070005d7040005
-d7050003d706000ed79f001ad7580012d7ffd7ffd7560012d742001bd7a00009d73c0002
-d7030005d7050002d7030005d7050003d7080005d7040004d7070003d7040004d7070005
-d7040004d7060003d7080005d7040004d7070003d7060004d7050003d7070003d7230009
-d7040002d7030004d7060002d7030004d7070003d7070004d7060004d7060003d7090003
-d7070004d7060005d7040004d7080004d7070004d7040003d7060004d7040002d7070004
-d7020003d7070001d7030003d7070001d7060003d7070003d7070004d7040004d706000f
-d79b001bd7580012d7ffd7ffd75a0012d743001bd79d0009d73c0002d7040004d7040002
-d7040005d7050003d7090004d7040004d7070003d7040004d7080004d7040004d7060003
-d7090004d7040004d7070003d7060004d7050003d72f0009d7040002d7030005d7040003
-d7030004d7070003d7070004d7060004d7060003d7090003d7070003d7080004d7040003
-d7090003d7080005d7020004d7070003d7030003d7070004d7020004d7060001d7030004
-d7060001d7060003d7070003d7070004d7040004d707000fd797001bd7590012d7ffd7ff
-d75e0012d744001bd7990009d73d0002d7040004d7040002d7040005d7040004d7090004
-d7040004d7070003d7030005d7080004d7040004d7050004d7090004d7040004d7070003
-d7060004d7040004d72f0009d7040002d7040004d7040002d7040004d7070003d7070004
-d7060004d7060003d7090003d7070003d7080004d7040003d7080004d7090004d7020003
-d7100010d7030006d7030001d7040006d7030001d7060003d7070003d7070004d7040004
-d7070003d700000bd793001bd75a0012d7ffd7ffd7620012d744001bd7960009d73e0002
-d7050004d7020002d7050005d7040004d7090004d7040004d7070003d7030005d7080004
-d7040004d7050004d7090004d7040004d7070003d7060004d7040004d72f0009d7040002
-d7040005d7020003d7040004d7070003d7070004d7060004d7060003d7090003d7070003
-d7080004d7040003d7080004d7090004d7020003d7100011d7020008d7080008d70a0003
-d7070003d7070004d7040004d7070003d701000ad791001bd75a0012d7ffd7ffd7660012
-d745001bd7920009d73f0002d7050004d7020002d7050005d7040004d7090005d7030004
-d7070003d7030005d7080005d7030004d7050004d7090005d7030004d7070003d7060004
-d7040004d72f0009d7040002d7050004d7020002d7050004d7070003d7070004d7060004
-d7060003d7090003d7070003d7090004d7030003d7080004d7090004d7020003d7100003
-d7110009d7070009d7080003d7070003d7070004d7040004d7070003d701000bd78d001b
-d75b0012d7ffd7ffd76a0012d746001bd78f0009d73f0002d7060004d7000002d7060005
-d7040004d7090005d7030004d7070003d7030005d7090004d7030004d7050004d70a0004
-d7030004d7070003d7060004d7040004d72f0009d7040002d7050005d7000003d7050004
-d7070003d7070004d7060004d7060003d7090003d7070003d7090004d7030003d7080004
-d7090005d7010003d70f0004d7120009d7070009d7070003d7070003d7070004d7050003
-d7060004d702000bd789001bd75c0012d7ffd7ffd76e0012d747001bd78b0009d7400002
-d7060004d7000002d7060005d7040004d7090005d7030004d7070003d7030005d7090004
-d7030004d7050004d70a0004d7030004d7070003d7060004d7040004d72f0009d7040002
-d7060004d7000002d7060004d7070003d7070004d7060004d7060003d7090003d7070003
-d7090004d7030003d7080004d7090005d7010003d70f0004d7150006d70a0006d7070003
-d7070003d7070004d7060003d7050003d704000bd785001bd75d0012d7ffd7ffd7720012
-d748001bd7870009d7410002d7070006d7070005d7040005d7080004d7040004d7070003
-d7030005d7090003d7040004d7050005d7090003d7040004d7070003d7060004d7040004
-d70b0000d7220009d7040002d7060008d7060004d7070003d7070004d7060004d7060003
-d7090003d7070003d7090003d7040003d7080004d7090005d7010004d70f0003d7160006
-d70a0006d7060003d7070003d7070004d7060004d7030003d706000ad782001bd75e0012
-d7ffd7ffd7760012d748001cd7840009d7410002d7070006d7070005d7050004d7080004
-d7040004d7070003d7040004d7090003d7040004d7060004d7090003d7040004d7070003
-d7060004d7040004d70a0001d7220009d7040002d7070006d7070004d7070003d7070004
-d7060004d7060003d7090003d7070003d7090003d7040003d7080005d7080004d7020004
-d70b0000d7020003d70b0001d70a0005d70b0005d7050003d7070003d7070004d707000a
-d707000bd77e001cd75e0012d7ffd7ffd77a0012d749001cd7800009d7420002d7080004
-d7080005d7050004d7080004d7040004d7070003d7040004d7090003d7040004d7060004
-d7090003d7040004d7070003d7060004d7050004d7090001d7220009d7040002d7070006
-d7070004d7070003d7070004d7060004d7060003d7090003d7070003d7090003d7040003
-d7080005d7080004d7020004d70a0001d7020004d7090002d7010001d7070004d7020001
-d7070004d7050003d7070003d7070004d7070007d70b000bd77a001cd75f0012d7ffd7ff
-d77e0012d74a001cd77c0009d7430002d7080004d7080005d7050005d7070003d7050004
-d7070003d7050004d7070004d7040004d7060005d7070004d7040004d7070003d7060004
-d7050005d7060002d7230009d7040002d7080004d7080004d7070003d7070004d7060004
-d7060003d7090003d7070003d7090003d7040003d7080005d7080003d7030005d7080002
-d7020005d7080001d7020001d7080003d7020001d7080003d7050003d7070003d7070004
-d7050003d712000bd776001cd7600012d7ffd7ffd7820012d74b001cd7780009d7440002
-d7090002d7090005d7050005d7070003d7050004d7070003d7050004d7070003d7050004
-d7020002d7000005d7070003d7050004d7070003d7060004d7050008d7020003d7230009
-d7040002d7080004d7080004d7070004d7060004d7060004d7060004d7080003d7070003
-d7090002d7050003d7090005d7070003d7030006d7060002d7030006d7060002d7020002
-d7070003d7020002d7070003d7050003d7070003d7070004d7050002d714000ad772001d
-d7610012d7ffd7ffd7860012d74b001dd7750009d7440002d7090002d7090005d7060005
-d7050003d7060004d7070004d7040005d7050003d7060009d7020005d7050003d7060004
-d7070004d7050004d707000cd7240009d7040002d7090002d7090005d7060005d7030006
-d7060004d7060004d7020001d7030003d7070004d7070003d7050004d7080005d7060004
-d7040008d7010004d7040008d7010004d7020003d7060003d7020003d7060003d7050003
-d7070003d7070004d704000cd70b000bd76e001ed7600013d7ffd7ffd78a0013d74b001d
-d7710009d7430006d7080000d7090007d7070006d7000004d7060006d7050005d7060006
-d7010003d7080008d7040006d7010003d7060006d7050005d7040006d707000ad7250009
-d7030003d7090002d7090005d7060013d7030004d7060009d7030004d7060005d7050003
-d7060004d7090005d7050003d707000cd706000dd7030003d7050003d7030003d7050003
-d7060004d7060003d7070004d7040011d707000bd76a001ed7610013d7ffd7ffd78e0013
-d74c001dd76d0009d742000ad7060000d706000dd7060009d705000ad701000ad7050009
-d7090006d7080009d705000ad7010015d7060008d7260009d7020006d7080000d7080008
-d7060009d7000007d7020006d7050008d7030006d7050006d7020003d7060007d70a0006
-d7000004d709000ad708000bd7040006d7010003d7040006d7010003d7060006d7030006
-d7050006d7030012d707000ad767001ed7620013d7ffd7ffd7920013d74d001dd76a0009
-d7720005d7280004d70e0003d70a0005d7340003d7290015d7060000d706000dd7040007
-d7010005d702000ad7040006d702000ad703000cd706000ad709000ad70b0008d70b0008
-d705000bd705000bd705000ad7000009d701000ad7020012d707000ad763001ed7620014
-d7ffd7ffd7960013d74e001dd7660009d7ffd72e0009d72e0005d7020003d7160003d712
-0003d7010004d71f0005d7100003d70f0004d7080001d7010006d7060001d7010006d72c
-0002d704000ad707000bd75f001ed7630014d7ffd7ffd79a0013d74f001dd7620009d7ff
-d72f0009d7690003d7a80002d70e0001d708000bd75b001ed7640014d7ffd7ffd79e0014
-d74f001ed75e0008d7ffd7300009d7690003d7a80002d70e0001d709000ad757001fd765
-0014d7ffd7ffd7a20014d750001ed75a0009d7ffd7300009d7690003d7a70002d70e0002
-d709000bd753001fd7650015d7ffd7ffd7a60014d752001ed7550009d7ffd7310009d769
-0003d7a70003d70d0001d70b000bd74f001ed7670014d7ffd7ffd7ac0013d753001ed751
-0009d7ffd7320009d7690003d7a70006d7070004d70c000bd74a001fd7680014d7ffd7ff
-d7b00013d754001fd74d0009d7ffd7320009d7690003d7a70012d70e000ad747001fd769
-0014d7ffd7ffd7b40014d754001fd7490009d7ffd7330009d7680005d7a7000fd710000b
-d743001fd7690014d7ffd7ffd7b90014d755001fd7450009d7ffd7340009d765000ad7a7
-000cd712000bd73e0020d76a0014d7ffd7ffd7bd0015d7550020d7410008d7ffd7350009
-d765000ad7ab0004d717000bd73a0020d76a0015d7ffd7ffd7c20014d7560020d73d0009
-d7ffd7350009d7ffd73a000ad7370020d76b0015d7ffd7ffd7c60015d7570020d7380009
-d7ffd7360009d7ffd73a000bd7320020d76d0014d7ffd7ffd7cb0015d7580020d7340009
-d7ffd7370009d7ffd73b000bd72e0020d76d0015d7ffd7ffd7cf0016d7590020d7300009
-d7ffd7370009d7ffd73c000ad72a0020d76f0015d7ffd7ffd7d30016d75a0020d72c0009
-d7ffd7380009d7ffd73d000ad7250021d76f0016d7ffd7ffd7d80016d75b0020d7270009
-d7ffd7390009d7ffd73d000bd7210020d7710015d7ffd7ffd7dd0016d75c0020d7240009
-d7ffd7390009d7ffd73e000bd71c0020d7720016d7ffd7ffd7e10017d75c0021d71f0009
-d7ffd73a0009d7ffd73f000ad7180021d7730016d7ffd7ffd7e60016d75e0021d71a0009
-d7ffd73b0009d7ffd73f000bd7140020d7750016d7ffd7ffd7ea0017d75e0021d7170008
-d7ffd73c0009d7ffd740000bd70f0021d7750016d7ffd7ffd7ef0017d7600021d7120009
-d7ffd73c0009d7ffd741000bd70b0020d7770016d7ffd7ffd7f40017d7610020d70e0009
-d7ffd73d0009d7ffd742000ad7070021d7770017d7ffd7ffd7f80018d7620020d7090009
-d7ffd73e0009d7ffd742000bd7020021d7780017d7ffd7ffd7fd0018d7640020d7050009
-d7ffd73e0009d7ffd743002bd77a0017d7ffd7ffd7ffd7020018d7650020d7000009d7ff
-d73f0009d7ffd7440026d77b0018d7ffd7ffd7ffd7060019d7660026d7ffd7400009d7ff
-d7450021d77c0019d7ffd7ffd7ffd70a0019d7680021d7ffd7410009d7ffd7400022d77d
-0019d7ffd7ffd7ffd7100019d7690022d7ffd73c0009d7ffd73c0022d77e001ad7ffd7ff
-d7ffd714001ad76a0022d7ffd7380009d7ffd7380022d780001ad7ffd7ffd7ffd718001a
-d76c0022d7ffd7340009d7ffd7330023d781001bd7ffd7ffd7ffd71d001ad76d0023d7ff
-d72f0009d7ffd72f0023d782001bd7ffd7ffd7ffd723001ad76e0023d7ffd72b0009d7ff
-d72b0026d780001bd7ffd7ffd7ffd728001ad7700024d7ffd7260009d7ffd726002bd77e
-001ad7ffd7ffd7ffd72e001ad76e0028d7ffd7210009d7ffd7210024d7010009d77b001b
-d7ffd7ffd7ffd733001ad76b002dd7ffd71c0009d7ffd71c0025d7050009d778001bd7ff
-d7ffd7ffd739001ad7680008d7030025d7ffd7170009d7ffd7170025d70a0009d775001b
-d7ffd7ffd7ffd73f001ad7650008d7070027d7ffd7110009d7ffd7110027d70e0009d772
-001bd7ffd7ffd7ffd744001cd7610008d70b0028d7ffd70c0009d7ffd70c0028d7120009
-d76f001bd7ffd7ffd7ffd74a001cd75e0008d7100028d7ffd7070009d7ffd7070028d717
-0009d76c001bd7ffd7ffd7ffd750001cd75b0008d7140029d7ffd7020009d7ffd7020029
-d71b0009d769001bd7ffd7ffd7ffd756001cd7580008d719002ad7fc0009d7fc002ad720
-0009d765001dd7ffd7ffd7ffd75a001dd7550008d71e002bd7f60009d7f6002bd7250009
-d762001dd7ffd7ffd7ffd760001dd7520008d723002cd7f00009d7f0002cd72a0009d75f
-001dd7ffd7ffd7ffd766001ed74e0008d728002dd7ea0009d7ea002dd72f0009d75c001d
-d7ffd7ffd7ffd76c001ed74b0008d72e002dd7e40009d7e4002dd7350009d759001dd7ff
-d7ffd7ffd772001ed7480008d733002ed7de0009d7de002ed73a0009d756001dd7ffd7ff
-d7ffd778001ed7450008d738002fd7d80009d7d8002fd73f0009d753001dd7ffd7ffd7ff
-d77e001fd7410008d73d0031d7d10009d7d10031d7440009d74f001ed7ffd7ffd7ffd784
-001fd73e0008d7430033d7c90009d7c90033d74a0009d74c001ed7ffd7ffd7ffd78b001e
-d73b0008d7490036d7c00009d7c00036d7500009d748001fd7ffd7ffd7ffd791001fd737
-0008d74f0038d7b80009d7b80038d7560009d745001fd7ffd7ffd7ffd797001fd7340008
-d755003ad7b00009d7b0003ad75c0009d7410020d7ffd7ffd7ffd79d001fd7310008d75b
-003ed7a60009d7a6003ed7620009d73e0020d7ffd7ffd7ffd7a30020d72d0008d7610043
-d79b0009d79b0043d7680009d73b0020d7ffd7ffd7ffd7a90020d72a0008d7670048d790
-0009d7900048d76e0009d7370021d7ffd7ffd7ffd7af0020d7270008d76d004dd7850009
-d785004dd7740009d7340021d7ffd7ffd7ffd7b60020d7230008d7740051d77a0009d77a
-0051d77b0009d7300021d7ffd7ffd7ffd7bd0020d7200008d77b0055d76f0009d76f0055
-d7820009d72d0021d7ffd7ffd7ffd7c40020d71c0008d7830057d7650009d7650057d78a
-0009d7290021d7ffd7ffd7ffd7cb0021d7180008d78a005bd75a0009d75a005bd7910009
-d7250022d7ffd7ffd7ffd7d20021d7140008d7910065d7490009d7490065d7980009d721
-0022d7ffd7ffd7ffd7da0021d7100008d79a0072d7330009d7330072d7a10009d71d0022
-d7ffd7ffd7ffd7e10022d70c0008d7a500ff0041d7ac0009d7190023d7ffd7ffd7ffd7e8
-0022d7080008d7af00ff002dd7b60009d7150023d7ffd7ffd7ffd7ef0023d7040008d7ba
-00ff0017d7c10009d7110024d7ffd7ffd7ffd7f60023d7000008d7c700fdd7ce0009d70d
-0024d7ffd7ffd7ffd7fd002ad7d600dfd7dd0009d7090025d7ffd7ffd7ffd7ffd7040026
-d7e400c3d7eb0009d7050025d7ffd7ffd7ffd7ffd70c0024d7f100a5d7fa0009d7010025
-d7ffd7ffd7ffd7ffd7140025d7fb0087d7ffd709002dd7ffd7ffd7ffd7ffd71c0025d7ff
-d7060069d7ffd7180029d7ffd7ffd7ffd7ffd7230027d7ffd7300009d7ffd7470027d7ff
-d7ffd7ffd7ffd72b0027d7ffd72c0009d7ffd7430027d7ffd7ffd7ffd7ffd7330027d7ff
-d7280009d7ffd73f0027d7ffd7ffd7ffd7ffd73b0028d7ffd7230009d7ffd73a0028d7ff
-d7ffd7ffd7ffd7430028d7ffd71f0009d7ffd7360028d7ffd7ffd7ffd7ffd74b0029d7ff
-d71a0009d7ffd7310029d7ffd7ffd7ffd7ffd7530029d7ffd7160009d7ffd72d0029d7ff
-d7ffd7ffd7ffd75c0029d7ffd7110009d7ffd7280029d7ffd7ffd7ffd7ffd7650029d7ff
-d70d0009d7ffd7240029d7ffd7ffd7ffd7ffd76e0029d7ffd7080009d7ffd71f0029d7ff
-d7ffd7ffd7ffd7780029d7ffd7030009d7ffd71b0029d7ffd7ffd7ffd7ffd7800029d7ff
-0009d7ffd7170029d7ffd7ffd7ffd7ffd7890029d7fa0009d7ffd7120029d7ffd7ffd7ff
-d7ffd7920029d7f60009d7ffd70e0029d7ffd7ffd7ffd7ffd79b002ad7f00009d7ffd708
-002ad7ffd7ffd7ffd7ffd7a5002cd7e90009d7ffd701002cd7ffd7ffd7ffd7ffd7af002e
-d7e20009d7fa002ed7ffd7ffd7ffd7ffd7b90030d7db0009d7f30030d7ffd7ffd7ffd7ff
-d7c40031d7d40009d7ec0031d7ffd7ffd7ffd7ffd7cf0033d7cd0009d7e50033d7ffd7ff
-d7ffd7ffd7d90035d7c60009d7de0035d7ffd7ffd7ffd7ffd7e30037d7bf0009d7d70037
-d7ffd7ffd7ffd7ffd7ee0038d7b80009d7d00038d7ffd7ffd7ffd7ffd7fa0039d7b10009
-d7c90039d7ffd7ffd7ffd7ffd7ffd706003ad7aa0009d7c2003ad7ffd7ffd7ffd7ffd7ff
-d712003bd7a30009d7bb003bd7ffd7ffd7ffd7ffd7ffd71e003ed79a0009d7b2003ed7ff
-d7ffd7ffd7ffd7ffd72a0043d78f0009d7a70043d7ffd7ffd7ffd7ffd7ffd7360047d785
-0009d79c0048d7ffd7ffd7ffd7ffd7ffd742004cd77a0009d791004dd7ffd7ffd7ffd7ff
-d7ffd74f0050d76f0009d7860051d7ffd7ffd7ffd7ffd7ffd75d0054d7640009d77b0055
-d7ffd7ffd7ffd7ffd7ffd76b0058d7590009d7700058d7ffd7ffd7ffd7ffd7ffd77a005c
-d74e0009d765005cd7ffd7ffd7ffd7ffd7ffd7880066d73d0009d7540066d7ffd7ffd7ff
-d7ffd7ffd7980073d7270009d73e0073d7ffd7ffd7ffd7ffd7ffd7ac00ff0042d7ffd7ff
-d7ffd7ffd7ffd7c200ff002dd7ffd7ffd7ffd7ffd7ffd7d700ff0017d7ffd7ffd7ffd7ff
-d7ffd7ef00fdd7ffd7ffd7ffd7ffd7ffd7ffd70b00dfd7ffd7ffd7ffd7ffd7ffd7ffd728
-00c2d7ffd7ffd7ffd7ffd7ffd7ffd74a009cd7ffd7ffd7ffd7ffd7ffd7ffd7730070d7ff
-d7ffd7ffd7ffd7ffd7ffd7ab002cd7ffd7ffd7ffd7ffd7ffd7ffd7ffd7ffd7ffd7ffd75c
-
-%%EndData
-end
-%%PageTrailer
-%%Trailer
-%%BoundingBox: 0 213 495 508
-%%EOF
diff --git a/doc/user/rtemspie.png b/doc/user/rtemspie.png
deleted file mode 100644
index f6245ff45f..0000000000
--- a/doc/user/rtemspie.png
+++ /dev/null
Binary files differ
diff --git a/doc/user/rtemspie.txt b/doc/user/rtemspie.txt
deleted file mode 100644
index 7f15186762..0000000000
--- a/doc/user/rtemspie.txt
+++ /dev/null
@@ -1,7 +0,0 @@
- +-----------------------------------------------+
- | RTEMS Executive Interface |
- +-----------------------------------------------+
- | RTEMS Core |
- +-----------------------------------------------+
- | CPU Dependent Code |
- +-----------------------------------------------+
diff --git a/doc/user/rtmon.t b/doc/user/rtmon.t
deleted file mode 100644
index a8169620cd..0000000000
--- a/doc/user/rtmon.t
+++ /dev/null
@@ -1,1480 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2013.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@c
-@c Open Issues
-@c - nicen up the tables
-@c - use math mode to print formulas
-@c
-
-@chapter Rate Monotonic Manager
-
-@cindex rate mononitonic tasks
-@cindex periodic tasks
-
-@section Introduction
-
-The rate monotonic manager provides facilities to implement tasks which execute
-in a periodic fashion. Critically, it also gathers information about the
-execution of those periods and can provide important statistics to the
-user which can be used to analyze and tune the application. The directives
-provided by the rate monotonic manager are:
-
-@itemize @bullet
-@item @code{@value{DIRPREFIX}rate_monotonic_create} - Create a rate monotonic period
-@item @code{@value{DIRPREFIX}rate_monotonic_ident} - Get ID of a period
-@item @code{@value{DIRPREFIX}rate_monotonic_cancel} - Cancel a period
-@item @code{@value{DIRPREFIX}rate_monotonic_delete} - Delete a rate monotonic period
-@item @code{@value{DIRPREFIX}rate_monotonic_period} - Conclude current/Start next period
-@item @code{@value{DIRPREFIX}rate_monotonic_get_status} - Obtain status from a period
-@item @code{@value{DIRPREFIX}rate_monotonic_get_statistics} - Obtain statistics from a period
-@item @code{@value{DIRPREFIX}rate_monotonic_reset_statistics} - Reset statistics for a period
-@item @code{@value{DIRPREFIX}rate_monotonic_reset_all_statistics} - Reset statistics for all periods
-@item @code{@value{DIRPREFIX}rate_monotonic_report_statistics} - Print period statistics report
-@end itemize
-
-@section Background
-
-The rate monotonic manager provides facilities to
-manage the execution of periodic tasks. This manager was
-designed to support application designers who utilize the Rate
-Monotonic Scheduling Algorithm (RMS) to ensure that their
-periodic tasks will meet their deadlines, even under transient
-overload conditions. Although designed for hard real-time
-systems, the services provided by the rate monotonic manager may
-be used by any application which requires periodic tasks.
-
-@subsection Rate Monotonic Manager Required Support
-
-A clock tick is required to support the functionality provided by this manager.
-
-@subsection Period Statistics
-
-This manager maintains a set of statistics on each period object. These
-statistics are reset implictly at period creation time and may be reset or
-obtained at any time by the application. The following is a list of the
-information kept:
-
-@itemize @bullet
-@item @code{owner}
-is the id of the thread that owns this period.
-
-@item @code{count}
-is the total number of periods executed.
-
-@item @code{missed_count}
-is the number of periods that were missed.
-
-@item @code{min_cpu_time}
-is the minimum amount of CPU execution time consumed
-on any execution of the periodic loop.
-
-@item @code{max_cpu_time}
-is the maximum amount of CPU execution time consumed
-on any execution of the periodic loop.
-
-@item @code{total_cpu_time}
-is the total amount of CPU execution time consumed
-by executions of the periodic loop.
-
-@item @code{min_wall_time}
-is the minimum amount of wall time that passed
-on any execution of the periodic loop.
-
-@item @code{max_wall_time}
-is the maximum amount of wall time that passed
-on any execution of the periodic loop.
-
-@item @code{total_wall_time}
-is the total amount of wall time that passed
-during executions of the periodic loop.
-
-@end itemize
-
-Each period is divided into two consecutive phases. The period starts with the
-active phase of the task and is followed by the inactive phase of the task. In
-the inactive phase the task is blocked and waits for the start of the next
-period. The inactive phase is skipped in case of a period miss. The wall time
-includes the time during the active phase of the task on which the task is not
-executing on a processor. The task is either blocked (for example it waits for
-a resource) or a higher priority tasks executes, thus preventing it from
-executing. In case the wall time exceeds the period time, then this is a
-period miss. The gap between the wall time and the period time is the margin
-between a period miss or success.
-
-The period statistics information is inexpensive to maintain
-and can provide very useful insights into the execution
-characteristics of a periodic task loop. But it is just information.
-The period statistics reported must be analyzed by the user in terms
-of what the applications is. For example, in an application where
-priorities are assigned by the Rate Monotonic Algorithm, it would
-be very undesirable for high priority (i.e. frequency) tasks to
-miss their period. Similarly, in nearly any application, if a
-task were supposed to execute its periodic loop every 10 milliseconds
-and it averaged 11 milliseconds, then application requirements
-are not being met.
-
-The information reported can be used to determine the "hot spots"
-in the application. Given a period's id, the user can determine
-the length of that period. From that information and the CPU usage,
-the user can calculate the percentage of CPU time consumed by that
-periodic task. For example, a task executing for 20 milliseconds
-every 200 milliseconds is consuming 10 percent of the processor's
-execution time. This is usually enough to make it a good candidate
-for optimization.
-
-However, execution time alone is not enough to gauge the value of
-optimizing a particular task. It is more important to optimize
-a task executing 2 millisecond every 10 milliseconds (20 percent
-of the CPU) than one executing 10 milliseconds every 100 (10 percent
-of the CPU). As a general rule of thumb, the higher frequency at
-which a task executes, the more important it is to optimize that
-task.
-
-@subsection Rate Monotonic Manager Definitions
-
-@cindex periodic task, definition
-
-A periodic task is one which must be executed at a
-regular interval. The interval between successive iterations of
-the task is referred to as its period. Periodic tasks can be
-characterized by the length of their period and execution time.
-The period and execution time of a task can be used to determine
-the processor utilization for that task. Processor utilization
-is the percentage of processor time used and can be calculated
-on a per-task or system-wide basis. Typically, the task's
-worst-case execution time will be less than its period. For
-example, a periodic task's requirements may state that it should
-execute for 10 milliseconds every 100 milliseconds. Although
-the execution time may be the average, worst, or best case, the
-worst-case execution time is more appropriate for use when
-analyzing system behavior under transient overload conditions.
-
-@cindex aperiodic task, definition
-
-In contrast, an aperiodic task executes at irregular
-intervals and has only a soft deadline. In other words, the
-deadlines for aperiodic tasks are not rigid, but adequate
-response times are desirable. For example, an aperiodic task
-may process user input from a terminal.
-
-@cindex sporadic task, definition
-
-Finally, a sporadic task is an aperiodic task with a
-hard deadline and minimum interarrival time. The minimum
-interarrival time is the minimum period of time which exists
-between successive iterations of the task. For example, a
-sporadic task could be used to process the pressing of a fire
-button on a joystick. The mechanical action of the fire button
-ensures a minimum time period between successive activations,
-but the missile must be launched by a hard deadline.
-
-@subsection Rate Monotonic Scheduling Algorithm
-
-@cindex Rate Monotonic Scheduling Algorithm, definition
-@cindex RMS Algorithm, definition
-
-The Rate Monotonic Scheduling Algorithm (RMS) is
-important to real-time systems designers because it allows one
-to guarantee that a set of tasks is schedulable. A set of tasks
-is said to be schedulable if all of the tasks can meet their
-deadlines. RMS provides a set of rules which can be used to
-perform a guaranteed schedulability analysis for a task set.
-This analysis determines whether a task set is schedulable under
-worst-case conditions and emphasizes the predictability of the
-system's behavior. It has been proven that:
-
-@itemize @code{ }
-@item @b{RMS is an optimal static priority algorithm for
-scheduling independent, preemptible, periodic tasks
-on a single processor.}
-@end itemize
-
-RMS is optimal in the sense that if a set of tasks
-can be scheduled by any static priority algorithm, then RMS will
-be able to schedule that task set. RMS bases it schedulability
-analysis on the processor utilization level below which all
-deadlines can be met.
-
-RMS calls for the static assignment of task
-priorities based upon their period. The shorter a task's
-period, the higher its priority. For example, a task with a 1
-millisecond period has higher priority than a task with a 100
-millisecond period. If two tasks have the same period, then RMS
-does not distinguish between the tasks. However, RTEMS
-specifies that when given tasks of equal priority, the task
-which has been ready longest will execute first. RMS's priority
-assignment scheme does not provide one with exact numeric values
-for task priorities. For example, consider the following task
-set and priority assignments:
-
-@ifset use-ascii
-@example
-@group
-+--------------------+---------------------+---------------------+
-| Task | Period | Priority |
-| | (in milliseconds) | |
-+--------------------+---------------------+---------------------+
-| 1 | 100 | Low |
-+--------------------+---------------------+---------------------+
-| 2 | 50 | Medium |
-+--------------------+---------------------+---------------------+
-| 3 | 50 | Medium |
-+--------------------+---------------------+---------------------+
-| 4 | 25 | High |
-+--------------------+---------------------+---------------------+
-@end group
-@end example
-@end ifset
-
-@ifset use-tex
-@sp 1
-@tex
-\centerline{\vbox{\offinterlineskip\halign{
-\vrule\strut#&
-\hbox to 0.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 1.25in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 1.25in{\enskip\hfil#\hfil}&
-\vrule#\cr\noalign{\hrule}
-&\bf Task&& \bf Period && \bf Priority &\cr
-& && \bf (in milliseconds) && &\cr\noalign{\hrule}
-& 1 && 100 && Low &\cr\noalign{\hrule}
-& 2 && 50 && Medium &\cr\noalign{\hrule}
-& 3 && 50 && Medium &\cr\noalign{\hrule}
-& 4 && 25 && High &\cr\noalign{\hrule}
-}}\hfil}
-@end tex
-@end ifset
-
-@ifset use-html
-@html
-<CENTER>
- <TABLE COLS=3 WIDTH="80%" BORDER=2>
-<TR><TD ALIGN=center><STRONG>Task</STRONG></TD>
- <TD ALIGN=center><STRONG>Period (in milliseconds)</STRONG></TD>
- <TD ALIGN=center><STRONG>Priority</STRONG></TD></TR>
-<TR><TD ALIGN=center>1</TD>
- <TD ALIGN=center>100 </TD>
- <TD ALIGN=center>Low</TD></TR>
-<TR><TD ALIGN=center>2</TD>
- <TD ALIGN=center>50 </TD>
- <TD ALIGN=center>Medium</TD></TR>
-<TR><TD ALIGN=center>3</TD>
- <TD ALIGN=center>50 </TD>
- <TD ALIGN=center>Medium</TD></TR>
-<TR><TD ALIGN=center>4</TD>
- <TD ALIGN=center>25 </TD>
- <TD ALIGN=center>High</TD></TR>
- </TABLE>
-</CENTER>
-@end html
-@end ifset
-
-RMS only calls for task 1 to have the lowest
-priority, task 4 to have the highest priority, and tasks 2 and 3
-to have an equal priority between that of tasks 1 and 4. The
-actual RTEMS priorities assigned to the tasks must only adhere
-to those guidelines.
-
-Many applications have tasks with both hard and soft
-deadlines. The tasks with hard deadlines are typically referred
-to as the critical task set, with the soft deadline tasks being
-the non-critical task set. The critical task set can be
-scheduled using RMS, with the non-critical tasks not executing
-under transient overload, by simply assigning priorities such
-that the lowest priority critical task (i.e. longest period) has
-a higher priority than the highest priority non-critical task.
-Although RMS may be used to assign priorities to the
-non-critical tasks, it is not necessary. In this instance,
-schedulability is only guaranteed for the critical task set.
-
-@subsection Schedulability Analysis
-
-@cindex RMS schedulability analysis
-
-RMS allows application designers to ensure that tasks
-can meet all deadlines, even under transient overload, without
-knowing exactly when any given task will execute by applying
-proven schedulability analysis rules.
-
-@subsubsection Assumptions
-
-The schedulability analysis rules for RMS were
-developed based on the following assumptions:
-
-
-@itemize @bullet
-@item The requests for all tasks for which hard deadlines
-exist are periodic, with a constant interval between requests.
-
-@item Each task must complete before the next request for it
-occurs.
-
-@item The tasks are independent in that a task does not depend
-on the initiation or completion of requests for other tasks.
-
-@item The execution time for each task without preemption or
-interruption is constant and does not vary.
-
-@item Any non-periodic tasks in the system are special. These
-tasks displace periodic tasks while executing and do not have
-hard, critical deadlines.
-@end itemize
-
-Once the basic schedulability analysis is understood,
-some of the above assumptions can be relaxed and the
-side-effects accounted for.
-
-@subsubsection Processor Utilization Rule
-
-@cindex RMS Processor Utilization Rule
-
-The Processor Utilization Rule requires that
-processor utilization be calculated based upon the period and
-execution time of each task. The fraction of processor time
-spent executing task index is Time(index) / Period(index). The
-processor utilization can be calculated as follows:
-
-@example
-@group
-Utilization = 0
-
-for index = 1 to maximum_tasks
- Utilization = Utilization + (Time(index)/Period(index))
-@end group
-@end example
-
-To ensure schedulability even under transient
-overload, the processor utilization must adhere to the following
-rule:
-
-@example
-Utilization = maximum_tasks * (2**(1/maximum_tasks) - 1)
-@end example
-
-As the number of tasks increases, the above formula
-approaches ln(2) for a worst-case utilization factor of
-approximately 0.693. Many tasks sets can be scheduled with a
-greater utilization factor. In fact, the average processor
-utilization threshold for a randomly generated task set is
-approximately 0.88.
-
-@subsubsection Processor Utilization Rule Example
-
-This example illustrates the application of the
-Processor Utilization Rule to an application with three critical
-periodic tasks. The following table details the RMS priority,
-period, execution time, and processor utilization for each task:
-
-@ifset use-ascii
-@example
-@group
- +------------+----------+--------+-----------+-------------+
- | Task | RMS | Period | Execution | Processor |
- | | Priority | | Time | Utilization |
- +------------+----------+--------+-----------+-------------+
- | 1 | High | 100 | 15 | 0.15 |
- +------------+----------+--------+-----------+-------------+
- | 2 | Medium | 200 | 50 | 0.25 |
- +------------+----------+--------+-----------+-------------+
- | 3 | Low | 300 | 100 | 0.33 |
- +------------+----------+--------+-----------+-------------+
-@end group
-@end example
-@end ifset
-
-@ifset use-tex
-@sp 1
-@tex
-\centerline{\vbox{\offinterlineskip\halign{
-\vrule\strut#&
-\hbox to 0.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 0.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 0.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 1.00in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 1.00in{\enskip\hfil#\hfil}&
-\vrule#\cr\noalign{\hrule}
-&\bf Task&& \bf RMS && \bf Period && \bf Execution &&\bf Processor&\cr
-& && \bf Priority && &&\bf Time &&\bf Utilization &\cr\noalign{\hrule}
-& 1 && High && 100 && 15 && 0.15 &\cr\noalign{\hrule}
-& 2 && Medium && 200 && 50 && 0.25 &\cr\noalign{\hrule}
-& 3 && Low && 300 && 100 && 0.33 &\cr\noalign{\hrule}
-}}\hfil}
-@end tex
-@end ifset
-
-@ifset use-html
-@html
-<CENTER>
- <TABLE COLS=5 WIDTH="80%" BORDER=2>
-<TR><TD ALIGN=center><STRONG>Task</STRONG></TD>
- <TD ALIGN=center><STRONG>RMS Priority</STRONG></TD>
- <TD ALIGN=center><STRONG>Period</STRONG></TD>
- <TD ALIGN=center><STRONG>Execution Time</STRONG></TD>
- <TD ALIGN=center><STRONG>Processor Utilization</STRONG></TD></TR>
-<TR><TD ALIGN=center>1</TD>
- <TD ALIGN=center>High</TD>
- <TD ALIGN=center>100</TD>
- <TD ALIGN=center>15</TD>
- <TD ALIGN=center>0.15</TD></TR>
-<TR><TD ALIGN=center>2</TD>
- <TD ALIGN=center>Medium</TD>
- <TD ALIGN=center>200</TD>
- <TD ALIGN=center>50</TD>
- <TD ALIGN=center>0.25</TD></TR>
-<TR><TD ALIGN=center>3</TD>
- <TD ALIGN=center>Low</TD>
- <TD ALIGN=center>300</TD>
- <TD ALIGN=center>100</TD>
- <TD ALIGN=center>0.33</TD></TR>
- </TABLE>
-</CENTER>
-@end html
-@end ifset
-
-The total processor utilization for this task set is
-0.73 which is below the upper bound of 3 * (2**(1/3) - 1), or
-0.779, imposed by the Processor Utilization Rule. Therefore,
-this task set is guaranteed to be schedulable using RMS.
-
-@subsubsection First Deadline Rule
-
-@cindex RMS First Deadline Rule
-
-If a given set of tasks do exceed the processor
-utilization upper limit imposed by the Processor Utilization
-Rule, they can still be guaranteed to meet all their deadlines
-by application of the First Deadline Rule. This rule can be
-stated as follows:
-
-For a given set of independent periodic tasks, if
-each task meets its first deadline when all tasks are started at
-the same time, then the deadlines will always be met for any
-combination of start times.
-
-A key point with this rule is that ALL periodic tasks
-are assumed to start at the exact same instant in time.
-Although this assumption may seem to be invalid, RTEMS makes it
-quite easy to ensure. By having a non-preemptible user
-initialization task, all application tasks, regardless of
-priority, can be created and started before the initialization
-deletes itself. This technique ensures that all tasks begin to
-compete for execution time at the same instant -- when the user
-initialization task deletes itself.
-
-@subsubsection First Deadline Rule Example
-
-The First Deadline Rule can ensure schedulability
-even when the Processor Utilization Rule fails. The example
-below is a modification of the Processor Utilization Rule
-example where task execution time has been increased from 15 to
-25 units. The following table details the RMS priority, period,
-execution time, and processor utilization for each task:
-
-@ifset use-ascii
-@example
-@group
- +------------+----------+--------+-----------+-------------+
- | Task | RMS | Period | Execution | Processor |
- | | Priority | | Time | Utilization |
- +------------+----------+--------+-----------+-------------+
- | 1 | High | 100 | 25 | 0.25 |
- +------------+----------+--------+-----------+-------------+
- | 2 | Medium | 200 | 50 | 0.25 |
- +------------+----------+--------+-----------+-------------+
- | 3 | Low | 300 | 100 | 0.33 |
- +------------+----------+--------+-----------+-------------+
-@end group
-@end example
-@end ifset
-
-@ifset use-tex
-@sp 1
-@tex
-\centerline{\vbox{\offinterlineskip\halign{
-\vrule\strut#&
-\hbox to 0.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 0.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 0.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 1.00in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 1.00in{\enskip\hfil#\hfil}&
-\vrule#\cr\noalign{\hrule}
-&\bf Task&& \bf RMS && \bf Period && \bf Execution &&\bf Processor&\cr
-& && \bf Priority && &&\bf Time &&\bf Utilization &\cr\noalign{\hrule}
-& 1 && High && 100 && 25 && 0.25 &\cr\noalign{\hrule}
-& 2 && Medium && 200 && 50 && 0.25 &\cr\noalign{\hrule}
-& 3 && Low && 300 && 100 && 0.33 &\cr\noalign{\hrule}
-}}\hfil}
-@end tex
-@end ifset
-
-@ifset use-html
-@html
-<CENTER>
- <TABLE COLS=5 WIDTH="80%" BORDER=2>
-<TR><TD ALIGN=center><STRONG>Task</STRONG></TD>
- <TD ALIGN=center><STRONG>RMS Priority</STRONG></TD>
- <TD ALIGN=center><STRONG>Period</STRONG></TD>
- <TD ALIGN=center><STRONG>Execution Time</STRONG></TD>
- <TD ALIGN=center><STRONG>Processor Utilization</STRONG></TD></TR>
-<TR><TD ALIGN=center>1</TD>
- <TD ALIGN=center>High</TD>
- <TD ALIGN=center>100</TD>
- <TD ALIGN=center>25</TD>
- <TD ALIGN=center>0.25</TD></TR>
-<TR><TD ALIGN=center>2</TD>
- <TD ALIGN=center>Medium</TD>
- <TD ALIGN=center>200</TD>
- <TD ALIGN=center>50</TD>
- <TD ALIGN=center>0.25</TD></TR>
-<TR><TD ALIGN=center>3</TD>
- <TD ALIGN=center>Low</TD>
- <TD ALIGN=center>300</TD>
- <TD ALIGN=center>100</TD>
- <TD ALIGN=center>0.33</TD></TR>
- </TABLE>
-</CENTER>
-@end html
-@end ifset
-
-The total processor utilization for the modified task
-set is 0.83 which is above the upper bound of 3 * (2**(1/3) - 1),
-or 0.779, imposed by the Processor Utilization Rule. Therefore,
-this task set is not guaranteed to be schedulable using RMS.
-However, the First Deadline Rule can guarantee the
-schedulability of this task set. This rule calls for one to
-examine each occurrence of deadline until either all tasks have
-met their deadline or one task failed to meet its first
-deadline. The following table details the time of each deadline
-occurrence, the maximum number of times each task may have run,
-the total execution time, and whether all the deadlines have
-been met.
-
-@ifset use-ascii
-@example
-@group
-+----------+------+------+------+----------------------+---------------+
-| Deadline | Task | Task | Task | Total | All Deadlines |
-| Time | 1 | 2 | 3 | Execution Time | Met? |
-+----------+------+------+------+----------------------+---------------+
-| 100 | 1 | 1 | 1 | 25 + 50 + 100 = 175 | NO |
-+----------+------+------+------+----------------------+---------------+
-| 200 | 2 | 1 | 1 | 50 + 50 + 100 = 200 | YES |
-+----------+------+------+------+----------------------+---------------+
-@end group
-@end example
-@end ifset
-
-@ifset use-tex
-@sp 1
-@tex
-\centerline{\vbox{\offinterlineskip\halign{
-\vrule\strut#&
-\hbox to 0.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 0.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 0.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 0.75in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 2.00in{\enskip\hfil#\hfil}&
-\vrule#&
-\hbox to 1.00in{\enskip\hfil#\hfil}&
-\vrule#\cr\noalign{\hrule}
-&\bf Deadline&& \bf Task &&\bf Task&&\bf Task&&\bf Total &&\bf All Deadlines &\cr
-&\bf Time && \bf 1 &&\bf 2 &&\bf 3 &&\bf Execution Time &&\bf Net?&\cr\noalign{\hrule}
-& 100&& 1 && 1 && 1 && 25 + 50 + 100 = 175 && NO &\cr\noalign{\hrule}
-& 200&& 2 && 1 && 1 && 50 + 50 + 100 = 200 && YES &\cr\noalign{\hrule}
-}}\hfil}
-@end tex
-@end ifset
-
-@ifset use-html
-@html
-<CENTER>
- <TABLE COLS=6 WIDTH="80%" BORDER=2>
-<TR><TD ALIGN=center><STRONG>Deadline Time</STRONG></TD>
- <TD ALIGN=center><STRONG>Task 1</STRONG></TD>
- <TD ALIGN=center><STRONG>Task 2</STRONG></TD>
- <TD ALIGN=center><STRONG>Task 3</STRONG></TD>
- <TD ALIGN=center><STRONG>Total Execution Time</STRONG></TD>
- <TD ALIGN=center><STRONG>All Deadlines Met?</STRONG></TD></TR>
-<TR><TD ALIGN=center>100</TD>
- <TD ALIGN=center>1</TD>
- <TD ALIGN=center>1</TD>
- <TD ALIGN=center>1</TD>
- <TD ALIGN=center>25 + 50 + 100 = 175</TD>
- <TD ALIGN=center>NO</TD></TR>
-<TR><TD ALIGN=center>200</TD>
- <TD ALIGN=center>2</TD>
- <TD ALIGN=center>1</TD>
- <TD ALIGN=center>1</TD>
- <TD ALIGN=center>50 + 50 + 100 = 175</TD>
- <TD ALIGN=center>YES</TD></TR>
- </TABLE>
-</CENTER>
-@end html
-@end ifset
-
-The key to this analysis is to recognize when each
-task will execute. For example at time 100, task 1 must have
-met its first deadline, but tasks 2 and 3 may also have begun
-execution. In this example, at time 100 tasks 1 and 2 have
-completed execution and thus have met their first deadline.
-Tasks 1 and 2 have used (25 + 50) = 75 time units, leaving (100
-- 75) = 25 time units for task 3 to begin. Because task 3 takes
-100 ticks to execute, it will not have completed execution at
-time 100. Thus at time 100, all of the tasks except task 3 have
-met their first deadline.
-
-At time 200, task 1 must have met its second deadline
-and task 2 its first deadline. As a result, of the first 200
-time units, task 1 uses (2 * 25) = 50 and task 2 uses 50,
-leaving (200 - 100) time units for task 3. Task 3 requires 100
-time units to execute, thus it will have completed execution at
-time 200. Thus, all of the tasks have met their first deadlines
-at time 200, and the task set is schedulable using the First
-Deadline Rule.
-
-@subsubsection Relaxation of Assumptions
-
-The assumptions used to develop the RMS
-schedulability rules are uncommon in most real-time systems.
-For example, it was assumed that tasks have constant unvarying
-execution time. It is possible to relax this assumption, simply
-by using the worst-case execution time of each task.
-
-Another assumption is that the tasks are independent.
-This means that the tasks do not wait for one another or
-contend for resources. This assumption can be relaxed by
-accounting for the amount of time a task spends waiting to
-acquire resources. Similarly, each task's execution time must
-account for any I/O performed and any RTEMS directive calls.
-
-In addition, the assumptions did not account for the
-time spent executing interrupt service routines. This can be
-accounted for by including all the processor utilization by
-interrupt service routines in the utilization calculation.
-Similarly, one should also account for the impact of delays in
-accessing local memory caused by direct memory access and other
-processors accessing local dual-ported memory.
-
-The assumption that nonperiodic tasks are used only
-for initialization or failure-recovery can be relaxed by placing
-all periodic tasks in the critical task set. This task set can
-be scheduled and analyzed using RMS. All nonperiodic tasks are
-placed in the non-critical task set. Although the critical task
-set can be guaranteed to execute even under transient overload,
-the non-critical task set is not guaranteed to execute.
-
-In conclusion, the application designer must be fully
-cognizant of the system and its run-time behavior when
-performing schedulability analysis for a system using RMS.
-Every hardware and software factor which impacts the execution
-time of each task must be accounted for in the schedulability
-analysis.
-
-@subsubsection Further Reading
-
-For more information on Rate Monotonic Scheduling and
-its schedulability analysis, the reader is referred to the
-following:
-
-@itemize @code{ }
-@item @cite{C. L. Liu and J. W. Layland. "Scheduling Algorithms for
-Multiprogramming in a Hard Real Time Environment." @b{Journal of
-the Association of Computing Machinery}. January 1973. pp. 46-61.}
-
-@item @cite{John Lehoczky, Lui Sha, and Ye Ding. "The Rate Monotonic
-Scheduling Algorithm: Exact Characterization and Average Case
-Behavior." @b{IEEE Real-Time Systems Symposium}. 1989. pp. 166-171.}
-
-@item @cite{Lui Sha and John Goodenough. "Real-Time Scheduling
-Theory and Ada." @b{IEEE Computer}. April 1990. pp. 53-62.}
-
-@item @cite{Alan Burns. "Scheduling hard real-time systems: a
-review." @b{Software Engineering Journal}. May 1991. pp. 116-128.}
-@end itemize
-
-@section Operations
-
-@subsection Creating a Rate Monotonic Period
-
-The @code{@value{DIRPREFIX}rate_monotonic_create} directive creates a rate
-monotonic period which is to be used by the calling task to
-delineate a period. RTEMS allocates a Period Control Block
-(PCB) from the PCB free list. This data structure is used by
-RTEMS to manage the newly created rate monotonic period. RTEMS
-returns a unique period ID to the application which is used by
-other rate monotonic manager directives to access this rate
-monotonic period.
-
-@subsection Manipulating a Period
-
-The @code{@value{DIRPREFIX}rate_monotonic_period} directive is used to
-establish and maintain periodic execution utilizing a previously
-created rate monotonic period. Once initiated by the
-@code{@value{DIRPREFIX}rate_monotonic_period} directive, the period is
-said to run until it either expires or is reinitiated. The state of the rate
-monotonic period results in one of the following scenarios:
-
-@itemize @bullet
-@item If the rate monotonic period is running, the calling
-task will be blocked for the remainder of the outstanding period
-and, upon completion of that period, the period will be
-reinitiated with the specified period.
-
-@item If the rate monotonic period is not currently running
-and has not expired, it is initiated with a length of period
-ticks and the calling task returns immediately.
-
-@item If the rate monotonic period has expired before the task
-invokes the @code{@value{DIRPREFIX}rate_monotonic_period} directive,
-the period will be initiated with a length of period ticks and the calling task
-returns immediately with a timeout error status.
-
-@end itemize
-
-@subsection Obtaining the Status of a Period
-
-If the @code{@value{DIRPREFIX}rate_monotonic_period} directive is invoked
-with a period of @code{@value{RPREFIX}PERIOD_STATUS} ticks, the current
-state of the specified rate monotonic period will be returned. The following
-table details the relationship between the period's status and
-the directive status code returned by the
-@code{@value{DIRPREFIX}rate_monotonic_period}
-directive:
-
-@itemize @bullet
-@item @code{@value{RPREFIX}SUCCESSFUL} - period is running
-
-@item @code{@value{RPREFIX}TIMEOUT} - period has expired
-
-@item @code{@value{RPREFIX}NOT_DEFINED} - period has never been initiated
-@end itemize
-
-Obtaining the status of a rate monotonic period does
-not alter the state or length of that period.
-
-@subsection Canceling a Period
-
-The @code{@value{DIRPREFIX}rate_monotonic_cancel} directive is used to stop
-the period maintained by the specified rate monotonic period.
-The period is stopped and the rate monotonic period can be
-reinitiated using the @code{@value{DIRPREFIX}rate_monotonic_period} directive.
-
-@subsection Deleting a Rate Monotonic Period
-
-The @code{@value{DIRPREFIX}rate_monotonic_delete} directive is used to delete
-a rate monotonic period. If the period is running and has not
-expired, the period is automatically canceled. The rate
-monotonic period's control block is returned to the PCB free
-list when it is deleted. A rate monotonic period can be deleted
-by a task other than the task which created the period.
-
-@subsection Examples
-
-The following sections illustrate common uses of rate
-monotonic periods to construct periodic tasks.
-
-@subsection Simple Periodic Task
-
-This example consists of a single periodic task
-which, after initialization, executes every 100 clock ticks.
-
-@page
-@example
-rtems_task Periodic_task(rtems_task_argument arg)
-@{
- rtems_name name;
- rtems_id period;
- rtems_status_code status;
-
- name = rtems_build_name( 'P', 'E', 'R', 'D' );
-
- status = rtems_rate_monotonic_create( name, &period );
- if ( status != RTEMS_STATUS_SUCCESSFUL ) @{
- printf( "rtems_monotonic_create failed with status of %d.\n", rc );
- exit( 1 );
- @}
-
-
- while ( 1 ) @{
- if ( rtems_rate_monotonic_period( period, 100 ) == RTEMS_TIMEOUT )
- break;
-
- /* Perform some periodic actions */
- @}
-
- /* missed period so delete period and SELF */
-
- status = rtems_rate_monotonic_delete( period );
- if ( status != RTEMS_STATUS_SUCCESSFUL ) @{
- printf( "rtems_rate_monotonic_delete failed with status of %d.\n", status );
- exit( 1 );
- @}
-
- status = rtems_task_delete( SELF ); /* should not return */
- printf( "rtems_task_delete returned with status of %d.\n", status );
- exit( 1 );
-@}
-@end example
-
-The above task creates a rate monotonic period as
-part of its initialization. The first time the loop is
-executed, the @code{@value{DIRPREFIX}rate_monotonic_period}
-directive will initiate the period for 100 ticks and return
-immediately. Subsequent invocations of the
-@code{@value{DIRPREFIX}rate_monotonic_period} directive will result
-in the task blocking for the remainder of the 100 tick period.
-If, for any reason, the body of the loop takes more than 100
-ticks to execute, the @code{@value{DIRPREFIX}rate_monotonic_period}
-directive will return the @code{@value{RPREFIX}TIMEOUT} status.
-If the above task misses its deadline, it will delete the rate
-monotonic period and itself.
-
-@subsection Task with Multiple Periods
-
-This example consists of a single periodic task
-which, after initialization, performs two sets of actions every
-100 clock ticks. The first set of actions is performed in the
-first forty clock ticks of every 100 clock ticks, while the
-second set of actions is performed between the fortieth and
-seventieth clock ticks. The last thirty clock ticks are not
-used by this task.
-
-@page
-@example
-rtems_task Periodic_task(rtems_task_argument arg)
-@{
- rtems_name name_1, name_2;
- rtems_id period_1, period_2;
- rtems_status_code status;
-
- name_1 = rtems_build_name( 'P', 'E', 'R', '1' );
- name_2 = rtems_build_name( 'P', 'E', 'R', '2' );
-
- (void ) rtems_rate_monotonic_create( name_1, &period_1 );
- (void ) rtems_rate_monotonic_create( name_2, &period_2 );
-
- while ( 1 ) @{
- if ( rtems_rate_monotonic_period( period_1, 100 ) == TIMEOUT )
- break;
-
- if ( rtems_rate_monotonic_period( period_2, 40 ) == TIMEOUT )
- break;
-
- /*
- * Perform first set of actions between clock
- * ticks 0 and 39 of every 100 ticks.
- */
-
- if ( rtems_rate_monotonic_period( period_2, 30 ) == TIMEOUT )
- break;
-
- /*
- * Perform second set of actions between clock 40 and 69
- * of every 100 ticks. THEN ...
- *
- * Check to make sure we didn't miss the period_2 period.
- */
-
- if ( rtems_rate_monotonic_period( period_2, STATUS ) == TIMEOUT )
- break;
-
- (void) rtems_rate_monotonic_cancel( period_2 );
- @}
-
- /* missed period so delete period and SELF */
-
- (void ) rtems_rate_monotonic_delete( period_1 );
- (void ) rtems_rate_monotonic_delete( period_2 );
- (void ) task_delete( SELF );
-@}
-@end example
-
-The above task creates two rate monotonic periods as
-part of its initialization. The first time the loop is
-executed, the @code{@value{DIRPREFIX}rate_monotonic_period}
-directive will initiate the period_1 period for 100 ticks
-and return immediately. Subsequent invocations of the
-@code{@value{DIRPREFIX}rate_monotonic_period} directive
-for period_1 will result in the task blocking for the remainder
-of the 100 tick period. The period_2 period is used to control
-the execution time of the two sets of actions within each 100
-tick period established by period_1. The
-@code{@value{DIRPREFIX}rate_monotonic_cancel( period_2 )}
-call is performed to ensure that the period_2 period
-does not expire while the task is blocked on the period_1
-period. If this cancel operation were not performed, every time
-the @code{@value{DIRPREFIX}rate_monotonic_period( period_2, 40 )}
-call is executed, except for the initial one, a directive status
-of @code{@value{RPREFIX}TIMEOUT} is returned. It is important to
-note that every time this call is made, the period_2 period will be
-initiated immediately and the task will not block.
-
-If, for any reason, the task misses any deadline, the
-@code{@value{DIRPREFIX}rate_monotonic_period} directive will
-return the @code{@value{RPREFIX}TIMEOUT}
-directive status. If the above task misses its deadline, it
-will delete the rate monotonic periods and itself.
-
-@section Directives
-
-This section details the rate monotonic manager's
-directives. A subsection is dedicated to each of this manager's
-directives and describes the calling sequence, related
-constants, usage, and status codes.
-
-@c
-@c
-@c
-@page
-@subsection RATE_MONOTONIC_CREATE - Create a rate monotonic period
-
-@cindex create a period
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_rate_monotonic_create
-@example
-rtems_status_code rtems_rate_monotonic_create(
- rtems_name name,
- rtems_id *id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Rate_Monotonic_Create (
- Name : in RTEMS.Name;
- ID : out RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - rate monotonic period created successfully@*
-@code{@value{RPREFIX}INVALID_NAME} - invalid period name@*
-@code{@value{RPREFIX}TOO_MANY} - too many periods created
-
-@subheading DESCRIPTION:
-
-This directive creates a rate monotonic period. The
-assigned rate monotonic id is returned in id. This id is used
-to access the period with other rate monotonic manager
-directives. For control and maintenance of the rate monotonic
-period, RTEMS allocates a PCB from the local PCB free pool and
-initializes it.
-
-@subheading NOTES:
-
-This directive will not cause the calling task to be
-preempted.
-
-@c
-@c
-@c
-@page
-@subsection RATE_MONOTONIC_IDENT - Get ID of a period
-
-@cindex get ID of a period
-@cindex obtain ID of a period
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_rate_monotonic_ident
-@example
-rtems_status_code rtems_rate_monotonic_ident(
- rtems_name name,
- rtems_id *id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Rate_Monotonic_Ident (
- Name : in RTEMS.Name;
- ID : out RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - period identified successfully@*
-@code{@value{RPREFIX}INVALID_NAME} - period name not found
-
-@subheading DESCRIPTION:
-
-This directive obtains the period id associated with
-the period name to be acquired. If the period name is not
-unique, then the period id will match one of the periods with
-that name. However, this period id is not guaranteed to
-correspond to the desired period. The period id is used to
-access this period in other rate monotonic manager directives.
-
-@subheading NOTES:
-
-This directive will not cause the running task to be
-preempted.
-
-@c
-@c
-@c
-@page
-@subsection RATE_MONOTONIC_CANCEL - Cancel a period
-
-@cindex cancel a period
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_rate_monotonic_cancel
-@example
-rtems_status_code rtems_rate_monotonic_cancel(
- rtems_id id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Rate_Monotonic_Cancel (
- ID : in RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - period canceled successfully@*
-@code{@value{RPREFIX}INVALID_ID} - invalid rate monotonic period id@*
-@code{@value{RPREFIX}NOT_OWNER_OF_RESOURCE} - rate monotonic period not created by calling task
-
-@subheading DESCRIPTION:
-
-This directive cancels the rate monotonic period id.
-This period will be reinitiated by the next invocation of
-@code{@value{DIRPREFIX}rate_monotonic_period} with id.
-
-@subheading NOTES:
-
-This directive will not cause the running task to be
-preempted.
-
-The rate monotonic period specified by id must have
-been created by the calling task.
-
-@c
-@c
-@c
-@page
-@subsection RATE_MONOTONIC_DELETE - Delete a rate monotonic period
-
-@cindex delete a period
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_rate_monotonic_delete
-@example
-rtems_status_code rtems_rate_monotonic_delete(
- rtems_id id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Rate_Monotonic_Delete (
- ID : in RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - period deleted successfully@*
-@code{@value{RPREFIX}INVALID_ID} - invalid rate monotonic period id
-
-@subheading DESCRIPTION:
-
-This directive deletes the rate monotonic period
-specified by id. If the period is running, it is automatically
-canceled. The PCB for the deleted period is reclaimed by RTEMS.
-
-@subheading NOTES:
-
-This directive will not cause the running task to be
-preempted.
-
-A rate monotonic period can be deleted by a task
-other than the task which created the period.
-
-@c
-@c
-@c
-@page
-@subsection RATE_MONOTONIC_PERIOD - Conclude current/Start next period
-
-@cindex conclude current period
-@cindex start current period
-@cindex period initiation
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_rate_monotonic_period
-@example
-rtems_status_code rtems_rate_monotonic_period(
- rtems_id id,
- rtems_interval length
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Rate_Monotonic_Period (
- ID : in RTEMS.ID;
- Length : in RTEMS.Interval;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - period initiated successfully@*
-@code{@value{RPREFIX}INVALID_ID} - invalid rate monotonic period id@*
-@code{@value{RPREFIX}NOT_OWNER_OF_RESOURCE} - period not created by calling task@*
-@code{@value{RPREFIX}NOT_DEFINED} - period has never been initiated (only
-possible when period is set to PERIOD_STATUS)@*
-@code{@value{RPREFIX}TIMEOUT} - period has expired
-
-@subheading DESCRIPTION:
-
-This directive initiates the rate monotonic period id
-with a length of period ticks. If id is running, then the
-calling task will block for the remainder of the period before
-reinitiating the period with the specified period. If id was
-not running (either expired or never initiated), the period is
-immediately initiated and the directive returns immediately.
-
-If invoked with a period of @code{@value{RPREFIX}PERIOD_STATUS} ticks, the
-current state of id will be returned. The directive status
-indicates the current state of the period. This does not alter
-the state or period of the period.
-
-@subheading NOTES:
-
-This directive will not cause the running task to be preempted.
-
-@c
-@c
-@c
-@page
-@subsection RATE_MONOTONIC_GET_STATUS - Obtain status from a period
-
-@cindex get status of period
-@cindex obtain status of period
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_rate_monotonic_get_status
-@example
-rtems_status_code rtems_rate_monotonic_get_status(
- rtems_id id,
- rtems_rate_monotonic_period_status *status
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Rate_Monotonic_Get_Status (
- ID : in RTEMS.ID;
- Status : out RTEMS.Rate_Monotonic_Period_Status;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - period initiated successfully@*
-@code{@value{RPREFIX}INVALID_ID} - invalid rate monotonic period id@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - invalid address of status@*
-
-@subheading DESCRIPTION:
-
-This directive returns status information associated with
-the rate monotonic period id in the following data @value{STRUCTURE}:
-
-@ifset is-C
-@findex rtems_rate_monotonic_period_status
-@example
-typedef struct @{
- rtems_id owner;
- rtems_rate_monotonic_period_states state;
- rtems_rate_monotonic_period_time_t since_last_period;
- rtems_thread_cpu_usage_t executed_since_last_period;
-@} rtems_rate_monotonic_period_status;
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-type Rate_Monotonic_Period_Status is
- begin
- Owner : RTEMS.ID;
- State : RTEMS.Rate_Monotonic_Period_States;
- Since_Last_Period : RTEMS.Unsigned32;
- Executed_Since_Last_Period : RTEMS.Unsigned32;
- end record;
-@end example
-@end ifset
-
-@c RATE_MONOTONIC_INACTIVE does not have RTEMS_ in front of it.
-
-A configure time option can be used to select whether the time information is
-given in ticks or seconds and nanoseconds. The default is seconds and
-nanoseconds. If the period's state is @code{RATE_MONOTONIC_INACTIVE}, both
-time values will be set to 0. Otherwise, both time values will contain
-time information since the last invocation of the
-@code{@value{DIRPREFIX}rate_monotonic_period} directive. More
-specifically, the (ticks_)since_last_period value contains the elapsed time
-which has occurred since the last invocation of the
-@code{@value{DIRPREFIX}rate_monotonic_period} directive and the
-(ticks_)executed_since_last_period contains how much processor time the
-owning task has consumed since the invocation of the
-@code{@value{DIRPREFIX}rate_monotonic_period} directive.
-
-@subheading NOTES:
-
-This directive will not cause the running task to be preempted.
-
-@c
-@c
-@c
-@page
-@subsection RATE_MONOTONIC_GET_STATISTICS - Obtain statistics from a period
-
-@cindex get statistics of period
-@cindex obtain statistics of period
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_rate_monotonic_get_statistics
-@example
-rtems_status_code rtems_rate_monotonic_get_statistics(
- rtems_id id,
- rtems_rate_monotonic_period_statistics *statistics
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-NOT SUPPORTED FROM Ada BINDING
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - period initiated successfully@*
-@code{@value{RPREFIX}INVALID_ID} - invalid rate monotonic period id@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - invalid address of statistics@*
-
-@subheading DESCRIPTION:
-
-This directive returns statistics information associated with
-the rate monotonic period id in the following data @value{STRUCTURE}:
-
-@ifset is-C
-@findex rtems_rate_monotonic_period_statistics
-@example
-typedef struct @{
- uint32_t count;
- uint32_t missed_count;
- #ifdef RTEMS_ENABLE_NANOSECOND_CPU_USAGE_STATISTICS
- struct timespec min_cpu_time;
- struct timespec max_cpu_time;
- struct timespec total_cpu_time;
- #else
- uint32_t min_cpu_time;
- uint32_t max_cpu_time;
- uint32_t total_cpu_time;
- #endif
- #ifdef RTEMS_ENABLE_NANOSECOND_RATE_MONOTONIC_STATISTICS
- struct timespec min_wall_time;
- struct timespec max_wall_time;
- struct timespec total_wall_time;
- #else
- uint32_t min_wall_time;
- uint32_t max_wall_time;
- uint32_t total_wall_time;
- #endif
-@} rtems_rate_monotonic_period_statistics;
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-NOT SUPPORTED FROM Ada BINDING
-@end example
-@end ifset
-
-This directive returns the current statistics information for
-the period instance assocaited with @code{id}. The information
-returned is indicated by the structure above.
-
-@subheading NOTES:
-
-This directive will not cause the running task to be preempted.
-
-@c
-@c
-@c
-@page
-@subsection RATE_MONOTONIC_RESET_STATISTICS - Reset statistics for a period
-
-@cindex reset statistics of period
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_rate_monotonic_reset_statistics
-@example
-rtems_status_code rtems_rate_monotonic_reset_statistics(
- rtems_id id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Rate_Monotonic_Reset_Statistics (
- ID : in RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - period initiated successfully@*
-@code{@value{RPREFIX}INVALID_ID} - invalid rate monotonic period id@*
-
-@subheading DESCRIPTION:
-
-This directive resets the statistics information associated with
-this rate monotonic period instance.
-
-@subheading NOTES:
-
-This directive will not cause the running task to be preempted.
-
-@c
-@c
-@c
-@page
-@subsection RATE_MONOTONIC_RESET_ALL_STATISTICS - Reset statistics for all periods
-
-@cindex reset statistics of all periods
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_rate_monotonic_reset_all_statistics
-@example
-void rtems_rate_monotonic_reset_all_statistics(void);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Rate_Monotonic_Reset_All_Statistics;
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-NONE
-
-@subheading DESCRIPTION:
-
-This directive resets the statistics information associated with
-all rate monotonic period instances.
-
-@subheading NOTES:
-
-This directive will not cause the running task to be preempted.
-
-@c
-@c
-@c
-@page
-@subsection RATE_MONOTONIC_REPORT_STATISTICS - Print period statistics report
-
-@cindex print period statistics report
-@cindex period statistics report
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_rate_monotonic_report_statistics
-@example
-void rtems_rate_monotonic_report_statistics(void);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Rate_Monotonic_Report_Statistics;
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-NONE
-
-@subheading DESCRIPTION:
-
-This directive prints a report on all active periods which have
-executed at least one period. The following is an example of the
-output generated by this directive.
-
-@ifset is-C
-@findex rtems_rate_monotonic_period_statistics
-@example
- ID OWNER PERIODS MISSED CPU TIME WALL TIME
- MIN/MAX/AVG MIN/MAX/AVG
-0x42010001 TA1 502 0 0/1/0.99 0/0/0.00
-0x42010002 TA2 502 0 0/1/0.99 0/0/0.00
-0x42010003 TA3 501 0 0/1/0.99 0/0/0.00
-0x42010004 TA4 501 0 0/1/0.99 0/0/0.00
-0x42010005 TA5 10 0 0/1/0.90 0/0/0.00
-@end example
-@end ifset
-
-@subheading NOTES:
-
-This directive will not cause the running task to be preempted.
diff --git a/doc/user/schedule.t b/doc/user/schedule.t
deleted file mode 100644
index 3742038095..0000000000
--- a/doc/user/schedule.t
+++ /dev/null
@@ -1,512 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2011.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Scheduling Concepts
-
-@cindex scheduling
-@cindex task scheduling
-
-@section Introduction
-
-The concept of scheduling in real-time systems dictates the ability to
-provide immediate response to specific external events, particularly
-the necessity of scheduling tasks to run within a specified time limit
-after the occurrence of an event. For example, software embedded in
-life-support systems used to monitor hospital patients must take instant
-action if a change in the patient's status is detected.
-
-The component of RTEMS responsible for providing this capability is
-appropriately called the scheduler. The scheduler's sole purpose is
-to allocate the all important resource of processor time to the various
-tasks competing for attention.
-
-@section Scheduling Algorithms
-
-@cindex scheduling algorithms
-
-RTEMS provides a plugin framework which allows it to support
-multiple scheduling algorithms. RTEMS now includes multiple
-scheduling algorithms in the SuperCore and the user can select which
-of these they wish to use in their application. In addition,
-the user can implement their own scheduling algorithm and
-configure RTEMS to use it.
-
-Supporting multiple scheduling algorithms gives the end user the
-option to select the algorithm which is most appropriate to their use
-case. Most real-time operating systems schedule tasks using a priority
-based algorithm, possibly with preemption control. The classic
-RTEMS scheduling algorithm which was the only algorithm available
-in RTEMS 4.10 and earlier, is a priority based scheduling algorithm.
-This scheduling algoritm is suitable for single core (e.g. non-SMP)
-systems and is now known as the @b{Deterministic Priority Scheduler}.
-Unless the user configures another scheduling algorithm, RTEMS will use
-this on single core systems.
-
-@subsection Priority Scheduling
-
-@cindex priority scheduling
-
-When using priority based scheduling, RTEMS allocates the processor using
-a priority-based, preemptive algorithm augmented to provide round-robin
-characteristics within individual priority groups. The goal of this
-algorithm is to guarantee that the task which is executing on the
-processor at any point in time is the one with the highest priority
-among all tasks in the ready state.
-
-When a task is added to the ready chain, it is placed behind all other
-tasks of the same priority. This rule provides a round-robin within
-priority group scheduling characteristic. This means that in a group of
-equal priority tasks, tasks will execute in the order they become ready
-or FIFO order. Even though there are ways to manipulate and adjust task
-priorities, the most important rule to remember is:
-
-@itemize @code{ }
-@item @b{Priority based scheduling algorithms will always select the
-highest priority task that is ready to run when allocating the processor
-to a task.}
-@end itemize
-
-Priority scheduling is the most commonly used scheduling algorithm.
-It should be used by applications in which multiple tasks contend for
-CPU time or other resources and there is a need to ensure certain tasks
-are given priority over other tasks.
-
-There are a few common methods of accomplishing the mechanics of this
-algorithm. These ways involve a list or chain of tasks in the ready state.
-
-@itemize @bullet
-@item The least efficient method is to randomly place tasks in the ready
-chain forcing the scheduler to scan the entire chain to determine which
-task receives the processor.
-
-@item A more efficient method is to schedule the task by placing it
-in the proper place on the ready chain based on the designated scheduling
-criteria at the time it enters the ready state. Thus, when the processor
-is free, the first task on the ready chain is allocated the processor.
-
-@item Another mechanism is to maintain a list of FIFOs per priority.
-When a task is readied, it is placed on the rear of the FIFO for its
-priority. This method is often used with a bitmap to assist in locating
-which FIFOs have ready tasks on them.
-
-@end itemize
-RTEMS currently includes multiple priority based scheduling algorithms
-as well as other algorithms which incorporate deadline. Each algorithm
-is discussed in the following sections.
-
-@subsection Deterministic Priority Scheduler
-
-This is the scheduler implementation which has always been in RTEMS.
-After the 4.10 release series, it was factored into pluggable scheduler
-selection. It schedules tasks using a priority based algorithm which
-takes into account preemption. It is implemented using an array of FIFOs
-with a FIFO per priority. It maintains a bitmap which is used to track
-which priorities have ready tasks.
-
-This algorithm is deterministic (e.g. predictable and fixed) in execution
-time. This comes at the cost of using slightly over three (3) kilobytes
-of RAM on a system configured to support 256 priority levels.
-
-This scheduler is only aware of a single core.
-
-@subsection Simple Priority Scheduler
-
-This scheduler implementation has the same behaviour as the Deterministic
-Priority Scheduler but uses only one linked list to manage all ready
-tasks. When a task is readied, a linear search of that linked list is
-performed to determine where to insert the newly readied task.
-
-This algorithm uses much less RAM than the Deterministic Priority
-Scheduler but is @i{O(n)} where @i{n} is the number of ready tasks.
-In a small system with a small number of tasks, this will not be a
-performance issue. Reducing RAM consumption is often critical in small
-systems which are incapable of supporting a large number of tasks.
-
-This scheduler is only aware of a single core.
-
-@subsection Simple SMP Priority Scheduler
-
-This scheduler is based upon the Simple Priority Scheduler and is designed
-to have the same behaviour on a single core system. But this scheduler
-is capable of scheduling threads across multiple cores in an SMP system.
-When given a choice of replacing one of two threads at equal priority
-on different cores, this algorithm favors replacing threads which are
-preemptible and have executed the longest.
-
-This algorithm is non-deterministic. When scheduling, it must consider
-which tasks are to be executed on each core while avoiding superfluous
-task migrations.
-
-@subsection Earliest Deadline First Scheduler
-
-@cindex earliest deadline first scheduling
-
-This is an alternative scheduler in RTEMS for single core applications.
-The primary EDF advantage is high total CPU utilization (theoretically
-up to 100%). It assumes that tasks have priorities equal to deadlines.
-
-This EDF is initially preemptive, however, individual tasks may be declared
-not-preemptive. Deadlines are declared using only Rate Monotonic manager which
-goal is to handle periodic behavior. Period is always equal to deadline. All
-ready tasks reside in a single ready queue implemented using a red-black tree.
-
-This implementation of EDF schedules two different types of task
-priority types while each task may switch between the two types within
-its execution. If a task does have a deadline declared using the Rate
-Monotonic manager, the task is deadline-driven and its priority is equal
-to deadline. On the contrary if a task does not have any deadline or
-the deadline is cancelled using the Rate Monotonic manager, the task is
-considered a background task with priority equal to that assigned
-upon initialization in the same manner as for priority scheduler. Each
-background task is of a lower importance than each deadline-driven one
-and is scheduled when no deadline-driven task and no higher priority
-background task is ready to run.
-
-Every deadline-driven scheduling algorithm requires means for tasks
-to claim a deadline. The Rate Monotonic Manager is responsible for
-handling periodic execution. In RTEMS periods are equal to deadlines,
-thus if a task announces a period, it has to be finished until the
-end of this period. The call of @code{rtems_rate_monotonic_period}
-passes the scheduler the length of oncoming deadline. Moreover, the
-@code{rtems_rate_monotonic_cancel} and @code{rtems_rate_monotonic_delete}
-calls clear the deadlines assigned to the task.
-
-@subsection Constant Bandwidth Server Scheduling (CBS)
-
-@cindex constant bandwidth server scheduling
-
-This is an alternative scheduler in RTEMS for single core applications.
-The CBS is a budget aware extension of EDF scheduler. The main goal of this
-scheduler is to ensure temporal isolation of tasks meaning that a task's
-execution in terms of meeting deadlines must not be influenced by other
-tasks as if they were run on multiple independent processors.
-
-Each task can be assigned a server (current implementation supports only
-one task per server). The server is characterized by period (deadline)
-and computation time (budget). The ratio budget/period yields bandwidth,
-which is the fraction of CPU to be reserved by the scheduler for each
-subsequent period.
-
-The CBS is equipped with a set of rules applied to tasks attached to servers
-ensuring that deadline miss because of another task cannot occur.
-In case a task breaks one of the rules, its priority is pulled to background
-until the end of its period and then restored again. The rules are:
-
-@itemize @bullet
-@item Task cannot exceed its registered budget, @item Task cannot be
-unblocked when a ratio between remaining budget and remaining deadline
-is higher than declared bandwidth.
-@end itemize
-
-The CBS provides an extensive API. Unlike EDF, the
-@code{rtems_rate_monotonic_period} does not declare a deadline because
-it is carried out using CBS API. This call only announces next period.
-
-@section Scheduling Modification Mechanisms
-
-@cindex scheduling mechanisms
-
-RTEMS provides four mechanisms which allow the user to alter the task
-scheduling decisions:
-
-@itemize @bullet
-@item user-selectable task priority level
-@item task preemption control
-@item task timeslicing control
-@item manual round-robin selection
-@end itemize
-
-Each of these methods provides a powerful capability to customize sets
-of tasks to satisfy the unique and particular requirements encountered
-in custom real-time applications. Although each mechanism operates
-independently, there is a precedence relationship which governs the
-effects of scheduling modifications. The evaluation order for scheduling
-characteristics is always priority, preemption mode, and timeslicing.
-When reading the descriptions of timeslicing and manual round-robin
-it is important to keep in mind that preemption (if enabled) of a task
-by higher priority tasks will occur as required, overriding the other
-factors presented in the description.
-
-@subsection Task Priority and Scheduling
-
-@cindex task priority
-
-The most significant task scheduling modification mechanism is the ability
-for the user to assign a priority level to each individual task when it
-is created and to alter a task's priority at run-time. RTEMS supports
-up to 255 priority levels. Level 255 is the lowest priority and level
-1 is the highest.
-
-@subsection Preemption
-@cindex preemption
-
-Another way the user can alter the basic scheduling algorithm is by
-manipulating the preemption mode flag (@code{@value{RPREFIX}PREEMPT_MASK})
-of individual tasks. If preemption is disabled for a task
-(@code{@value{RPREFIX}NO_PREEMPT}), then the task will not relinquish
-control of the processor until it terminates, blocks, or re-enables
-preemption. Even tasks which become ready to run and possess higher
-priority levels will not be allowed to execute. Note that the preemption
-setting has no effect on the manner in which a task is scheduled.
-It only applies once a task has control of the processor.
-
-@subsection Timeslicing
-@cindex timeslicing
-@cindex round robin scheduling
-
-Timeslicing or round-robin scheduling is an additional method which
-can be used to alter the basic scheduling algorithm. Like preemption,
-timeslicing is specified on a task by task basis using the timeslicing
-mode flag (@code{@value{RPREFIX}TIMESLICE_MASK}). If timeslicing is
-enabled for a task (@code{@value{RPREFIX}TIMESLICE}), then RTEMS will
-limit the amount of time the task can execute before the processor is
-allocated to another task. Each tick of the real-time clock reduces
-the currently running task's timeslice. When the execution time equals
-the timeslice, RTEMS will dispatch another task of the same priority
-to execute. If there are no other tasks of the same priority ready to
-execute, then the current task is allocated an additional timeslice and
-continues to run. Remember that a higher priority task will preempt
-the task (unless preemption is disabled) as soon as it is ready to run,
-even if the task has not used up its entire timeslice.
-
-@subsection Manual Round-Robin
-@cindex manual round robin
-
-The final mechanism for altering the RTEMS scheduling algorithm is
-called manual round-robin. Manual round-robin is invoked by using the
-@code{@value{DIRPREFIX}task_wake_after} directive with a time interval
-of @code{@value{RPREFIX}YIELD_PROCESSOR}. This allows a task to give
-up the processor and be immediately returned to the ready chain at the
-end of its priority group. If no other tasks of the same priority are
-ready to run, then the task does not lose control of the processor.
-
-@section Dispatching Tasks
-@cindex dispatching
-
-The dispatcher is the RTEMS component responsible for
-allocating the processor to a ready task. In order to allocate
-the processor to one task, it must be deallocated or retrieved
-from the task currently using it. This involves a concept
-called a context switch. To perform a context switch, the
-dispatcher saves the context of the current task and restores
-the context of the task which has been allocated to the
-processor. Saving and restoring a task's context is the
-storing/loading of all the essential information about a task to
-enable it to continue execution without any effects of the
-interruption. For example, the contents of a task's register
-set must be the same when it is given the processor as they were
-when it was taken away. All of the information that must be
-saved or restored for a context switch is located either in the
-TCB or on the task's stacks.
-
-Tasks that utilize a numeric coprocessor and are created with the
-@code{@value{RPREFIX}FLOATING_POINT} attribute require additional
-operations during a context switch. These additional operations
-are necessary to save and restore the floating point context of
-@code{@value{RPREFIX}FLOATING_POINT} tasks. To avoid unnecessary save
-and restore operations, the state of the numeric coprocessor is only
-saved when a @code{@value{RPREFIX}FLOATING_POINT} task is dispatched
-and that task was not the last task to utilize the coprocessor.
-
-@section Task State Transitions
-@cindex task state transitions
-
-Tasks in an RTEMS system must always be in one of the
-five allowable task states. These states are: executing, ready,
-blocked, dormant, and non-existent.
-
-A task occupies the non-existent state before
-a @code{@value{DIRPREFIX}task_create} has been issued on its behalf.
-A task enters the non-existent state from any other state in the system
-when it is deleted with the @code{@value{DIRPREFIX}task_delete} directive.
-While a task occupies this state it does not have a TCB or a task ID
-assigned to it; therefore, no other tasks in the system may reference
-this task.
-
-When a task is created via the @code{@value{DIRPREFIX}task_create}
-directive it enters the dormant state. This state is not entered through
-any other means. Although the task exists in the system, it cannot
-actively compete for system resources. It will remain in the dormant
-state until it is started via the @code{@value{DIRPREFIX}task_start}
-directive, at which time it enters the ready state. The task is now
-permitted to be scheduled for the processor and to compete for other
-system resources.
-
-@float Figure,fig:RTEMS-Task-States
-@caption{RTEMS Task States}
-
-@ifset use-ascii
-@example
-@group
- +-------------------------------------------------------------+
- | Non-existent |
- | +-------------------------------------------------------+ |
- | | | |
- | | | |
- | | Creating +---------+ Deleting | |
- | | -------------------> | Dormant | -------------------> | |
- | | +---------+ | |
- | | | | |
- | | Starting | | |
- | | | | |
- | | V Deleting | |
- | | +-------> +-------+ -------------------> | |
- | | Yielding / +----- | Ready | ------+ | |
- | | / / +-------+ <--+ \ | |
- | | / / \ \ Blocking | |
- | | / / Dispatching Readying \ \ | |
- | | / V \ V | |
- | | +-----------+ Blocking +---------+ | |
- | | | Executing | --------------> | Blocked | | |
- | | +-----------+ +---------+ | |
- | | | |
- | | | |
- | +-------------------------------------------------------+ |
- | Non-existent |
- +-------------------------------------------------------------+
-@end group
-@end example
-@end ifset
-
-@ifset use-tex
-@c @page
-@example
-@center{@image{states,,3in,RTEMS Task States}}
-@end example
-@end ifset
-
-@ifset use-html
-@html
-<IMG SRC="states.png" WIDTH=550 HEIGHT=400 ALT="RTEMS Task States">
-@end html
-@end ifset
-@end float
-
-A task occupies the blocked state whenever it is unable to be scheduled
-to run. A running task may block itself or be blocked by other tasks in
-the system. The running task blocks itself through voluntary operations
-that cause the task to wait. The only way a task can block a task other
-than itself is with the @code{@value{DIRPREFIX}task_suspend} directive.
-A task enters the blocked state due to any of the following conditions:
-
-@itemize @bullet
-@item A task issues a @code{@value{DIRPREFIX}task_suspend} directive
-which blocks either itself or another task in the system.
-
-@item The running task issues a @code{@value{DIRPREFIX}barrier_wait}
-directive.
-
-@item The running task issues a @code{@value{DIRPREFIX}message_queue_receive}
-directive with the wait option and the message queue is empty.
-
-@item The running task issues an @code{@value{DIRPREFIX}event_receive}
-directive with the wait option and the currently pending events do not
-satisfy the request.
-
-@item The running task issues a @code{@value{DIRPREFIX}semaphore_obtain}
-directive with the wait option and the requested semaphore is unavailable.
-
-@item The running task issues a @code{@value{DIRPREFIX}task_wake_after}
-directive which blocks the task for the given time interval. If the time
-interval specified is zero, the task yields the processor and remains
-in the ready state.
-
-@item The running task issues a @code{@value{DIRPREFIX}task_wake_when}
-directive which blocks the task until the requested date and time arrives.
-
-@item The running task issues a @code{@value{DIRPREFIX}rate_monotonic_period}
-directive and must wait for the specified rate monotonic period
-to conclude.
-
-@item The running task issues a @code{@value{DIRPREFIX}region_get_segment}
-directive with the wait option and there is not an available segment large
-enough to satisfy the task's request.
-
-@end itemize
-
-A blocked task may also be suspended. Therefore, both the suspension
-and the blocking condition must be removed before the task becomes ready
-to run again.
-
-A task occupies the ready state when it is able to be scheduled to run,
-but currently does not have control of the processor. Tasks of the same
-or higher priority will yield the processor by either becoming blocked,
-completing their timeslice, or being deleted. All tasks with the same
-priority will execute in FIFO order. A task enters the ready state due
-to any of the following conditions:
-
-@itemize @bullet
-
-@item A running task issues a @code{@value{DIRPREFIX}task_resume}
-directive for a task that is suspended and the task is not blocked
-waiting on any resource.
-
-@item A running task issues a @code{@value{DIRPREFIX}message_queue_send},
-@code{@value{DIRPREFIX}message_queue_broadcast}, or a
-@code{@value{DIRPREFIX}message_queue_urgent} directive
-which posts a message to the queue on which the blocked task is
-waiting.
-
-@item A running task issues an @code{@value{DIRPREFIX}event_send}
-directive which sends an event condition to a task which is blocked
-waiting on that event condition.
-
-@item A running task issues a @code{@value{DIRPREFIX}semaphore_release}
-directive which releases the semaphore on which the blocked task is
-waiting.
-
-@item A timeout interval expires for a task which was blocked
-by a call to the @code{@value{DIRPREFIX}task_wake_after} directive.
-
-@item A timeout period expires for a task which blocked by a
-call to the @code{@value{DIRPREFIX}task_wake_when} directive.
-
-@item A running task issues a @code{@value{DIRPREFIX}region_return_segment}
-directive which releases a segment to the region on which the blocked task
-is waiting and a resulting segment is large enough to satisfy
-the task's request.
-
-@item A rate monotonic period expires for a task which blocked
-by a call to the @code{@value{DIRPREFIX}rate_monotonic_period} directive.
-
-@item A timeout interval expires for a task which was blocked
-waiting on a message, event, semaphore, or segment with a
-timeout specified.
-
-@item A running task issues a directive which deletes a
-message queue, a semaphore, or a region on which the blocked
-task is waiting.
-
-@item A running task issues a @code{@value{DIRPREFIX}task_restart}
-directive for the blocked task.
-
-@item The running task, with its preemption mode enabled, may
-be made ready by issuing any of the directives that may unblock
-a task with a higher priority. This directive may be issued
-from the running task itself or from an ISR.
-
-A ready task occupies the executing state when it has
-control of the CPU. A task enters the executing state due to
-any of the following conditions:
-
-@item The task is the highest priority ready task in the
-system.
-
-@item The running task blocks and the task is next in the
-scheduling queue. The task may be of equal priority as in
-round-robin scheduling or the task may possess the highest
-priority of the remaining ready tasks.
-
-@item The running task may reenable its preemption mode and a
-task exists in the ready queue that has a higher priority than
-the running task.
-
-@item The running task lowers its own priority and another
-task is of higher priority as a result.
-
-@item The running task raises the priority of a task above its
-own and the running task is in preemption mode.
-
-@end itemize
diff --git a/doc/user/sem.t b/doc/user/sem.t
deleted file mode 100644
index 210f1d0d92..0000000000
--- a/doc/user/sem.t
+++ /dev/null
@@ -1,1080 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2007.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Semaphore Manager
-
-@cindex semaphores
-@cindex binary semaphores
-@cindex counting semaphores
-@cindex mutual exclusion
-
-@section Introduction
-
-The semaphore manager utilizes standard Dijkstra
-counting semaphores to provide synchronization and mutual
-exclusion capabilities. The directives provided by the
-semaphore manager are:
-
-@itemize @bullet
-@item @code{@value{DIRPREFIX}semaphore_create} - Create a semaphore
-@item @code{@value{DIRPREFIX}semaphore_ident} - Get ID of a semaphore
-@item @code{@value{DIRPREFIX}semaphore_delete} - Delete a semaphore
-@item @code{@value{DIRPREFIX}semaphore_obtain} - Acquire a semaphore
-@item @code{@value{DIRPREFIX}semaphore_release} - Release a semaphore
-@item @code{@value{DIRPREFIX}semaphore_flush} - Unblock all tasks waiting on a semaphore
-@item @code{@value{DIRPREFIX}semaphore_set_priority} - Set priority by
-scheduler for a semaphore
-@end itemize
-
-@section Background
-
-A semaphore can be viewed as a protected variable
-whose value can be modified only with the
-@code{@value{DIRPREFIX}semaphore_create},
-@code{@value{DIRPREFIX}semaphore_obtain}, and
-@code{@value{DIRPREFIX}semaphore_release} directives. RTEMS
-supports both binary and counting semaphores. A binary semaphore
-is restricted to values of zero or one, while a counting
-semaphore can assume any non-negative integer value.
-
-A binary semaphore can be used to control access to a
-single resource. In particular, it can be used to enforce
-mutual exclusion for a critical section in user code. In this
-instance, the semaphore would be created with an initial count
-of one to indicate that no task is executing the critical
-section of code. Upon entry to the critical section, a task
-must issue the @code{@value{DIRPREFIX}semaphore_obtain}
-directive to prevent other tasks from entering the critical section.
-Upon exit from the critical section, the task must issue the
-@code{@value{DIRPREFIX}semaphore_release} directive to
-allow another task to execute the critical section.
-
-A counting semaphore can be used to control access to
-a pool of two or more resources. For example, access to three
-printers could be administered by a semaphore created with an
-initial count of three. When a task requires access to one of
-the printers, it issues the @code{@value{DIRPREFIX}semaphore_obtain}
-directive to obtain access to a printer. If a printer is not currently
-available, the task can wait for a printer to become available or return
-immediately. When the task has completed printing, it should
-issue the @code{@value{DIRPREFIX}semaphore_release}
-directive to allow other tasks access to the printer.
-
-Task synchronization may be achieved by creating a
-semaphore with an initial count of zero. One task waits for the
-arrival of another task by issuing a @code{@value{DIRPREFIX}semaphore_obtain}
-directive when it reaches a synchronization point. The other task
-performs a corresponding @code{@value{DIRPREFIX}semaphore_release}
-operation when it reaches its synchronization point, thus unblocking
-the pending task.
-
-@subsection Nested Resource Access
-
-Deadlock occurs when a task owning a binary semaphore
-attempts to acquire that same semaphore and blocks as result.
-Since the semaphore is allocated to a task, it cannot be
-deleted. Therefore, the task that currently holds the semaphore
-and is also blocked waiting for that semaphore will never
-execute again.
-
-RTEMS addresses this problem by allowing the task
-holding the binary semaphore to obtain the same binary semaphore
-multiple times in a nested manner. Each
-@code{@value{DIRPREFIX}semaphore_obtain} must be accompanied with a
-@code{@value{DIRPREFIX}semaphore_release}. The semaphore will
-only be made available for acquisition by other tasks when the
-outermost @code{@value{DIRPREFIX}semaphore_obtain} is matched with
-a @code{@value{DIRPREFIX}semaphore_release}.
-
-Simple binary semaphores do not allow nested access and so can be used for task synchronization.
-
-
-@subsection Priority Inversion
-
-Priority inversion is a form of indefinite
-postponement which is common in multitasking, preemptive
-executives with shared resources. Priority inversion occurs
-when a high priority tasks requests access to shared resource
-which is currently allocated to low priority task. The high
-priority task must block until the low priority task releases
-the resource. This problem is exacerbated when the low priority
-task is prevented from executing by one or more medium priority
-tasks. Because the low priority task is not executing, it
-cannot complete its interaction with the resource and release
-that resource. The high priority task is effectively prevented
-from executing by lower priority tasks.
-
-@subsection Priority Inheritance
-
-Priority inheritance is an algorithm that calls for
-the lower priority task holding a resource to have its priority
-increased to that of the highest priority task blocked waiting
-for that resource. Each time a task blocks attempting to obtain
-the resource, the task holding the resource may have its
-priority increased.
-
-On SMP configurations, in case the task holding the resource and the task that
-blocks attempting to obtain the resource are in different scheduler instances,
-the priority of the holder is raised to the pseudo-interrupt priority (priority
-boosting). The pseudo-interrupt priority is the highest priority.
-
-RTEMS supports priority inheritance for local, binary
-semaphores that use the priority task wait queue blocking
-discipline. When a task of higher priority than the task
-holding the semaphore blocks, the priority of the task holding
-the semaphore is increased to that of the blocking task. When
-the task holding the task completely releases the binary
-semaphore (i.e. not for a nested release), the holder's priority
-is restored to the value it had before any higher priority was
-inherited.
-
-The RTEMS implementation of the priority inheritance
-algorithm takes into account the scenario in which a task holds
-more than one binary semaphore. The holding task will execute
-at the priority of the higher of the highest ceiling priority or
-at the priority of the highest priority task blocked waiting for
-any of the semaphores the task holds. Only when the task
-releases ALL of the binary semaphores it holds will its priority
-be restored to the normal value.
-
-@subsection Priority Ceiling
-
-Priority ceiling is an algorithm that calls for the
-lower priority task holding a resource to have its priority
-increased to that of the highest priority task which will EVER
-block waiting for that resource. This algorithm addresses the
-problem of priority inversion although it avoids the possibility
-of changing the priority of the task holding the resource
-multiple times. The priority ceiling algorithm will only change
-the priority of the task holding the resource a maximum of one
-time. The ceiling priority is set at creation time and must be
-the priority of the highest priority task which will ever
-attempt to acquire that semaphore.
-
-RTEMS supports priority ceiling for local, binary
-semaphores that use the priority task wait queue blocking
-discipline. When a task of lower priority than the ceiling
-priority successfully obtains the semaphore, its priority is
-raised to the ceiling priority. When the task holding the task
-completely releases the binary semaphore (i.e. not for a nested
-release), the holder's priority is restored to the value it had
-before any higher priority was put into effect.
-
-The need to identify the highest priority task which
-will attempt to obtain a particular semaphore can be a difficult
-task in a large, complicated system. Although the priority
-ceiling algorithm is more efficient than the priority
-inheritance algorithm with respect to the maximum number of task
-priority changes which may occur while a task holds a particular
-semaphore, the priority inheritance algorithm is more forgiving
-in that it does not require this apriori information.
-
-The RTEMS implementation of the priority ceiling
-algorithm takes into account the scenario in which a task holds
-more than one binary semaphore. The holding task will execute
-at the priority of the higher of the highest ceiling priority or
-at the priority of the highest priority task blocked waiting for
-any of the semaphores the task holds. Only when the task
-releases ALL of the binary semaphores it holds will its priority
-be restored to the normal value.
-
-@subsection Multiprocessor Resource Sharing Protocol
-
-The Multiprocessor Resource Sharing Protocol (MrsP) is defined in @cite{A.
-Burns and A.J. Wellings, A Schedulability Compatible Multiprocessor Resource
-Sharing Protocol - MrsP, Proceedings of the 25th Euromicro Conference on
-Real-Time Systems (ECRTS 2013), July 2013}. It is a generalization of the
-Priority Ceiling Protocol to SMP systems. Each MrsP semaphore uses a ceiling
-priority per scheduler instance. These ceiling priorities can be specified
-with @code{rtems_semaphore_set_priority()}. A task obtaining or owning a MrsP
-semaphore will execute with the ceiling priority for its scheduler instance as
-specified by the MrsP semaphore object. Tasks waiting to get ownership of a
-MrsP semaphore will not relinquish the processor voluntarily. In case the
-owner of a MrsP semaphore gets preempted it can ask all tasks waiting for this
-semaphore to help out and temporarily borrow the right to execute on one of
-their assigned processors.
-
-@subsection Building a Semaphore Attribute Set
-
-In general, an attribute set is built by a bitwise OR
-of the desired attribute components. The following table lists
-the set of valid semaphore attributes:
-
-@itemize @bullet
-@item @code{@value{RPREFIX}FIFO} - tasks wait by FIFO (default)
-
-@item @code{@value{RPREFIX}PRIORITY} - tasks wait by priority
-
-@item @code{@value{RPREFIX}BINARY_SEMAPHORE} - restrict values to
-0 and 1
-
-@item @code{@value{RPREFIX}COUNTING_SEMAPHORE} - no restriction on values
-(default)
-
-@item @code{@value{RPREFIX}SIMPLE_BINARY_SEMAPHORE} - restrict values to
-0 and 1, do not allow nested access, allow deletion of locked semaphore.
-
-@item @code{@value{RPREFIX}NO_INHERIT_PRIORITY} - do not use priority
-inheritance (default)
-
-@item @code{@value{RPREFIX}INHERIT_PRIORITY} - use priority inheritance
-
-@item @code{@value{RPREFIX}NO_PRIORITY_CEILING} - do not use priority
-ceiling (default)
-
-@item @code{@value{RPREFIX}PRIORITY_CEILING} - use priority ceiling
-
-@item @code{@value{RPREFIX}NO_MULTIPROCESSOR_RESOURCE_SHARING} - do not use
-Multiprocessor Resource Sharing Protocol (default)
-
-@item @code{@value{RPREFIX}MULTIPROCESSOR_RESOURCE_SHARING} - use
-Multiprocessor Resource Sharing Protocol
-
-@item @code{@value{RPREFIX}LOCAL} - local semaphore (default)
-
-@item @code{@value{RPREFIX}GLOBAL} - global semaphore
-@end itemize
-
-Attribute values are specifically designed to be
-mutually exclusive, therefore bitwise OR and addition operations
-are equivalent as long as each attribute appears exactly once in
-the component list. An attribute listed as a default is not
-required to appear in the attribute list, although it is a good
-programming practice to specify default attributes. If all
-defaults are desired, the attribute
-@code{@value{RPREFIX}DEFAULT_ATTRIBUTES} should be
-specified on this call.
-
-This example demonstrates the attribute_set parameter needed to create a
-local semaphore with the task priority waiting queue discipline. The
-attribute_set parameter passed to the
-@code{@value{DIRPREFIX}semaphore_create} directive could be either
-@code{@value{RPREFIX}PRIORITY} or @code{@value{RPREFIX}LOCAL @value{OR}
-@value{RPREFIX}PRIORITY}. The attribute_set parameter can be set to
-@code{@value{RPREFIX}PRIORITY} because @code{@value{RPREFIX}LOCAL} is the
-default for all created tasks. If a similar semaphore were to be known
-globally, then the attribute_set parameter would be
-@code{@value{RPREFIX}GLOBAL @value{OR} @value{RPREFIX}PRIORITY}.
-
-Some combinatinos of these attributes are invalid. For example, priority
-ordered blocking discipline must be applied to a binary semaphore in order
-to use either the priority inheritance or priority ceiling functionality.
-The following tree figure illustrates the valid combinations.
-
-@float Figure,fig:semaphore-attributes
-@caption{Valid Semaphore Attributes Combinations}
-
-@ifset use-ascii
-@example
-@group
-Not available in ASCII representation
-@end group
-@end example
-@end ifset
-
-@ifset use-tex
-@example
-@image{semaphore_attributes,5in,3.5in}
-@end example
-@end ifset
-
-@ifset use-html
-@html
-<IMG SRC="semaphore_attributes.png" WIDTH=550 HEIGHT=400 ALT="Valid Semaphore Attribute Combinations">
-@end html
-@end ifset
-@end float
-
-@subsection Building a SEMAPHORE_OBTAIN Option Set
-
-In general, an option is built by a bitwise OR of the
-desired option components. The set of valid options for the
-@code{@value{DIRPREFIX}semaphore_obtain} directive are listed
-in the following table:
-
-@itemize @bullet
-@item @code{@value{RPREFIX}WAIT} - task will wait for semaphore (default)
-@item @code{@value{RPREFIX}NO_WAIT} - task should not wait
-@end itemize
-
-Option values are specifically designed to be mutually exclusive,
-therefore bitwise OR and addition operations are equivalent as long as
-each attribute appears exactly once in the component list. An option
-listed as a default is not required to appear in the list, although it is
-a good programming practice to specify default options. If all defaults
-are desired, the option @code{@value{RPREFIX}DEFAULT_OPTIONS} should be
-specified on this call.
-
-This example demonstrates the option parameter needed
-to poll for a semaphore. The option parameter passed to the
-@code{@value{DIRPREFIX}semaphore_obtain}
-directive should be @code{@value{RPREFIX}NO_WAIT}.
-
-@section Operations
-
-@subsection Creating a Semaphore
-
-The @code{@value{DIRPREFIX}semaphore_create} directive creates a binary or
-counting semaphore with a user-specified name as well as an
-initial count. If a binary semaphore is created with a count of
-zero (0) to indicate that it has been allocated, then the task
-creating the semaphore is considered the current holder of the
-semaphore. At create time the method for ordering waiting tasks
-in the semaphore's task wait queue (by FIFO or task priority) is
-specified. Additionally, the priority inheritance or priority
-ceiling algorithm may be selected for local, binary semaphores
-that use the priority task wait queue blocking discipline. If
-the priority ceiling algorithm is selected, then the highest
-priority of any task which will attempt to obtain this semaphore
-must be specified. RTEMS allocates a Semaphore Control Block
-(SMCB) from the SMCB free list. This data structure is used by
-RTEMS to manage the newly created semaphore. Also, a unique
-semaphore ID is generated and returned to the calling task.
-
-@subsection Obtaining Semaphore IDs
-
-When a semaphore is created, RTEMS generates a unique
-semaphore ID and assigns it to the created semaphore until it is
-deleted. The semaphore ID may be obtained by either of two
-methods. First, as the result of an invocation of the
-@code{@value{DIRPREFIX}semaphore_create} directive, the
-semaphore ID is stored in a user provided location. Second,
-the semaphore ID may be obtained later using the
-@code{@value{DIRPREFIX}semaphore_ident} directive. The semaphore ID is
-used by other semaphore manager directives to access this
-semaphore.
-
-@subsection Acquiring a Semaphore
-
-The @code{@value{DIRPREFIX}semaphore_obtain} directive is used to acquire the
-specified semaphore. A simplified version of the
-@code{@value{DIRPREFIX}semaphore_obtain} directive can be described as follows:
-
-@example
-if semaphore's count is greater than zero
- then decrement semaphore's count
- else wait for release of semaphore
-
-return SUCCESSFUL
-@end example
-
-When the semaphore cannot be immediately acquired,
-one of the following situations applies:
-
-@itemize @bullet
-@item By default, the calling task will wait forever to
-acquire the semaphore.
-
-@item Specifying @code{@value{RPREFIX}NO_WAIT} forces an immediate return
-with an error status code.
-
-@item Specifying a timeout limits the interval the task will
-wait before returning with an error status code.
-@end itemize
-
-If the task waits to acquire the semaphore, then it
-is placed in the semaphore's task wait queue in either FIFO or
-task priority order. If the task blocked waiting for a binary
-semaphore using priority inheritance and the task's priority is
-greater than that of the task currently holding the semaphore,
-then the holding task will inherit the priority of the blocking
-task. All tasks waiting on a semaphore are returned an error
-code when the semaphore is deleted.
-
-When a task successfully obtains a semaphore using
-priority ceiling and the priority ceiling for this semaphore is
-greater than that of the holder, then the holder's priority will
-be elevated.
-
-@subsection Releasing a Semaphore
-
-The @code{@value{DIRPREFIX}semaphore_release} directive is used to release
-the specified semaphore. A simplified version of the
-@code{@value{DIRPREFIX}semaphore_release} directive can be described as
-follows:
-
-@example
-if no tasks are waiting on this semaphore
- then increment semaphore's count
- else assign semaphore to a waiting task
-
-return SUCCESSFUL
-@end example
-
-If this is the outermost release of a binary
-semaphore that uses priority inheritance or priority ceiling and
-the task does not currently hold any other binary semaphores,
-then the task performing the @code{@value{DIRPREFIX}semaphore_release}
-will have its priority restored to its normal value.
-
-@subsection Deleting a Semaphore
-
-The @code{@value{DIRPREFIX}semaphore_delete} directive removes a semaphore
-from the system and frees its control block. A semaphore can be
-deleted by any local task that knows the semaphore's ID. As a
-result of this directive, all tasks blocked waiting to acquire
-the semaphore will be readied and returned a status code which
-indicates that the semaphore was deleted. Any subsequent
-references to the semaphore's name and ID are invalid.
-
-@section Directives
-
-This section details the semaphore manager's
-directives. A subsection is dedicated to each of this manager's
-directives and describes the calling sequence, related
-constants, usage, and status codes.
-
-@c
-@c
-@c
-@page
-@subsection SEMAPHORE_CREATE - Create a semaphore
-
-@cindex create a semaphore
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_semaphore_create
-@example
-rtems_status_code rtems_semaphore_create(
- rtems_name name,
- uint32_t count,
- rtems_attribute attribute_set,
- rtems_task_priority priority_ceiling,
- rtems_id *id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Semaphore_Create (
- Name : in RTEMS.Name;
- Count : in RTEMS.Unsigned32;
- Attribute_Set : in RTEMS.Attribute;
- Priority_Ceiling : in RTEMS.Task_Priority;
- ID : out RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - semaphore created successfully@*
-@code{@value{RPREFIX}INVALID_NAME} - invalid semaphore name@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{id} is NULL@*
-@code{@value{RPREFIX}TOO_MANY} - too many semaphores created@*
-@code{@value{RPREFIX}NOT_DEFINED} - invalid attribute set@*
-@code{@value{RPREFIX}INVALID_NUMBER} - invalid starting count for binary semaphore@*
-@code{@value{RPREFIX}MP_NOT_CONFIGURED} - multiprocessing not configured@*
-@code{@value{RPREFIX}TOO_MANY} - too many global objects
-
-@subheading DESCRIPTION:
-
-This directive creates a semaphore which resides on
-the local node. The created semaphore has the user-defined name
-specified in name and the initial count specified in count. For
-control and maintenance of the semaphore, RTEMS allocates and
-initializes a SMCB. The RTEMS-assigned semaphore id is returned
-in id. This semaphore id is used with other semaphore related
-directives to access the semaphore.
-
-Specifying PRIORITY in attribute_set causes tasks
-waiting for a semaphore to be serviced according to task
-priority. When FIFO is selected, tasks are serviced in First
-In-First Out order.
-
-@subheading NOTES:
-
-This directive will not cause the calling task to be
-preempted.
-
-The priority inheritance and priority ceiling
-algorithms are only supported for local, binary semaphores that
-use the priority task wait queue blocking discipline.
-
-The following semaphore attribute constants are
-defined by RTEMS:
-
-@itemize @bullet
-@item @code{@value{RPREFIX}FIFO} - tasks wait by FIFO (default)
-
-@item @code{@value{RPREFIX}PRIORITY} - tasks wait by priority
-
-@item @code{@value{RPREFIX}BINARY_SEMAPHORE} - restrict values to
-0 and 1
-
-@item @code{@value{RPREFIX}COUNTING_SEMAPHORE} - no restriction on values
-(default)
-
-@item @code{@value{RPREFIX}SIMPLE_BINARY_SEMAPHORE} - restrict values to
-0 and 1, block on nested access, allow deletion of locked semaphore.
-
-@item @code{@value{RPREFIX}NO_INHERIT_PRIORITY} - do not use priority
-inheritance (default)
-
-@item @code{@value{RPREFIX}INHERIT_PRIORITY} - use priority inheritance
-
-@item @code{@value{RPREFIX}NO_PRIORITY_CEILING} - do not use priority
-ceiling (default)
-
-@item @code{@value{RPREFIX}PRIORITY_CEILING} - use priority ceiling
-
-@item @code{@value{RPREFIX}NO_MULTIPROCESSOR_RESOURCE_SHARING} - do not use
-Multiprocessor Resource Sharing Protocol (default)
-
-@item @code{@value{RPREFIX}MULTIPROCESSOR_RESOURCE_SHARING} - use
-Multiprocessor Resource Sharing Protocol
-
-@item @code{@value{RPREFIX}LOCAL} - local semaphore (default)
-
-@item @code{@value{RPREFIX}GLOBAL} - global semaphore
-@end itemize
-
-Semaphores should not be made global unless remote
-tasks must interact with the created semaphore. This is to
-avoid the system overhead incurred by the creation of a global
-semaphore. When a global semaphore is created, the semaphore's
-name and id must be transmitted to every node in the system for
-insertion in the local copy of the global object table.
-
-Note that some combinations of attributes are not valid. See the
-earlier discussion on this.
-
-The total number of global objects, including semaphores, is limited by
-the maximum_global_objects field in the Configuration Table.
-
-It is not allowed to create an initially locked MrsP semaphore and the
-@code{@value{RPREFIX}INVALID_NUMBER} status code will be returned on SMP
-configurations in this case. This prevents lock order reversal problems with
-the allocator mutex.
-
-@c
-@c
-@c
-@page
-@subsection SEMAPHORE_IDENT - Get ID of a semaphore
-
-@cindex get ID of a semaphore
-@cindex obtain ID of a semaphore
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_semaphore_ident
-@example
-rtems_status_code rtems_semaphore_ident(
- rtems_name name,
- uint32_t node,
- rtems_id *id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Semaphore_Ident (
- Name : in RTEMS.Name;
- Node : in RTEMS.Unsigned32;
- ID : out RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - semaphore identified successfully@*
-@code{@value{RPREFIX}INVALID_NAME} - semaphore name not found@*
-@code{@value{RPREFIX}INVALID_NODE} - invalid node id
-
-@subheading DESCRIPTION:
-
-This directive obtains the semaphore id associated
-with the semaphore name. If the semaphore name is not unique,
-then the semaphore id will match one of the semaphores with that
-name. However, this semaphore id is not guaranteed to
-correspond to the desired semaphore. The semaphore id is used
-by other semaphore related directives to access the semaphore.
-
-@subheading NOTES:
-
-This directive will not cause the running task to be
-preempted.
-
-If node is @code{@value{RPREFIX}SEARCH_ALL_NODES}, all nodes are searched
-with the local node being searched first. All other nodes are
-searched with the lowest numbered node searched first.
-
-If node is a valid node number which does not
-represent the local node, then only the semaphores exported by
-the designated node are searched.
-
-This directive does not generate activity on remote
-nodes. It accesses only the local copy of the global object
-table.
-
-@c
-@c
-@c
-@page
-@subsection SEMAPHORE_DELETE - Delete a semaphore
-
-@cindex delete a semaphore
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_semaphore_delete
-@example
-rtems_status_code rtems_semaphore_delete(
- rtems_id id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Semaphore_Delete (
- ID : in RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - semaphore deleted successfully@*
-@code{@value{RPREFIX}INVALID_ID} - invalid semaphore id@*
-@code{@value{RPREFIX}RESOURCE_IN_USE} - binary semaphore is in use@*
-@code{@value{RPREFIX}ILLEGAL_ON_REMOTE_OBJECT} - cannot delete remote semaphore
-
-@subheading DESCRIPTION:
-
-This directive deletes the semaphore specified by @code{id}.
-All tasks blocked waiting to acquire the semaphore will be
-readied and returned a status code which indicates that the
-semaphore was deleted. The SMCB for this semaphore is reclaimed
-by RTEMS.
-
-@subheading NOTES:
-
-The calling task will be preempted if it is enabled
-by the task's execution mode and a higher priority local task is
-waiting on the deleted semaphore. The calling task will NOT be
-preempted if all of the tasks that are waiting on the semaphore
-are remote tasks.
-
-The calling task does not have to be the task that
-created the semaphore. Any local task that knows the semaphore
-id can delete the semaphore.
-
-When a global semaphore is deleted, the semaphore id
-must be transmitted to every node in the system for deletion
-from the local copy of the global object table.
-
-The semaphore must reside on the local node, even if
-the semaphore was created with the @code{@value{RPREFIX}GLOBAL} option.
-
-Proxies, used to represent remote tasks, are
-reclaimed when the semaphore is deleted.
-
-@c
-@c
-@c
-@page
-@subsection SEMAPHORE_OBTAIN - Acquire a semaphore
-
-@cindex obtain a semaphore
-@cindex lock a semaphore
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_semaphore_obtain
-@example
-rtems_status_code rtems_semaphore_obtain(
- rtems_id id,
- rtems_option option_set,
- rtems_interval timeout
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Semaphore_Obtain (
- ID : in RTEMS.ID;
- Option_Set : in RTEMS.Option;
- Timeout : in RTEMS.Interval;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - semaphore obtained successfully@*
-@code{@value{RPREFIX}UNSATISFIED} - semaphore not available@*
-@code{@value{RPREFIX}TIMEOUT} - timed out waiting for semaphore@*
-@code{@value{RPREFIX}OBJECT_WAS_DELETED} - semaphore deleted while waiting@*
-@code{@value{RPREFIX}INVALID_ID} - invalid semaphore id
-
-@subheading DESCRIPTION:
-
-This directive acquires the semaphore specified by
-id. The @code{@value{RPREFIX}WAIT} and @code{@value{RPREFIX}NO_WAIT} components of the options parameter
-indicate whether the calling task wants to wait for the
-semaphore to become available or return immediately if the
-semaphore is not currently available. With either @code{@value{RPREFIX}WAIT} or
-@code{@value{RPREFIX}NO_WAIT}, if the current semaphore count is positive, then it is
-decremented by one and the semaphore is successfully acquired by
-returning immediately with a successful return code.
-
-If the calling task chooses to return immediately and the current
-semaphore count is zero or negative, then a status code is returned
-indicating that the semaphore is not available. If the calling task
-chooses to wait for a semaphore and the current semaphore count is zero or
-negative, then it is decremented by one and the calling task is placed on
-the semaphore's wait queue and blocked. If the semaphore was created with
-the @code{@value{RPREFIX}PRIORITY} attribute, then the calling task is
-inserted into the queue according to its priority. However, if the
-semaphore was created with the @code{@value{RPREFIX}FIFO} attribute, then
-the calling task is placed at the rear of the wait queue. If the binary
-semaphore was created with the @code{@value{RPREFIX}INHERIT_PRIORITY}
-attribute, then the priority of the task currently holding the binary
-semaphore is guaranteed to be greater than or equal to that of the
-blocking task. If the binary semaphore was created with the
-@code{@value{RPREFIX}PRIORITY_CEILING} attribute, a task successfully
-obtains the semaphore, and the priority of that task is greater than the
-ceiling priority for this semaphore, then the priority of the task
-obtaining the semaphore is elevated to that of the ceiling.
-
-The timeout parameter specifies the maximum interval the calling task is
-willing to be blocked waiting for the semaphore. If it is set to
-@code{@value{RPREFIX}NO_TIMEOUT}, then the calling task will wait forever.
-If the semaphore is available or the @code{@value{RPREFIX}NO_WAIT} option
-component is set, then timeout is ignored.
-
-Deadlock situations are detected for MrsP semaphores and the
-@code{@value{RPREFIX}UNSATISFIED} status code will be returned on SMP
-configurations in this case.
-
-@subheading NOTES:
-The following semaphore acquisition option constants
-are defined by RTEMS:
-
-@itemize @bullet
-@item @code{@value{RPREFIX}WAIT} - task will wait for semaphore (default)
-@item @code{@value{RPREFIX}NO_WAIT} - task should not wait
-@end itemize
-
-Attempting to obtain a global semaphore which does not reside on the local
-node will generate a request to the remote node to access the semaphore.
-If the semaphore is not available and @code{@value{RPREFIX}NO_WAIT} was
-not specified, then the task must be blocked until the semaphore is
-released. A proxy is allocated on the remote node to represent the task
-until the semaphore is released.
-
-A clock tick is required to support the timeout functionality of
-this directive.
-
-It is not allowed to obtain a MrsP semaphore more than once by one task at a
-time (nested access) and the @code{@value{RPREFIX}UNSATISFIED} status code will
-be returned on SMP configurations in this case.
-
-@c
-@c
-@c
-@page
-@subsection SEMAPHORE_RELEASE - Release a semaphore
-
-@cindex release a semaphore
-@cindex unlock a semaphore
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_semaphore_release
-@example
-rtems_status_code rtems_semaphore_release(
- rtems_id id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Semaphore_Release (
- ID : in RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - semaphore released successfully@*
-@code{@value{RPREFIX}INVALID_ID} - invalid semaphore id@*
-@code{@value{RPREFIX}NOT_OWNER_OF_RESOURCE} - calling task does not own semaphore@*
-@code{@value{RPREFIX}INCORRECT_STATE} - invalid unlock order
-
-@subheading DESCRIPTION:
-
-This directive releases the semaphore specified by
-id. The semaphore count is incremented by one. If the count is
-zero or negative, then the first task on this semaphore's wait
-queue is removed and unblocked. The unblocked task may preempt
-the running task if the running task's preemption mode is
-enabled and the unblocked task has a higher priority than the
-running task.
-
-@subheading NOTES:
-
-The calling task may be preempted if it causes a
-higher priority task to be made ready for execution.
-
-Releasing a global semaphore which does not reside on
-the local node will generate a request telling the remote node
-to release the semaphore.
-
-If the task to be unblocked resides on a different
-node from the semaphore, then the semaphore allocation is
-forwarded to the appropriate node, the waiting task is
-unblocked, and the proxy used to represent the task is reclaimed.
-
-The outermost release of a local, binary, priority
-inheritance or priority ceiling semaphore may result in the
-calling task having its priority lowered. This will occur if
-the calling task holds no other binary semaphores and it has
-inherited a higher priority.
-
-The MrsP semaphores must be released in the reversed obtain order, otherwise
-the @code{@value{RPREFIX}INCORRECT_STATE} status code will be returned on SMP
-configurations in this case.
-
-@c
-@c
-@c
-@page
-@subsection SEMAPHORE_FLUSH - Unblock all tasks waiting on a semaphore
-
-@cindex flush a semaphore
-@cindex unblock all tasks waiting on a semaphore
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_semaphore_flush
-@example
-rtems_status_code rtems_semaphore_flush(
- rtems_id id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Semaphore_Flush (
- ID : in RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - semaphore released successfully@*
-@code{@value{RPREFIX}INVALID_ID} - invalid semaphore id@*
-@code{@value{RPREFIX}NOT_DEFINED} - operation not defined for the protocol of
-the semaphore@*
-@code{@value{RPREFIX}ILLEGAL_ON_REMOTE_OBJECT} - not supported for remote semaphores
-
-@subheading DESCRIPTION:
-
-This directive unblocks all tasks waiting on the semaphore specified by
-id. Since there are tasks blocked on the semaphore, the semaphore's
-count is not changed by this directive and thus is zero before and
-after this directive is executed. Tasks which are unblocked as the
-result of this directive will return from the
-@code{@value{DIRPREFIX}semaphore_obtain} directive with a
-status code of @code{@value{RPREFIX}UNSATISFIED} to indicate
-that the semaphore was not obtained.
-
-This directive may unblock any number of tasks. Any of the unblocked
-tasks may preempt the running task if the running task's preemption mode is
-enabled and an unblocked task has a higher priority than the
-running task.
-
-@subheading NOTES:
-
-The calling task may be preempted if it causes a
-higher priority task to be made ready for execution.
-
-If the task to be unblocked resides on a different
-node from the semaphore, then the waiting task is
-unblocked, and the proxy used to represent the task is reclaimed.
-
-It is not allowed to flush a MrsP semaphore and the
-@code{@value{RPREFIX}NOT_DEFINED} status code will be returned on SMP
-configurations in this case.
-
-@c
-@c
-@c
-@page
-@subsection SEMAPHORE_SET_PRIORITY - Set priority by scheduler for a semaphore
-
-@cindex set priority by scheduler for a semaphore
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_semaphore_set_priority
-@example
-rtems_status_code rtems_semaphore_set_priority(
- rtems_id semaphore_id,
- rtems_id scheduler_id,
- rtems_task_priority new_priority,
- rtems_task_priority *old_priority
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - successful operation@*
-@code{@value{RPREFIX}INVALID_ID} - invalid semaphore or scheduler id@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{old_priority} is NULL@*
-@code{@value{RPREFIX}INVALID_PRIORITY} - invalid new priority value@*
-@code{@value{RPREFIX}NOT_DEFINED} - operation not defined for the protocol of
-the semaphore@*
-@code{@value{RPREFIX}ILLEGAL_ON_REMOTE_OBJECT} - not supported for remote semaphores
-
-@subheading DESCRIPTION:
-
-This directive sets the priority value with respect to the specified scheduler
-of a semaphore.
-
-The special priority value @code{RTEMS_CURRENT_PRIORITY} can be used to get the
-current priority value without changing it.
-
-The interpretation of the priority value depends on the protocol of the
-semaphore object.
-
-@itemize @bullet
-@item The Multiprocessor Resource Sharing Protocol needs a ceiling priority per
-scheduler instance. This operation can be used to specify these priority
-values.
-@item For the Priority Ceiling Protocol the ceiling priority is used with this
-operation.
-@item For other protocols this operation is not defined.
-@end itemize
-
-@subheading EXAMPLE:
-
-@example
-@group
-#include <assert.h>
-#include <stdlib.h>
-
-#include <rtems.h>
-
-#define SCHED_A rtems_build_name(' ', ' ', ' ', 'A')
-
-#define SCHED_B rtems_build_name(' ', ' ', ' ', 'B')
-
-static void Init(rtems_task_argument arg)
-@{
- rtems_status_code sc;
- rtems_id semaphore_id;
- rtems_id scheduler_a_id;
- rtems_id scheduler_b_id;
- rtems_task_priority prio;
-
- /* Get the scheduler identifiers */
-
- sc = rtems_scheduler_ident(SCHED_A, &scheduler_a_id);
- assert(sc == RTEMS_SUCCESSFUL);
-
- sc = rtems_scheduler_ident(SCHED_B, &scheduler_b_id);
- assert(sc == RTEMS_SUCCESSFUL);
-
- /* Create a MrsP semaphore object */
-
- sc = rtems_semaphore_create(
- rtems_build_name('M', 'R', 'S', 'P'),
- 1,
- RTEMS_MULTIPROCESSOR_RESOURCE_SHARING
- | RTEMS_BINARY_SEMAPHORE,
- 1,
- &semaphore_id
- );
- assert(sc == RTEMS_SUCCESSFUL);
-
- /*
- * The ceiling priority values per scheduler are equal to the value specified
- * for object creation.
- */
-
- prio = RTEMS_CURRENT_PRIORITY;
- sc = rtems_semaphore_set_priority(semaphore_id, scheduler_a_id, prio, &prio);
- assert(sc == RTEMS_SUCCESSFUL);
- assert(prio == 1);
-
- /* Check the old value and set a new ceiling priority for scheduler B */
-
- prio = 2;
- sc = rtems_semaphore_set_priority(semaphore_id, scheduler_b_id, prio, &prio);
- assert(sc == RTEMS_SUCCESSFUL);
- assert(prio == 1);
-
- /* Check the ceiling priority values */
-
- prio = RTEMS_CURRENT_PRIORITY;
- sc = rtems_semaphore_set_priority(semaphore_id, scheduler_a_id, prio, &prio);
- assert(sc == RTEMS_SUCCESSFUL);
- assert(prio == 1);
-
- prio = RTEMS_CURRENT_PRIORITY;
- sc = rtems_semaphore_set_priority(semaphore_id, scheduler_b_id, prio, &prio);
- assert(sc == RTEMS_SUCCESSFUL);
- assert(prio == 2);
-
- sc = rtems_semaphore_delete(semaphore_id);
- assert(sc == RTEMS_SUCCESSFUL);
-
- exit(0);
-@}
-
-#define CONFIGURE_SMP_APPLICATION
-
-#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
-#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
-
-#define CONFIGURE_MAXIMUM_TASKS 1
-#define CONFIGURE_MAXIMUM_SEMAPHORES 1
-#define CONFIGURE_MAXIMUM_MRSP_SEMAPHORES 1
-
-#define CONFIGURE_SMP_MAXIMUM_PROCESSORS 2
-
-#define CONFIGURE_SCHEDULER_SIMPLE_SMP
-
-#include <rtems/scheduler.h>
-
-RTEMS_SCHEDULER_CONTEXT_SIMPLE_SMP(a);
-
-RTEMS_SCHEDULER_CONTEXT_SIMPLE_SMP(b);
-
-#define CONFIGURE_SCHEDULER_CONTROLS \
- RTEMS_SCHEDULER_CONTROL_SIMPLE_SMP(a, SCHED_A), \
- RTEMS_SCHEDULER_CONTROL_SIMPLE_SMP(b, SCHED_B)
-
-#define CONFIGURE_SMP_SCHEDULER_ASSIGNMENTS \
- RTEMS_SCHEDULER_ASSIGN(0, RTEMS_SCHEDULER_ASSIGN_PROCESSOR_MANDATORY), \
- RTEMS_SCHEDULER_ASSIGN(1, RTEMS_SCHEDULER_ASSIGN_PROCESSOR_MANDATORY)
-
-#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
-
-#define CONFIGURE_INIT
-
-#include <rtems/confdefs.h>
-@end group
-@end example
diff --git a/doc/user/semaphore_attributes.eps b/doc/user/semaphore_attributes.eps
deleted file mode 100644
index ca7736a6de..0000000000
--- a/doc/user/semaphore_attributes.eps
+++ /dev/null
@@ -1,3752 +0,0 @@
-%!PS-Adobe-3.0 EPSF-3.0
-%%Creator: GIMP PostScript file plugin V 1.17 by Peter Kirchgessner
-%%Title: semaphore_attributes.eps
-%%CreationDate: Mon Feb 25 13:55:43 2013
-%%DocumentData: Clean7Bit
-%%LanguageLevel: 2
-%%Pages: 1
-%%BoundingBox: 14 14 658 411
-%%EndComments
-%%BeginProlog
-% Use own dictionary to avoid conflicts
-10 dict begin
-%%EndProlog
-%%Page: 1 1
-% Translate for offset
-14.173228346456694 14.173228346456694 translate
-% Translate to begin of first scanline
-0 396.55664803557585 translate
-643.30300681326742 -396.55664803557585 scale
-% Image geometry
-1314 810 8
-% Transformation matrix
-[ 1314 0 0 810 0 0 ]
-% Strings to hold RGB-samples per scanline
-/rstr 1314 string def
-/gstr 1314 string def
-/bstr 1314 string def
-{currentfile /ASCII85Decode filter /RunLengthDecode filter rstr readstring pop}
-{currentfile /ASCII85Decode filter /RunLengthDecode filter gstr readstring pop}
-{currentfile /ASCII85Decode filter /RunLengthDecode filter bstr readstring pop}
-true 3
-%%BeginData: 197243 ASCII Bytes
-colorimage
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcD5>JH5<BJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>JH5<BJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>JH5<BJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!(m>#iLY.'a+t!G1lcVrr<&Mg$&G9!7o`b!!%TMJcC<$JcC<$df4g~>
-JcC<$JcD5>!!(mD#j.49'a+t#H/AGdrr<&Rg$\k?!8H)m!!%TMJcC<$JcC<$df4g~>
-JcC<$JcD5>!!(mM#k!sI('G+&IcpV&rr<&[g%YLH!9D`*!!%TMJcC<$JcC<$df4g~>
-JcC<$JcD5>!!(p?$F(QN%6dQO$31aDr94.\!7oierr<&Mf'!)6JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!(pE$FLlS%6m]S$31dIr9jRb!8H2prr<&Rf'WM<JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!(pN$G7D[%RO,]$NLmQr:g3k!9Di-rr<&[f(T.EJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!(s@"L/.7IGt1h"P[&Z$cDr,rr<&Mg$&IS!9Meq!!%TMJcC<$JcC<$df4g~>
-JcC<$JcD5>!!(sF"LSI<JEQq""Q<Pb$cr;7rr<&Rg$\m^!:/5(!!%TMJcC<$JcC<$df4g~>
-JcC<$JcD5>!!(sO"M=sCL%#$8"R07n%+"nHrr<&[g%YNn!;+k:!!%TMJcC<$JcC<$df4g~>
-JcC<$JcD5>!!)!A"5k.!Qi#tKk<T)7rTO7]!7n47!!%TMJcC<$JcC<$df4g~>
-JcC<$JcD5>!!)!G"6LU(S,;UUm6Ue?rU0[c!8FRB!!%TMJcC<$JcC<$df4g~>
-JcC<$JcD5>!!)!P"7@31U&4Qdp-esNrV-<l!9C3T!!%TMJcC<$JcC<$df4g~>
-JcC<$JcD5>!!)!A!fR+?q<.pl/S!l@kl1V_f)Fk=jc)G:":HuDkPXNK[7hA>%lAXjroaTp9G[gB
-1je-Ykl1V_f)=e:YtG`5(K8<3kPtU6s+13$s+13$s3gpt~>
-JcC<$JcD5>!!)!G!g!CEq<e@!/nXDJmf*7eg]$UHl]FCF":I#ImJQAW\kX%E%lJgtrpC$&:)=$D
-21FZcmf*7eg\pOE[S7G=(KJZ;mJm6<s+13$s+13$s3gpt~>
-JcC<$JcD5>!!)!P!gNaLq=b!205C+Xp\t3njSnlZoThfW":R/QpAFXi_,2$P&3#7/rq?Z6;&BEI
-2hUMrp\t3njSefW]h]=F(g,5FpAb2Es+13$s+13$s3gpt~>
-JcC<$JcD5>!!)!A!^ZmFo'$)R!7q/5#Y+k,7ntK5!-J2''V5C,1/C:H!&E["Sc\sJ:IGTk1?JN!
-rr<&MroaW:!<=]H-iaXbiog@BJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!)!G!^m$Lo'ZMX!8IM@#Y>"/8Pgl:!-eD0'VY[01JpUM!&Ns/U&tBO;+:ro1[G&.
-rr<&RrpC&D!<=cL.0'ahipHdHJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!)!P!_36To(W.a!9F.R#YY429N*JB!.=b>'WD072,m-V!&aECW<3,X<(RN!2>$nB
-rr<&[rq?\R!<=fP.f^!riqEEQJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!)!A!Z(jLo'$)R#1i#%TE$S!roaH:!"e>mkQ2t/Qi?1Rdi\X\kT^(oroaI5+97r2
-kl1Vef')>,!<o1rkQ5]'/)oam!.k0$s+13$s+13us*t~>
-JcC<$JcD5>!!)!G!Z(jQo'ZMX#2AS6U]<%,rpBlC!"nVtmK+U5S,Vg\fc^?hmNV_$rpBmA+TS58
-mf*7kg[=LB!=#D"mK.G0/E6't!.k0$s+13$s+13us*t~>
-JcC<$JcD5>!!)!P!Z1pZo(W.a#3>OQWW4^;rq?MQ!"nr(pAuW@U&Ocki?A9"pE]g5rq?NR+onP?
-p\t3tjS/Dd!=#V(pB#O=0&lU*!.k0$s+13$s+13us*t~>
-JcC<$JcD5>!!)!A!X&MOo'$)R"kMo$R7O7SkQB]B!8IM:!XSk6rTFHhO2gAi!4;^g!j@[)roj@^
-"kMo$<WHn5kQBls37m3S!!%TMJcC<$JcC<$df4g~>
-JcC<$JcD5>!!)!G!X&MUo'ZMX"l&J5SP$!^mK;PN!9*qF!XSk;rU'lrPKWA#!4i'r!je*6rpKdd
-"l&J5=TE=;mK;`+3S`Z_!!%TMJcC<$JcC<$df4g~>
-JcC<$JcD5>!!)!P!X&M]o(W.a"m#FPUJ8&mpB0d_!9sLW!X\qCrV$N-R+(d:!5SR-!kOcJrqHEm
-"m#FP>QAdBpB1">46>Ms!!%TMJcC<$JcC<$df4g~>
-JcC<$JcD5>!!)!A!X8YOo'$)R!7q#1"lR"J!!(XMkQOKW%:Gd\r9+;T!"E>-g%sq4!!Us;kT9f3
-gZSV;JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!)!G!XA_Vo'ZMX!8IA<"m3UX!!(gRmKH2_%:Z'gr9a_\!"ED3hYQ[?!!V-FmN;M?
-g[5%AJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!)!P!XA_^o(W.a!9F"N"n'Hm!!)-[pB=7k%VD^'r:^@h!"NV?kPFrQ!!VHXpE9OP
-g\1[JJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!)!A!Zh?Qo'$)R!7q/5$.jD`(BFL:!!(ULkQ07!rW!0)06PY*kghut!!<9UFjU*N
-rr<5Rki`0MceIX`!.k0$s+13$s+13us*t~>
-JcC<$JcD5>!!)!G!ZqEVo'ZMX!8IM@$/Bkj(BFL:!!(dQmK)'-rW!0)0mM:;mb:#+!!<9WGh2i]
-rr<5Wmd:8Ze_BKl!.k0$s+13$s+13us*t~>
-JcC<$JcD5>!!)!P![%K_o(W.a!9F.R$0?\%(]aU;!!)*ZpAs>BrW!0)14A$RpZ+^@!!<9XIGXqs
-rr<5`p\+jlh:qZ(!.k0$s+13$s+13us*t~>
-JcC<$JcD5>!!)!A!_iZQpuhd%S([f)rr<MZkifhs!"hP1P0O%-f)4_:_0eQY!!!>*roaU'HpS8B
-!"#\)kl1Vdf')<%!79Ka!!%TMJcC<$JcC<$df4g~>
-JcC<$JcD5>!!)!G!`&fWq!J3.TATY9rr<M_mdA(0!"q\6QI>g6g\gIE`d^>b!!!>/rpC$2ImXYF
-!"#k.mf*7jg[=J7!7oom!!%TMJcC<$JcC<$df4g~>
-JcC<$JcD5>!!)!P!`B#_q"Fi<V<@jPrr<Mhp\2oI!"qe=SD+#DjS\`Wc%JOr!!!A6rq?ZBKLQFO
-!"-.5p\t3sjS/BR!8cK)!!%TMJcC<$JcC<$df4g~>
-JcC<$JcD5>!!)!A!gisJq<.pr!!'h6kl1Vef')<Y!,(BlkQBT?!7pu0"Qm-]!$_=("Qm-]!$_F+
-rr<5Rkia#e[f#=jV3o]kkPtU6s+13$s+13$s3gpt~>
-JcC<$JcD5>!!)!G!h96Pq<e@(!!(";mf*7kg[=Jl!,:`tmK;GK!8I>;"RN`j!$hC/"RN`j!$hL2
-rr<5Wmd;+r]DV'uWLVW$mJm6<s+13$s+13$s3gpt~>
-JcC<$JcD5>!!)!P!hoZXq=b!8!!(7Bp\t3tjS/C4!,_?,pB0[\!9EtM"SKW(!$qI9"SKW(!$qR<
-rr<5`p\,a0_Yj-0YG0t8pAb2Es+13$s+13$s3gpt~>
-JcC<$JcD5>!!)!A"61I'RJZ1Mk!/o-rTO7]"kMo$"p!!JkR!g\!7^5r^*t8grTFI1!!U(c,3Jjf
-!mL]Kroj@^"kMo$<WI+;kQBuk!4_(Q!!%TMJcC<$JcC<$df4g~>
-JcC<$JcD5>!!)!G"6gp.SbqgWlp1V6rU0[c"l&J5#6<9PmKoTf!86f._^ZntrU'm<!!^=j,OGBs
-!n%&QrpKdd"l&J5=9*F@mK;i#!57F\!!%TMJcC<$JcC<$df4g~>
-JcC<$JcD5>!!)!P"7dT8U\jcfogAdDrV-<l"m#FP#6<QXpBdf!!93bIat+h2rV$NM!!^Rs,k_-1
-!nmVYrqHEm"m#FP>6&mGpB1+6!6!pl!!%TMJcC<$JcC<$df4g~>
-JcC<$JcD5>!!(s@"K_e1Ic::i"O]mB$Guc*rr<5Rki`laMZ2fIZP<H?cKOKN'EE1:roaT.!'&pO
-!-79%kQ5f*3<&.A!!_$<kd^a#X8_;aF9!lOkPtU6s+13$s+13$s3gpt~>
-JcC<$JcD5>!!(sF"L/(6K'3.$"P?BJ$HN,5rr<5Wmd:tnNrJGS\.nuDe*cYe'``CDrpC#7!'99X
-!-R].mK.P33r\RI!!_3Gm_&Z-YQ!qkG5s5SmJm6<s+13$s+13$s3gpt~>
-JcC<$JcD5>!!(sO"LnR=L[Y6:"Q3#T$dS_Frr<5`p\,U,PQ(:a^D6eLg\:I2'``OQrq?YD!'K]b
-!.";;pB#X@4T>*T!!_NYpVd1?[f6"&HN5\XpAb2Es+13$s+13$s3gpt~>
-JcC<$JcD5>!!(p?$D7h.%7*cK"TT=Dr94.\%G'b,JH,^09e??--iggWkS0]o!$4g.,6/7gkb/.[
-*_]9Q!"ZgCkl1V_f)Fk=JcPj.:*]fN^Z+GW!.k0$s+13$s+13us*t~>
-JcC<$JcD5>!!(pE$D\+2%73oO"TT=Ir9jRb%GU==K`D-5:G2]3.0.'\mM)K$!$=p2,QJCnm\L'e
-+&,NV!"d'Imf*7eg]$UHK`M02:aH)R`8^1b!.k0$s+13$s+13us*t~>
-JcC<$JcD5>!!(pN$E=R9%Rj>X"TT@Qr:g3k%HR9XM?!Z<;D8)9.fdQfpCsY3!$G*9-3+V"pT"Gt
-+Abr_!"d<Pp\t3njSnlZMZEf:;^VPWbMr6r!.k0$s+13$s+13us*t~>
-JcC<$JcD5>!!(m>#h*lO%g*7sHJ88[rr<&MroaZH.Kp2=O60mOFT(D.]2BRO#psB4roaU!;B#cG
-->Cg)kl1V_f)=e:YXfB0)-kJGkPtU6s+13$s+13$s3gpt~>
-JcC<$JcD5>!!(mD#haDY%g*7tIGk"jrr<&RrpC)R.g?A@PO)i\GQ$q7^Jl0V#q'N=rpC$+<#c&J
--Yq92mf*7eg\pOEZq:u7).(eNmJm6<s+13$s+13$s3gpt~>
-JcC<$JcD5>!!(mM#iU+g&-ED#K'<++rr<&[rq?_`/HuVER.Y.nI/WdEa&a8b$7ToLrq?Z<<uhGO
-.<"&@p\t3njSefW]1iqA)IhI[pAb2Es+13$s+13$s3gpt~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!)`V#j.C=&d&LnDpZ>arr<&Mc0,--JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!)`\#jdsH'*AUpEn8(prr<&Rc0bQ3JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!)`e#kafZ'*AXrG2C(0rr<&[c1_2<JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!)cW$K4/K#s;$P'EATC_W_""!7oEY!!%TMJcC<$JcC<$df4g~>
-JcC<$JcD5>!!)c]$KjVR#sM6V'`\]H_X@F(!8Gcd!!%TMJcC<$JcC<$df4g~>
-JcC<$JcD5>!!)cf$L^:]$:%T_'`\`P_Y='1!9DE!!!%TMJcC<$JcC<$df4g~>
-JcC<$JcD5>!!)cW")\*$f`((;jDFr.fYcqQ!!(TpkPtU6s+13$s+13$s3gpt~>
-JcC<$JcD5>!!)c]"*"<)h>ZgFl>Ze8h8A[\!!(cumJm6<s+13$s+13$s3gpt~>
-JcC<$JcD5>!!)cf"*FT/k5P)Xo5t$Ek/6rn!!)*)pAb2Es+13$s+13$s3gpt~>
-JcC<$JcD5>!!)cW!Z1pRqre)7!/nbYrr<&Mc0,--JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!)c]!Z1pWqsFM?!0>%crr<&Rc0bQ3JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!)cf!Z;!_qtC.I!0kCqrr<&[c1_2<JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!)cW!X&M<qre*G=/5]W#/X@X"VjhGr94.\%FfhK";u@FheX89*dQoIkQp:04q[u+
-15tDpkl1VedW-3/-%tFZkl1Vec[$rC%7%,pkQ\[t(^1UI[Jf=h!"H_0"ql@Jke^=;"VjhGoB6/S
-JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!)c]!X&MAqsFNQ>,V;d#00d_"VjnNr9jRb%G?=U"<)OPj_l.D++3GSmKi-@58+/-
-1Q_#&mf*7kfQA):-AUsdmf*7ke9r_M%7.>umKUL,(^1XK])D's!"Hn6#8;XUm`/BH"VjnNoBlSY
-JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!)cf!X&MHqtC/`?*4&!#0pBj"Vt(Zr:g3k%H<-d"<2d_m;j<Q+G'4bpB^DW65'J1
-23mn6p\t3ti-?7G.#ditp\t3tgk%!\%Rdo+pBJ`@)$LaO_>X-.!"I.@#8;gcpWcq\"Vt(ZoCi4b
-JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!)cW""aL+\b5.lSH]'L9e?>KR/Q7K!"D:#6U:bRD(lGj3WT5)roaVX!"h^r.0'?i
-rTO7]#"/JP6j<WhrTO7]#:KU/9csE<VuGlcOotb79eHDILApE:!"L4l9-C.rSH]'L9e?>KR.TSB
-!.k0$s+13$s+13us*t~>
-JcC<$JcD5>!!)c]""sX/^%Le!Ta(QR:G)VNSGhmU!"D@%77%%UE%qhp495G.rpC%`!"qk".KBHm
-rU0[c#"AVT7L&omrU0[c#:T[1:E]]?XT%VnPlq(;:G;bMM>lrC!"L4m9d-V+Ta(QR:G)VNSFl4L
-!.k0$s+13$s+13us*t~>
-JcC<$JcD5>!!)cf"#'^1`V&s2W!<;[;D/"RUAaid!"DI)84<R[F>FG%4okY5rq?[l!"qt(/-#Zt
-rV-<l#"\hY8I#5srV-<l#:fg5;Bc)CZMsS(Rfi^C;DA.QNrJeQ!"L:p:Em+=W!<;[;D/"RU@e0[
-!.k0$s+13$s+13us*t~>
-JcC<$JcD5>!!)cW#H%Y(!$>I1cMH`,a9W<]roaHU"p`0Ikl1Vr*6[R0L]@E(e`c4S!#Ok_TE$S!
-roaH:!"e>mkl1Vf"Jb2E^^pL;roj@^%2626kiGP>3U#\C!s4\ckRa?i!j_%R!!"Y0ki_-M#S43>
-kQ@C\#KHH#!!%TMJcC<$JcC<$df4g~>
-JcC<$JcD5>!!)c]#HS"-!$GU8e,&J7bm4ifrpBl_#7&HOmf*8#*RO6BMuWi-g@"Bh!#P(kU]<%,
-rpBlC!"nVtmf*7l"K1\U`=W*ErpKdd%2?GBmd![L47;OV!s4hgmLZ,t!k7Uc!!"_8md9Dd#S4?B
-mK90g#Kuf.!!%TMJcC<$JcC<$df4g~>
-JcC<$JcD5>!!)cf#I4F3!$PgCg\UXHeHlf"rq?Mo#7/fXp\t4,*n^5]OT5A4j7i;3!#YJ)WW4^;
-rq?MQ!"nr(p\t3u"KhFmbRjiSrqHEm%2?\Rp[hAa4nn]q!s5%mpCO>/!l"F'!!"bAp\+=2#nXcK
-pB.B"#h/J@!!%TMJcC<$JcC<$df4g~>
-JcC<$JcD5>!!)`V!N[UF!!4R$j8J0C@K;;`kQ5Z&@K,Kj!!&,[kQBH;!2'8S#MK.Xh<:7tVu>f]
-hZ*Z2roj@^!+Poj!eUJ>roj@^!0$m?#J0sGkic1M@/T3nEWAVnkPtUGrTF;l!/g^<!cJ'Ip#lAU
-JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!)`\!O*pK!!4U(kl'oNAH7bgmK.D/AH)#s!!&5^mK;8F!2KP]#N,R^j6iI1XSqPh
-jT#;>rpKdd!+l,s!ep\CrpKdd!0I0I#JU6Kmd=<[A,Pa"FT>#$mJm6QrU'_u!07!F!ce9Op$Me[
-JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!)`e!OjKT!!4[/nbr1`B`O@ppB#L<B`@c+!!&GdpB0OX!36%m#Nu-flh@/KZMjM"
-m/R.NrqHEm!,;E+!fI%KrqHEm!1!NW#KHfTp\/%qBDhK/GlUP4pAb2`rV$A-!0d?T!d4QWp%JFd
-JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!)]U"R!.22?j'[!AE.*kQ2t/bP^Q*ZiDEOkl1V_`;Sp"!!(=Ckl1V_f)+Y7i4FaE
-!8%56rr<&&rTF=)!"Akjrr<&=rTFL9!!2<I+98\EkQf$+%-ZmT!5e]u![@]gr9+3h!%%=%!!%TM
-JcC<$JcC<$df4g~>
-JcC<$JcD5>!!)]["RWa@2[96]!AWI1mK+X6d/<;5\H!uUmf*7eao1Z-!!(LHmf*7eg\^CBk.liS
-!8RSArr<&*rU'a4!"Akprr<&BrU'pD!!2NU+TStKmK^i6%.<N`!6>'+![Icmr9aWs!%.C,!!%TM
-JcC<$JcC<$df4g~>
-JcC<$JcD5>!!)]d"STWT3<oH_!A`j;pAuZAf_kIF^]5e^p\t3nd/E_=!!(dPp\t3njSSZTm`:Fh
-!9O4Srr<&1rV$BE!"Jr%rr<&JrV$QV!!2ig+oo=SpBT%F%JTSs!7(Q;![[p"r:^9.!%@O7!!%TM
-JcC<$JcC<$df4g~>
-JcC<$JcD5>!!)QQ"lQ:X!<?1"kPtn`!!!B*kl1V_eG\V2!!(UKkl1Vkf')>LGWQ]B!!*'"f)Fn5
-!!(@DkQp2K!8H`$!!(RJkQfZ=!9iVP!71T,#NGdah<4h=eG\S2#l"B"$MET_!.k0$s+13$s+13u
-s*t~>
-JcC<$JcD5>!!)QW"m2me!<?:%mJmOf!!!B*mf*7eg&:@=!!(dPmf*7qg[=LbHT`/G!!*'"g]$X@
-!!(OImKi"V!9*A6!!(aOmK_JH!:K7\!7h#8#Nu-fj6cmIg&:==#l"B"$MEfe!.k0$s+13$s+13u
-s*t~>
-JcC<$JcD5>!!)Q`"n&[!!<?C(pAbNp!!!E+p\t3nir/WO!!)*Yp\t4%jS/E1J3OkO!!*'"jSnoR
-!!(gQpB^9h!9s7P!!)'XpBTaZ!;H3o!8[SI#Oqcolh:AZir/TO$2=K#$ha5o!.k0$s+13$s+13u
-s*t~>
-JcC<$JcD5>!!)fX!nO^$qWJ3>!!hTKkQV#\qGRAnroj@^!7q,4rr<&MrTO7]%+aXY'EA_3B9LO?
-!7q/5rr<&IrTFOH!!(m>kPtV6rTFL;!!)6H#6<*JkQg#G!8Zi=!7q,4!X8WuqGRAnp#lAUJcC<$
-JcC<$JcF0uJ,~>
-JcC<$JcD5>!!)f^!o(63qX+WG!!hfWmKW_dqGdMrrpKdd!8IJ?rr<&RrU0[c%,:3i'`\k7BpR3J
-!8IM@rr<&OrU'sS!!)*JmJm7ArU'pF!!)HT#6<<PmK_kS!9<JI!8IJ?!XA^"qGdMrp$Me[JcC<$
-JcC<$JcF0uJ,~>
-JcC<$JcD5>!!)fg!p%,KqY(8U!!r2jpBL[pqH*`#rqHEm!9F+Qrr<&[rV-<l%-70-'`\k:D4K>\
-!9F.Rrr<&WrV$Te!!)B[pAb3SrV$QX!!)cf#QW]YpBU*d!:0@Z!9F+Q!XA^%qH*`#p%JFdJcC<$
-JcC<$JcF0uJ,~>
-JcC<$JcD5>!!)fX!eC>ZqWJ4A!!(d;kT0`Ap?;MV!7q,4rr<&MrTO7]"kMlu!,(BlkQBT?!7q/5
-rr<&1rTF=&!##:prr<&MrTFL;!!)6H*rrSDkQep(%-ZmT!7q,4!Zh?ZmH=NMJcC<$JcC<$JcF0u
-J,~>
-JcC<$JcD5>!!)f^!egVaqX+XM!!)!GmN2GMp?qq\!8IJ?rr<&RrU0[c"l&H-!,:`tmK;GK!8IM@
-rr<&5rU'a1!#,A"rr<&RrU'pF!!)HT+98kJmK^`3%.<N`!8IJ?!ZqE`mHsrSJcC<$JcC<$JcF0u
-J,~>
-JcC<$JcD5>!!)fg!f?tjqY(9^!!)9XpE0I^p@nRe!9F+Qrr<&[rV-<l"m#DA!,_?,pB0[\!9F.R
-rr<&=rV$BB!#,A+rr<&[rV$QX!!)cf+TT4RpBSqC%JTSs!9F+Q![%KhmIpS\JcC<$JcC<$JcF0u
-J,~>
-JcC<$JcD5>!!)fX"1S=Bg&'t7])WcKkQ4idHi3(/Qn)SDkl1V_f)=h4!!(UKkl1Vcf'!;<ci*&0
-ScAc?roj@^!-nJ+!e:8Iroj@^!7q,4#M&kTkic.L@f5EpE<&>hkPtV6rTF;b!.4Y-!gkKGp#lAU
-JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!)f^"2+[HhtugC^Ao5PmK-SmIf/U8S1J1Lmf*7eg\pR?!!(dPmf*7ig[5:HeG\e;
-U&Y2HrpKdd!.4\4!e^POrpKdd!8IJ?#MT4Ymd=9ZAc1s$F9"\rmJm7ArU'_k!.Ok6!h:fOp$Me[
-JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!)fg"2k0OkPOuT`rI+YpB"Y$KDbHFU+U*Xp\t3njSeiQ!!)*Yp\t3rjS&lZh#6sL
-W;lqXrqHEm!.b%B!f6nWrqHEm!9F+Q#NPjbp\/"pC&I]1GQ:5-pAb3SrV$A"!/(4D!hq;[p%JFd
-JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!)cW"%*&?]D^pq^*Nc2roaHu":1e%kQAL3!.b(4rr<&MrTO7]!7q,4rr<2QkSXAX
-roaKk'`\6Zroj@^#7\</ke.K-[JoCi!!(UKkQo`>!9iX\"9XthkQmme!3,2G!!(UKkQAO%#c%C_
-"2,?JJG&++!.k0$s+13$s+13us*t~>
-JcC<$JcD5>!!)c]"%<2C^]!R&_^5A;rpBm+":1q)mK:<?!/1@>rr<&RrU0[c!8IJ?rr<2VmMZ(c
-rpBp!'`\6_rpKdd#7\H9m_TM9])M-t!!(dPmKhPI!:K9m"9Y+lmKfZp!3YbX!!(dPmK:?0#cI[i
-"2Y`PK_=a5!.k0$s+13$s+13us*t~>
-JcC<$JcD5>!!)cf"%WDGa8P`7as[7Jrq?N;":;40pB/MO!/^^Lrr<&[rV-<l!9F+Qrr<2_pDX*r
-rq?Q1('"?hrqHEm#7efKpW3sI_>a3/!!)*YpB]g[!;H61"9Y=rpB[i*!4;Lp!!)*YpB/P@$*F4$
-"3D5WM=pTC!.k0$s+13$s+13us*t~>
-JcC<$JcD5>!!)cW$e[K>!$b!-.KKNTkPaTNNs#G5:HARX8`fs8rr<&MrTO7]!7q,4rr<JYk^`^7
-2bbk(4=C3?roj@^"rRS263R@5rTO7]!7q,4!nI>OroaWK!rsiH0E;-"roj@^!7q)3$',2h.o/2.
-!(l;FkPtU6s+13$s+13$s3gpt~>
-JcC<$JcD5>!!)c]$f3oE!$b'0.ffWWmJZGZP6:k:;*4p\9C)TFrr<&RrU0[c!8IJ?rr<J^mY(WA
-3);1-4t-KFrpKdd"r[Y46O!O:rU0[c!8IJ?!o!\TrpC&U!rslK0`V6&rpKdd!8IG>$'PJl/5\M3
-!))YNmJm6<s+13$s+13$s3gpt~>
-JcC<$JcD5>!!)cf$g0VP!$t<8/HGi]pAO^lQimCA<'CBa:%\GZrr<&[rV-<l!9F+Qrr<JgpPJqO
-3`7X35UuiRrqHEm"rd_87KrjBrV-<l!9F+Q!os=]rq?\c!rsrP1B7H-rqHEm!9F(P$((hq/lY":
-!)<+YpAb2Es+13$s+13$s3gpt~>
-JcC<$JcD5>!!)`V#j.OH)[-<]9rn-S#J3nP"Um;Lk5FND!!(UKkl1V_f)=h4!"@HBk_gno$TF./
-@K:NLkl1Vd_cI?R32HK9rr<&MrTF=6!!)u]#.dSG";=J8rTO7]!7q&2#J3nP"Um;Lk4Ij;!.k0$
-s+13$s+13us*t~>
-JcC<$JcD5>!!)`\#je*T*!QK_:TsW_#JX7V"Um>Qm/?AP!!(dPmf*7eg\pR?!"@WMmZ/k&$TO@:
-AH6rRmf*7jaBB,[3iMuErr<&RrU'aA!!)uc#/3qM";FS?rU0[c!8ID=#JX7V"Um>Qm.B]G!.k0$
-s+13$s+13us*t~>
-JcC<$JcD5>!!)`e#kare*<lTa;RZGr#KKpb"V!JYp&4Xb!!)*Yp\t3njSeiQ!"@r_pQR66$p'dK
-B`NP[p\t3scWq(f4KeVVrr<&[rV$BS!!)ul#0'UY";F\IrV-<l!9F%O#KKpb"V!JYp%7tY!.k0$
-s+13$s+13us*t~>
-JcC<$JcD5>!!'Uorr<&M^utauJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!'Uurr<&R_!V1&JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!'V)rr<&[_"Rg/JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!'Uorr<&M^utauJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!'Uurr<&R_!V1&JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!'V)rr<&[_"Rg/JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!'Uorr<&M^utauJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!'Uurr<&R_!V1&JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!'V)rr<&[_"Rg/JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!'Uorr<&M^utauJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!'Uurr<&R_!V1&JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!'V)rr<&[_"Rg/JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%T<p?hn\JcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>JH5<BJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>JH5<BJcC<$JcC<$JcF0uJ,~>
-JcC<$JcD5>JH5<BJcC<$JcC<$JcF0uJ,~>
-JcC<$JcC<$hZ*#gJcC<$JcC<$JcD#8J,~>
-JcC<$JcC<$hZ*#gJcC<$JcC<$JcD#8J,~>
-JcC<$JcC<$hZ*#gJcC<$JcC<$JcD#8J,~>
-JcC<$JcC<$irA/cJcC<$JcC<$JcD/<J,~>
-JcC<$JcC<$irA/cJcC<$JcC<$JcD/<J,~>
-JcC<$JcC<$irA/cJcC<$JcC<$JcD/<J,~>
-JcC<$JcC<$k5Y,!rr;rArVuQ8JcC<$JcC<$JcD;@J,~>
-JcC<$JcC<$k5Y,!rr;rArVuQ8JcC<$JcC<$JcD;@J,~>
-JcC<$JcC<$k5Y,!rr;rArVuQ8JcC<$JcC<$JcD;@J,~>
-JcC<$JcC<$l2UG$qu?W>qZ$65JcC<$JcC<$JcDDCJ,~>
-JcC<$JcC<$l2UG$qu?W>qZ$65JcC<$JcC<$JcDDCJ,~>
-JcC<$JcC<$l2UG$qu?W>qZ$65JcC<$JcC<$JcDDCJ,~>
-JcC<$JcC<$mJlk(p](3:pAag1JcC<$JcC<$JcDPGJ,~>
-JcC<$JcC<$mJlk(p](3:pAag1JcC<$JcC<$JcDPGJ,~>
-JcC<$JcC<$mJlk(p](3:pAag1JcC<$JcC<$JcDPGJ,~>
-JcC<$JcC<$nc/:,oDed6o)JC-JcC<$JcC<$JcD\KJ,~>
-JcC<$JcC<$nc/:,oDed6o)JC-JcC<$JcC<$JcD\KJ,~>
-JcC<$JcC<$nc/:,oDed6o)JC-JcC<$JcC<$JcD\KJ,~>
-JcC<$JcC<$o`+U/nGiI3n,N(*JcC<$JcC<$JcDeNJ,~>
-JcC<$JcC<$o`+U/nGiI3n,N(*JcC<$JcC<$JcDeNJ,~>
-JcC<$JcC<$o`+U/nGiI3n,N(*JcC<$JcC<$JcDeNJ,~>
-JcC<$JcC<$q#C$3m/R%/li6Y&JcC<$JcC<$JcDqRJ,~>
-JcC<$JcC<$q#C$3m/R%/li6Y&JcC<$JcC<$JcDqRJ,~>
-JcC<$JcC<$q#C$3m/R%/li6Y&JcC<$JcC<$JcDqRJ,~>
-JcC<$JcC<$r;ZH7kl:V+kPt5"JcC<$JcC<$JcE(VJ,~>
-JcC<$JcC<$r;ZH7kl:V+kPt5"JcC<$JcC<$JcE(VJ,~>
-JcC<$JcC<$r;ZH7kl:V+kPt5"JcC<$JcC<$JcE(VJ,~>
-JcC<$JcC<$s8Vc:jo>;(jT"ntJcC<$JcC<$JcE1YJ,~>
-JcC<$JcC<$s8Vc:jo>;(jT"ntJcC<$JcC<$JcE1YJ,~>
-JcC<$JcC<$s8Vc:jo>;(jT"ntJcC<$JcC<$JcE1YJ,~>
-JcC<$JcCB&p!)IqrQX:#p!&'fJcC<$JcC<$])R9~>
-JcC<$JcCB&p!)IqrQX:#p!&'fJcC<$JcC<$])R9~>
-JcC<$JcCB&p!)IqrQX:#p!&'fJcC<$JcC<$])R9~>
-JcC<$JcCK)p<DFnrQX-tp!&'fJcC<$JcC<$^Ai]~>
-JcC<$JcCK)p<DFnrQX-tp!&'fJcC<$JcC<$^Ai]~>
-JcC<$JcCK)p<DFnrQX-tp!&'fJcC<$JcC<$^Ai]~>
-JcC<$JcCW-p!)4jrQX$qp!&'fJcC<$JcC<$_>f#~>
-JcC<$JcCW-p!)4jrQX$qp!&'fJcC<$JcC<$_>f#~>
-JcC<$JcCW-p!)4jrQX$qp!&'fJcC<$JcC<$_>f#~>
-JcC<$JcCc1p!)(frQWmmp!&'fJcC<$JcC<$`W(G~>
-JcC<$JcCc1p!)(frQWmmp!&'fJcC<$JcC<$`W(G~>
-JcC<$JcCc1p!)(frQWmmp!&'fJcC<$JcC<$`W(G~>
-JcC<$JcCl4p!(tcrQWaip!&'fJcC<$JcC<$ao?k~>
-JcC<$JcCl4p!(tcrQWaip!&'fJcC<$JcC<$ao?k~>
-JcC<$JcCl4p!(tcrQWaip!&'fJcC<$JcC<$ao?k~>
-JcC<$JcD#8p!(h_rQWXfp!&'fJcC<$JcC<$bl<1~>
-JcC<$JcD#8p!(h_rQWXfp!&'fJcC<$JcC<$bl<1~>
-JcC<$JcD#8p!(h_rQWXfp!&'fJcC<$JcC<$bl<1~>
-JcC<$JcD/<p!(\[rQWLbp!&'fJcC<$JcC<$d/SU~>
-JcC<$JcD/<p!(\[rQWLbp!&'fJcC<$JcC<$d/SU~>
-JcC<$JcD/<p!(\[rQWLbp!&'fJcC<$JcC<$d/SU~>
-JcC<$JcD8?p!(SXrQW@^p!&'fJcC<$JcC<$eGk%~>
-JcC<$JcD8?p!(SXrQW@^p!&'fJcC<$JcC<$eGk%~>
-JcC<$JcD8?p!(SXrQW@^p!&'fJcC<$JcC<$eGk%~>
-JcC<$JcDDCp!(GTrQW7[p!&'fJcC<$JcC<$fDg@~>
-JcC<$JcDDCp!(GTrQW7[p!&'fJcC<$JcC<$fDg@~>
-JcC<$JcDDCp!(GTrQW7[p!&'fJcC<$JcC<$fDg@~>
-JcC<$JcDPGp!(;PrQW+Wp!&'fJcC<$JcC<$g])d~>
-JcC<$JcDPGp!(;PrQW+Wp!&'fJcC<$JcC<$g])d~>
-JcC<$JcDPGp!(;PrQW+Wp!&'fJcC<$JcC<$g])d~>
-JcC<$JcDYJp!(2MrQVtSp<A0gJcC<$JcC<$hZ&*~>
-JcC<$JcDYJp!(2MrQVtSp<A0gJcC<$JcC<$hZ&*~>
-JcC<$JcDYJp!(2MrQVtSp<A0gJcC<$JcC<$hZ&*~>
-JcC<$JcDeNp!(&IrQVkPp!&'fJcC<$JcC<$ir=N~>
-JcC<$JcDeNp!(&IrQVkPp!&'fJcC<$JcC<$ir=N~>
-JcC<$JcDeNp!(&IrQVkPp!&'fJcC<$JcC<$ir=N~>
-JcC<$JcDqRp!'oErQV_Lp!&'fJcC<$JcC<$k5Tr~>
-JcC<$JcDqRp!'oErQV_Lp!&'fJcC<$JcC<$k5Tr~>
-JcC<$JcDqRp!'oErQV_Lp!&'fJcC<$JcC<$k5Tr~>
-JcC<$JcE%Up!'fBrQVVIp!&'fJcC<$JcC<$l2Q8~>
-JcC<$JcE%Up!'fBrQVVIp!&'fJcC<$JcC<$l2Q8~>
-JcC<$JcE%Up!'fBrQVVIp!&'fJcC<$JcC<$l2Q8~>
-JcC<$JcE1Yp!'Z>rQVJEp!&'fJcC<$JcC<$mJh\~>
-JcC<$JcE1Yp!'Z>rQVJEp!&'fJcC<$JcC<$mJh\~>
-JcC<$JcE1Yp!'Z>rQVJEp!&'fJcC<$JcC<$mJh\~>
-JcC<$JcE:\p<BW;rQV>Ap!&'fJcC<$JcC<$nc++~>
-JcC<$JcE:\p<BW;rQV>Ap!&'fJcC<$JcC<$nc++~>
-JcC<$JcE:\p<BW;rQV>Ap!&'fJcC<$JcC<$nc++~>
-JcC<$JcEF`p!'E7rQV5>p!&'fJcC<$JcC<$o`'F~>
-JcC<$JcEF`p!'E7rQV5>p!&'fJcC<$JcC<$o`'F~>
-JcC<$JcEF`p!'E7rQV5>p!&'fJcC<$JcC<$o`'F~>
-JcC<$JcERdp!'93rQV):p!&'fJcC<$JcC<$q#>j~>
-JcC<$JcERdp!'93rQV):p!&'fJcC<$JcC<$q#>j~>
-JcC<$JcERdp!'93rQV):p!&'fJcC<$JcC<$q#>j~>
-JcC<$JcE[gp!'00rQUr6p!&'fJcC<$JcC<$r;V9~>
-JcC<$JcE[gp!'00rQUr6p!&'fJcC<$JcC<$r;V9~>
-JcC<$JcE[gp!'00rQUr6p!&'fJcC<$JcC<$r;V9~>
-JcC<$JcEgkp!'$,rQUi3p!&'fJcC<$JcC<$s8RT~>
-JcC<$JcEgkp!'$,rQUi3p!&'fJcC<$JcC<$s8RT~>
-JcC<$JcEgkp!'$,rQUi3p!&'fJcC<$JcC<$s8RT~>
-JcC<$JcEsop!&m(rQU]/p!&'fJcC<$JcCB&J,~>
-JcC<$JcEsop!&m(rQU]/p!&'fJcC<$JcCB&J,~>
-JcC<$JcEsop!&m(rQU]/p!&'fJcC<$JcCB&J,~>
-JcC<$JcF'rp!&d%rQUQ+p!&'fJcC<$JcCN*J,~>
-JcC<$JcF'rp!&d%rQUQ+p!&'fJcC<$JcCN*J,~>
-JcC<$JcF'rp!&d%rQUQ+p!&'fJcC<$JcCN*J,~>
-JcC<$JcF4!p!&X!rQUH(p!&'fJcC<$JcCW-J,~>
-JcC<$JcF4!p!&X!rQUH(p!&'fJcC<$JcCW-J,~>
-JcC<$JcF4!p!&X!rQUH(p!&'fJcC<$JcCW-J,~>
-JcC<$JcF@%p!&KrrQU<$p!&'fJcC<$JcCc1J,~>
-JcC<$JcF@%p!&KrrQU<$p!&'fJcC<$JcCc1J,~>
-JcC<$JcF@%p!&KrrQU<$p!&'fJcC<$JcCc1J,~>
-JcC<$JcFI(p!&BorQU/up!&'fJcC<$JcCo5J,~>
-JcC<$JcFI(p!&BorQU/up!&'fJcC<$JcCo5J,~>
-JcC<$JcFI(p!&BorQU/up!&'fJcC<$JcCo5J,~>
-JcC<$JcFU,p!&6krQU&rp!&'fJcC<$JcD#8J,~>
-JcC<$JcFU,p!&6krQU&rp!&'fJcC<$JcD#8J,~>
-JcC<$JcFU,p!&6krQU&rp!&'fJcC<$JcD#8J,~>
-JcC<$JcFa0p!&*grQTonp!&'fJcC<$JcD/<J,~>
-JcC<$JcFa0p!&*grQTonp!&'fJcC<$JcD/<J,~>
-JcC<$JcFa0p!&*grQTonp!&'fJcC<$JcD/<J,~>
-JcC<$JcFj3p!&'fs8W&BJcG]Kp!&'fJcC<$JcD;@J,~>
-JcC<$JcFj3p!&'fs8W&BJcG]Kp!&'fJcC<$JcD;@J,~>
-JcC<$JcFj3p!&'fs8W&BJcG]Kp!&'fJcC<$JcD;@J,~>
-JcC<$JcG!7p!&'fqu?W>JcGTHp!&'fJcC<$JcDDCJ,~>
-JcC<$JcG!7p!&'fqu?W>JcGTHp!&'fJcC<$JcDDCJ,~>
-JcC<$JcG!7p!&'fqu?W>JcGTHp!&'fJcC<$JcDDCJ,~>
-JcC<$JcG*:p<A0gp](3:JcGHDp!&'fJcC<$JcDPGJ,~>
-JcC<$JcG*:p<A0gp](3:JcGHDp!&'fJcC<$JcDPGJ,~>
-JcC<$JcG*:p<A0gp](3:JcGHDp!&'fJcC<$JcDPGJ,~>
-JcC<$JcG6>p!&'fo`+m7JcG<@p<A0gJcC<$JcDYJJ,~>
-JcC<$JcG6>p!&'fo`+m7JcG<@p<A0gJcC<$JcDYJJ,~>
-JcC<$JcG6>p!&'fo`+m7JcG<@p<A0gJcC<$JcDYJJ,~>
-JcC<$JcGBBp!&'fnGiI3JcG3=p!&'fJcC<$JcDeNJ,~>
-JcC<$JcGBBp!&'fnGiI3JcG3=p!&'fJcC<$JcDeNJ,~>
-JcC<$JcGBBp!&'fnGiI3JcG3=p!&'fJcC<$JcDeNJ,~>
-JcC<$JcGKEp!&'fmJm.0JcG'9p!&'fJcC<$JcDqRJ,~>
-JcC<$JcGKEp!&'fmJm.0JcG'9p!&'fJcC<$JcDqRJ,~>
-JcC<$JcGKEp!&'fmJm.0JcG'9p!&'fJcC<$JcDqRJ,~>
-JcC<$JcGWIp!&'fl2U_,JcFs6p!&'fJcC<$JcE%UJ,~>
-JcC<$JcGWIp!&'fl2U_,JcFs6p!&'fJcC<$JcE%UJ,~>
-JcC<$JcGWIp!&'fl2U_,JcFs6p!&'fJcC<$JcE%UJ,~>
-JcC<$JcGcMp!&'fjo>;(JcFg2p!&'fJcC<$JcE1YJ,~>
-JcC<$JcGcMp!&'fjo>;(JcFg2p!&'fJcC<$JcE1YJ,~>
-JcC<$JcGcMp!&'fjo>;(JcFg2p!&'fJcC<$JcE1YJ,~>
-JcC<$K)bMgJcFa0rQToni;`JpJcC<$JcC<$])R9~>
-JcC<$K)bMgJcFa0rQToni;`JpJcC<$JcC<$])R9~>
-JcC<$K)bMgJcFa0rQToni;`JpJcC<$JcC<$])R9~>
-JcC<$LB$qkJcFU,rQTonh>d/mJcC<$JcC<$^&NT~>
-JcC<$LB$qkJcFU,rQTonh>d/mJcC<$JcC<$^&NT~>
-JcC<$LB$qkJcFU,rQTonh>d/mJcC<$JcC<$^&NT~>
-JcC<$MZ<@oJcFI(rQTong&L`iJcC<$JcC<$_>f#~>
-JcC<$MZ<@oJcFI(rQTong&L`iJcC<$JcC<$_>f#~>
-JcC<$MZ<@oJcFI(rQTong&L`iJcC<$JcC<$_>f#~>
-JcC<$NW8[rJcF@%rQTonec5<eJcC<$JcC<$`W(G~>
-JcC<$NW8[rJcF@%rQTonec5<eJcC<$JcC<$`W(G~>
-JcC<$NW8[rJcF@%rQTonec5<eJcC<$JcC<$`W(G~>
-JcC<$OoP+!JcF4!rQTondf9!bJcC<$JcC<$aT$b~>
-JcC<$OoP+!JcF4!rQTondf9!bJcC<$JcC<$aT$b~>
-JcC<$OoP+!JcF4!rQTondf9!bJcC<$JcC<$aT$b~>
-JcC<$Q2gO%JcF'rrQToncN!R^JcC<$JcC<$bl<1~>
-JcC<$Q2gO%JcF'rrQToncN!R^JcC<$JcC<$bl<1~>
-JcC<$Q2gO%JcF'rrQToncN!R^JcC<$JcC<$bl<1~>
-JcC<$R/cj(JcEsorQTonb5_.ZJcC<$JcC<$d/SU~>
-JcC<$R/cj(JcEsorQTonb5_.ZJcC<$JcC<$d/SU~>
-JcC<$R/cj(JcEsorQTonb5_.ZJcC<$JcC<$d/SU~>
-JcC<$SH&9,JcEgkrQTona8bhWJcC<$JcC<$e,Op~>
-JcC<$SH&9,JcEgkrQTona8bhWJcC<$JcC<$e,Op~>
-JcC<$SH&9,JcEgkrQTona8bhWJcC<$JcC<$e,Op~>
-JcC<$TE"W0JcE[grQTon_uKDSJcC<$JcC<$fDg@~>
-JcC<$TE"W0JcE[grQTon_uKDSJcC<$JcC<$fDg@~>
-JcC<$TE"W0JcE[grQTon_uKDSJcC<$JcC<$fDg@~>
-JcC<$U]:#3JcERdrQTon^]3uOJcC<$JcC<$g])d~>
-JcC<$U]:#3JcERdrQTon^]3uOJcC<$JcC<$g])d~>
-JcC<$U]:#3JcERdrQTon^]3uOJcC<$JcC<$g])d~>
-JcC<$VuQG7JcEF`rQTon]`7ZLJcC<$JcC<$hZ&*~>
-JcC<$VuQG7JcEF`rQTon]`7ZLJcC<$JcC<$hZ&*~>
-JcC<$VuQG7JcEF`rQTon]`7ZLJcC<$JcC<$hZ&*~>
-JcC<$WrMb:JcE=]rQTon\Gu6HJcC<$JcC<$ir=N~>
-JcC<$WrMb:JcE=]rQTon\Gu6HJcC<$JcC<$ir=N~>
-JcC<$WrMb:JcE=]rQTon\Gu6HJcC<$JcC<$ir=N~>
-JcC<$Y5e1>JcE1YrQTon[/]gDJcC<$JcC<$k5Tr~>
-JcC<$Y5e1>JcE1YrQTon[/]gDJcC<$JcC<$k5Tr~>
-JcC<$Y5e1>JcE1YrQTon[/]gDJcC<$JcC<$k5Tr~>
-JcC<$ZN'UBJcE%UrQTonZ2aLAJcC<$JcC<$l2Q8~>
-JcC<$ZN'UBJcE%UrQTonZ2aLAJcC<$JcC<$l2Q8~>
-JcC<$ZN'UBJcE%UrQTonZ2aLAJcC<$JcC<$l2Q8~>
-JcC<$[K#pEJcDqRrQTonXoJ(=JcC<$JcC<$mJh\~>
-JcC<$[K#pEJcDqRrQTonXoJ(=JcC<$JcC<$mJh\~>
-JcC<$[K#pEJcDqRrQTonXoJ(=JcC<$JcC<$mJh\~>
-JcC<$\c;?IJcDeNrQTonWW2Y9JcC<$JcC<$nc++~>
-JcC<$\c;?IJcDeNrQTonWW2Y9JcC<$JcC<$nc++~>
-JcC<$\c;?IJcDeNrQTonWW2Y9JcC<$JcC<$nc++~>
-JcC<$^&RcMJcDYJrQTonVZ6>6JcC<$JcC<$o`'F~>
-JcC<$^&RcMJcDYJrQTonVZ6>6JcC<$JcC<$o`'F~>
-JcC<$^&RcMJcDYJrQTonVZ6>6JcC<$JcC<$o`'F~>
-JcC<$_#O)PJcDPGrQTonUAso2JcC<$JcC<$q#>j~>
-JcC<$_#O)PJcDPGrQTonUAso2JcC<$JcC<$q#>j~>
-JcC<$_#O)PJcDPGrQTonUAso2JcC<$JcC<$q#>j~>
-JcC<$`;fMTJcDDCrQTonT)\N/JcC<$JcC<$qu;0~>
-JcC<$`;fMTJcDDCrQTonT)\N/JcC<$JcC<$qu;0~>
-JcC<$`;fMTJcDDCrQTonT)\N/JcC<$JcC<$qu;0~>
-JcC<$a8bkXJcD8?rQTonS,`0+JcC<$JcC<$s8RT~>
-JcC<$a8bkXJcD8?rQTonS,`0+JcC<$JcC<$s8RT~>
-JcC<$a8bkXJcD8?rQTonS,`0+JcC<$JcC<$s8RT~>
-JcC<$bQ%7[JcD/<rQTonQiHa'JcC<$JcCB&J,~>
-JcC<$bQ%7[JcD/<rQTonQiHa'JcC<$JcCB&J,~>
-JcC<$bQ%7[JcD/<rQTonQiHa'JcC<$JcCB&J,~>
-JcC<$ci<[_JcD#8rQTonPlLF$JcC<$JcCK)J,~>
-JcC<$ci<[_JcD#8rQTonPlLF$JcC<$JcCK)J,~>
-JcC<$ci<[_JcD#8rQTonPlLF$JcC<$JcCK)J,~>
-JcC<$df9!bJcCo5rQTonOT5!uJcC<$JcCW-J,~>
-JcC<$df9!bJcCo5rQTonOT5!uJcC<$JcCW-J,~>
-JcC<$df9!bJcCo5rQTonOT5!uJcC<$JcCW-J,~>
-JcC<$f)PEfJcCc1rQTonN;rRqJcC<$JcCc1J,~>
-JcC<$f)PEfJcCc1rQTonN;rRqJcC<$JcCc1J,~>
-JcC<$f)PEfJcCc1rQTonN;rRqJcC<$JcCc1J,~>
-JcC<$gAgijJcCW-rQTonM?!7nJcC<$JcCl4J,~>
-JcC<$gAgijJcCW-rQTonM?!7nJcC<$JcCl4J,~>
-JcC<$gAgijJcCW-rQTonM?!7nJcC<$JcCl4J,~>
-JcC<$h>d/mJcCN*rQTonL&^hjJcC<$JcD#8J,~>
-JcC<$h>d/mJcCN*rQTonL&^hjJcC<$JcD#8J,~>
-JcC<$h>d/mJcCN*rQTonL&^hjJcC<$JcD#8J,~>
-JcC<$iW&SqJcCB&rQTonJcGDfJcC<$JcD/<J,~>
-JcC<$iW&SqJcCB&rQTonJcGDfJcC<$JcD/<J,~>
-JcC<$iW&SqJcCB&rQTonJcGDfJcC<$JcD/<J,~>
-JcC<$jo>"uJcC<$s8W&BJcC<$rr;Z9JcC<$JcD8?J,~>
-JcC<$jo>"uJcC<$s8W&BJcC<$rr;Z9JcC<$JcD8?J,~>
-JcC<$jo>"uJcC<$s8W&BJcC<$rr;Z9JcC<$JcD8?J,~>
-JcC<$kl:>#JcC<$r;Z`?JcC<$qZ$65JcC<$JcDDCJ,~>
-JcC<$kl:>#JcC<$r;Z`?JcC<$qZ$65JcC<$JcDDCJ,~>
-JcC<$kl:>#JcC<$r;Z`?JcC<$qZ$65JcC<$JcDDCJ,~>
-JcC<$m/Qb'JcC<$q#C<;JcC<$pAag1JcC<$JcDPGJ,~>
-JcC<$m/Qb'JcC<$q#C<;JcC<$pAag1JcC<$JcDPGJ,~>
-JcC<$m/Qb'JcC<$q#C<;JcC<$pAag1JcC<$JcDPGJ,~>
-JcC<$nGi1+JcC<$o`+m7JcC<$oDeL.JcC<$JcDYJJ,~>
-JcC<$nGi1+JcC<$o`+m7JcC<$oDeL.JcC<$JcDYJJ,~>
-JcC<$nGi1+JcC<$o`+m7JcC<$oDeL.JcC<$JcDYJJ,~>
-JcC<$oDeL.JcC<$nc/R4JcC<$n,N(*JcC<$JcDeNJ,~>
-JcC<$oDeL.JcC<$nc/R4JcC<$n,N(*JcC<$JcDeNJ,~>
-JcC<$oDeL.JcC<$nc/R4JcC<$n,N(*JcC<$JcDeNJ,~>
-JcC<$p]'p2JcC<$mJm.0JcC<$li6Y&JcC<$JcDqRJ,~>
-JcC<$p]'p2JcC<$mJm.0JcC<$li6Y&JcC<$JcDqRJ,~>
-JcC<$p]'p2JcC<$mJm.0JcC<$li6Y&JcC<$JcDqRJ,~>
-JcC<$qZ$96JcC<$l2U_,JcC<$kl:>#JcC<$JcE%UJ,~>
-JcC<$qZ$96JcC<$l2U_,JcC<$kl:>#JcC<$JcE%UJ,~>
-JcC<$qZ$96JcC<$l2U_,JcC<$kl:>#JcC<$JcE%UJ,~>
-JcC<$rr;Z9JcC<$k5YD)JcC<$jT"ntJcC<$JcE1YJ,~>
-JcC<$rr;Z9JcC<$k5YD)JcC<$jT"ntJcC<$JcE1YJ,~>
-JcC<$rr;Z9JcC<$k5YD)JcC<$jT"ntJcC<$JcE1YJ,~>
-JcC?%p!&'fJcFa0rQTonJcF[.p!&'fJcC<$])R9~>
-JcC?%p!&'fJcFa0rQTonJcF[.p!&'fJcC<$])R9~>
-JcC?%p!&'fJcFa0rQTonJcF[.p!&'fJcC<$])R9~>
-JcCH(p!&'fJcFX-rQTonJcFR+p!&'fJcC<$^&NT~>
-JcCH(p!&'fJcFX-rQTonJcFR+p!&'fJcC<$^&NT~>
-JcCH(p!&'fJcFX-rQTonJcFR+p!&'fJcC<$^&NT~>
-JcCT,p!&'fJcFL)rQTonJcFF'p!&'fJcC<$_>f#~>
-JcCT,p!&'fJcFL)rQTonJcFF'p!&'fJcC<$_>f#~>
-JcCT,p!&'fJcFL)rQTonJcFF'p!&'fJcC<$_>f#~>
-JcC`0p!&'fJcF@%rQTonJcF:#p<A0gJcC<$`;b>~>
-JcC`0p!&'fJcF@%rQTonJcF:#p<A0gJcC<$`;b>~>
-JcC`0p!&'fJcF@%rQTonJcF:#p<A0gJcC<$`;b>~>
-JcCi3p!&'fJcF7"rQTonJcF0up!&'fJcC<$aT$b~>
-JcCi3p!&'fJcF7"rQTonJcF0up!&'fJcC<$aT$b~>
-JcCi3p!&'fJcF7"rQTonJcF0up!&'fJcC<$aT$b~>
-JcCu7p!&'fJcF*srQTonJcF$qp!&'fJcC<$bl<1~>
-JcCu7p!&'fJcF*srQTonJcF$qp!&'fJcC<$bl<1~>
-JcCu7p!&'fJcF*srQTonJcF$qp!&'fJcC<$bl<1~>
-JcD,;p!&'fJcEsorQTonJcEpnp!&'fJcC<$ci8L~>
-JcD,;p!&'fJcEsorQTonJcEpnp!&'fJcC<$ci8L~>
-JcD,;p!&'fJcEsorQTonJcEpnp!&'fJcC<$ci8L~>
-JcD5>p!&'fJcEjlrQTonJcEdjp!&'fJcC<$e,Op~>
-JcD5>p!&'fJcEjlrQTonJcEdjp!&'fJcC<$e,Op~>
-JcD5>p!&'fJcEjlrQTonJcEdjp!&'fJcC<$e,Op~>
-JcDABp!&'fJcE^hrQTonJcEXfp!&'fJcC<$fDg@~>
-JcDABp!&'fJcE^hrQTonJcEXfp!&'fJcC<$fDg@~>
-JcDABp!&'fJcE^hrQTonJcEXfp!&'fJcC<$fDg@~>
-JcDMFp!&'fJcERdrQTonJcEOcp!&'fJcC<$gAc[~>
-JcDMFp!&'fJcERdrQTonJcEOcp!&'fJcC<$gAc[~>
-JcDMFp!&'fJcERdrQTonJcEOcp!&'fJcC<$gAc[~>
-JcDVIp!&'fJcEIarQTonJcEC_p!&'fJcC<$hZ&*~>
-JcDVIp!&'fJcEIarQTonJcEC_p!&'fJcC<$hZ&*~>
-JcDVIp!&'fJcEIarQTonJcEC_p!&'fJcC<$hZ&*~>
-JcDbMp!&'fJcE=]rQTonJcE7[p!&'fJcC<$ir=N~>
-JcDbMp!&'fJcE=]rQTonJcE7[p!&'fJcC<$ir=N~>
-JcDbMp!&'fJcE=]rQTonJcE7[p!&'fJcC<$ir=N~>
-JcDkPp<A0gJcE1YrQTonJcE.Xp!&'fJcC<$jo9i~>
-JcDkPp<A0gJcE1YrQTonJcE.Xp!&'fJcC<$jo9i~>
-JcDkPp<A0gJcE1YrQTonJcE.Xp!&'fJcC<$jo9i~>
-JcE"Tp!&'fJcE(VrQTonJcE"Tp!&'fJcC<$l2Q8~>
-JcE"Tp!&'fJcE(VrQTonJcE"Tp!&'fJcC<$l2Q8~>
-JcE"Tp!&'fJcE(VrQTonJcE"Tp!&'fJcC<$l2Q8~>
-JcE.Xp!&'fJcDqRrQTonJcDkPp!&'fJcC<$mJh\~>
-JcE.Xp!&'fJcDqRrQTonJcDkPp!&'fJcC<$mJh\~>
-JcE.Xp!&'fJcDqRrQTonJcDkPp!&'fJcC<$mJh\~>
-JcE7[p!&'fJcDhOrQTonJcDbMp!&'fJcC<$nGe"~>
-JcE7[p!&'fJcDhOrQTonJcDbMp!&'fJcC<$nGe"~>
-JcE7[p!&'fJcDhOrQTonJcDbMp!&'fJcC<$nGe"~>
-JcEC_p!&'fJcD\KrQTonJcDVIp!&'fJcC<$o`'F~>
-JcEC_p!&'fJcD\KrQTonJcDVIp!&'fJcC<$o`'F~>
-JcEC_p!&'fJcD\KrQTonJcDVIp!&'fJcC<$o`'F~>
-JcEOcp!&'fJcDPGrQTonJcDJEp!&'fJcC<$q#>j~>
-JcEOcp!&'fJcDPGrQTonJcDJEp!&'fJcC<$q#>j~>
-JcEOcp!&'fJcDPGrQTonJcDJEp!&'fJcC<$q#>j~>
-JcEXfp!&'fJcDGDrQTonJcDABp!&'fJcC<$qu;0~>
-JcEXfp!&'fJcDGDrQTonJcDABp!&'fJcC<$qu;0~>
-JcEXfp!&'fJcDGDrQTonJcDABp!&'fJcC<$qu;0~>
-JcEdjp!&'fJcD;@rQTonJcD5>p!&'fJcC<$s8RT~>
-JcEdjp!&'fJcD;@rQTonJcD5>p!&'fJcC<$s8RT~>
-JcEdjp!&'fJcD;@rQTonJcD5>p!&'fJcC<$s8RT~>
-JcEpnp!&'fJcD/<rQTonJcD):p!&'fJcCB&J,~>
-JcEpnp!&'fJcD/<rQTonJcD):p!&'fJcCB&J,~>
-JcEpnp!&'fJcD/<rQTonJcD):p!&'fJcCB&J,~>
-JcF$qp!&'fJcD&9rQTonJcCu7p!&'fJcCK)J,~>
-JcF$qp!&'fJcD&9rQTonJcCu7p!&'fJcCK)J,~>
-JcF$qp!&'fJcD&9rQTonJcCu7p!&'fJcCK)J,~>
-JcF0up!&'fJcCo5rQTonJcCi3p!&'fJcCW-J,~>
-JcF0up!&'fJcCo5rQTonJcCi3p!&'fJcCW-J,~>
-JcF0up!&'fJcCo5rQTonJcCi3p!&'fJcCW-J,~>
-JcF=$p!&'fJcF0uJH5<BJcC<$dJrpbJcC<$NW4M~>
-JcF=$p!&'fJcF0uJH5<BJcC<$dJrpbJcC<$NW4M~>
-JcF=$p!&'fJcF0uJH5<BJcC<$dJrpbJcC<$NW4M~>
-Rf@p=o`0RCNrK(ZJ`ugk!!%TMNrOY1oDjIBJcF0uJ,~>
-Rf@p=o`0RCNrK(ZJaW7"!!%TMNrOY1oDjIBJcF0uJ,~>
-Rf@p=o`0RCNrK(ZJbSm4!!%TMNrOY1oDjIBJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fY35lKbNJp+JcCc1!!%T6p?2JVJcCc1!!%T6p?2JVJcC<$df4g~>
-Rf<?fY3l;WbO,?1JcCc1!!%T<p?hn\JcCc1!!%T<p?hn\JcC<$df4g~>
-Rf<?fY4hqibP(u:JcCc1!!%TEp@eOeJcCc1!!%TEp@eOeJcC<$df4g~>
-Rf<?fkNE30N'\6^%52nXe*$kG37e)mrr<&MdHCQ1JcCc1!!(j=#j.C=&d&LnDp\@Err<&Mi9:1@
-!7oQ]!!%TMNrK(ZgZ\M7"9AucH/AJ_rr<&MYNPrdJcC<$df4g~>
-Rf<?fkO&W<O@'`c%5E.be*[:R3nsZ%rr<&RdI$u7JcCc1!!(jC#jdsH'*AUpEn:*Trr<&Ri9pUF
-!8Goh!!%TMNrK(Zg[=q="9AueI,t4nrr<&RYO2AjJcC<$df4g~>
-Rf<?fkP#8MPsuMl%PiLre+Wpc4QQM9rr<&[dJ!V@JcCc1!!(jL#kafZ'*AXrG2E)irr<&[i:m6O
-!9DQ%!!%TMNrK(Zg\:RF"9B#gJaE=/rr<&[YP/"sJcC<$df4g~>
-Rf<?fki`AY)upF3:Hf*c'<p!M!WiAQroj@^!7oQ]!!%TMNrK(ZhWP=*4obmO:dbut%BKBirr<&M
-i9:1@!7oQ]!!%TMNrK(ZgZ\Y;!)3Aj"\q/g!%HY#kl1V_f!"9;!.k0$s3gpt~>
-Rf<?fkjAec*<6O5;*PBf'XZBX!WiAVrpKdd!8Goh!!%TMNrK(ZhX1a656)!R;FVB$%BoZsrr<&R
-i9pUF!8Goh!!%TMNrK(Zg[>(A!)EMn"].Ak!%Qq*mf*7egTU#F!.k0$s3gpt~>
-Rf<?fkk>Fs*WQ[:<'grm'YDlh!WiA_rqHEm!9DQ%!!%TMNrK(ZhY.BG63%?X<Cmo*%^u9/rr<&[
-i:m6O!9DQ%!!%TMNrK(Zg\:^J!)`_t"]IYq!%d@4p\t3njKJ:X!.k0$s3gpt~>
-Rf<?fl0&8T"pKG6roaL>=TAiIe`d#5!7q/5s24p!dHCQ1JcCc1!!(m>")\*$f`((;jDFr.f_jt5
-_uSoWkl1V_f$W[]!.k01rr<&Rkl1V_f)4_6g,K(BrTO:"!9LEJ!!%TMJcF0uJ,~>
-Rf<?fl0\\^#6fY@rpBpJ>6#&PeaEG;!8IM@s2b9,dI$u7JcCc1!!(mD"*"<)h>ZgFl>Ze8h>H^@
-aT1Ybmf*7egX5Eh!.k01rr<&Rmf*7eg\gIAi&LdLrU0^-!:-iV!!%TMJcF0uJ,~>
-Rf<?fl1Y=n#6fhMrq?Q[?N:M\ebB(D!9F.Rs3Lc<dJ!V@JcCc1!!(mM"*FT/k5P)Xo5t$Ek5=uR
-ciE^rp\t3njO*]%!.k01rr<&Rp\t3njS\`SkW8cZrV-?=!;*Jh!!%TMJcF0uJ,~>
-Rf<?flKA?.)uu?&kQC!6!(,6"rr<&MbNJp+JcCc1!!(m>!Z1pRqre)7!/oLnrr<&MdHCQ1JcCc1
-!!(d;rr<&Mqre*e!#)<p!!%TMJcF0uJ,~>
-Rf<?flL"c:*<;T+mK;iC!(5<)rr<&RbO,?1JcCc1!!(mD!Z1pWqsFM?!0>e#rr<&RdI$u7JcCc1
-!!(dArr<&RqsFNp!#2C"!!%TMJcF0uJ,~>
-Rf<?flLtDK*WVo2pB1+X!(PN5rr<&[bP(u:JcCc1!!(mM!Z;!_qtC.I!0l.1rr<&[dJ!V@JcCc1
-!!(dJrr<&[qtC0+!#2C+!!%TMJcF0uJ,~>
-Rf<?flKA;.!'9r>"1g'ojS\3G]M]RM'MPq5kl1V_f)=e6ec5^Kkl1VeerMHj%6pomkkb>^kPtV6
-roj@^#1ehg#n9,"r9+EV1'S:fcRT"Hlf\<KJcCc1!!(m>!X&M<qre*G=/5]Wrr<\_ki`!He:&JB
-)0P-"C`EU"H05+irr<8OEZ#$,K]`9trr<&Mr9+@%<>brT:V>NI!!%TMNrK(ZgZ\Y;!7q&2!mUcM
-rTO7]!7q/5rr<8SO"UeK5HFbH#j%%0&d/RtN9C3(rr<8=5m@r>!'U8D"6C@%ce[db!.k0$s3gpt~>
-Rf<?flL"_8!'L)F"26C"lMU&S_,M6T'hu:<mf*7eg\pOAgAh6Pmf*7kgQO>u%7%,rmeZtdmJm7A
-rpKdd#2>=r#n9/'r9aia1C"Lke1:USlg=`QJcCc1!!(mD!X&MAqsFNQ>,V;drr<\dmd:&Tfn(=L
-)L1Z2D]K$(I-gk#rr<8UFW(H2L[>$.rr<&Rr9ad0<uD/V;8M)V!!%TMNrK(Zg[>(A!8ID=!n.,S
-rU0[c!8IM@rr<8XP;*@Q5d1.S#j[U;'*J\!OR<&8rr<8B63e/B!'gDL"7$d+eD9Nm!.k0$s3gpt~>
-Rf<?flLt@F!'^5Q"3*!/oDJ=ea]B>`'i;aFp\t3njSefSj8]2Yp\t3tjHq\0%R[](p\OpmpAb3S
-rqHEm#3;.,$4]G3r:^Jp2$X^pgb&Tflh:AZJcCc1!!(mM!X&MHqtC/`?*4&!rr<\mp\+XfieJZ[
-)h%GIEukN.JbB$:rr<8]GoHr9N:m2Err<&[r:^E@=rIP[<6<tj!!%TMNrK(Zg\:^J!9F%O!o!\[
-rV-<l!9F.Rrr<8aQnf!Y6alsf#kXEL'*J_$Q1k4Orr<8I70aJF!($PW"8!H5gth])!.k0$s3gpt~>
-Rf<?flKA:9!/pC2#a,;j.SVMq!f$^<rr<&MrTF=6!!)u]rr<^-"$'$r!!8nYkYhH]9N+mR!!(UL
-kl1Vf:'3LM*WQ89roaZ7!!PYS"W80Xf'DN"!.k01rr<&UkQ<C:0=g`=rr<\_ki`!H6O,tE!W['k%
-S/V]!-eG+rr<6k!BEOP!)ig[rr<&MrTFNX"opDQ/H>sAhWOq>JcCc1!!(d;rr<&Mqre*M!'U;Er
-r<&Mroj@^#>P@]9HF08UAj?^7fX,k:+6/CFT1M(!!a_e9-BT,!mU]-!i#`_gun_<JcC<$df4g~>
-Rf<?flL"^A!0?[<#aGMm.o.i!!f?pErr<&RrU'aA!!)ucrr<^/"$97"!!9%cmSs5e:/t<^!!(dQ
-mf*7l:]idS*rlA>rpC)@!!P\U"W80Xg["8-!.k01rr<&UmK5*B0tm5Irr<\dmd:&T70c7J!W[0o%
-SAha!.+Y4rr<6m!BWaU!*&scrr<&RrU'rb#66PU/cZ'FhX1@DJcCc1!!(dArr<&RqsFNW!'gGMr
-r<&RrpKdd#>bLa:*0H;VZ,uh8H9Ap:auGFGQ.%1!!a_f9d-#3!n.&8!iH#eh!P.BJcC<$df4g~>
-Rf<?flLt?M!0m$J#b(qs/Q+;'!fm9Srr<&[rV$BS!!)ulrr<^2"$KL(!!97rpK.Cq;-6rp!!)*Z
-p\t3u;Zf0[+92JErq?_N!!Pe["WA9ZjQlO?!.k01rr<&UpB*)L1<&n[rr<\mp\+Xf8-haT!W[<u%
-o#4g!.Y"Brr<6p!Bj!Z!*B0orr<&[rV$Sr#66VZ0)u0MhY.!MJcCc1!!(dJrr<&[qtC/f!($SXr
-r<&[rqHEm#?(^f;'5i?XT%r"9E5]!;_.nKI/`m?!!aei:ElM=!o!VI!j)Gnh"LdKJcC<$df4g~>
-Rf<?flKA9c!5.md"2P'@PQ'bOT*5;%ki`!Hf)=e6ec5^Kkl1Vf(r5A!j\Gk4roj@^!7q/5rr<&M
-roj@^'H"XLkiGS?1[+&;!XlL$kdq?*!7pK"!!%TMNrK(ZhWP3B!rr<C>a3P/kl1Vqf');t!$'2G
-k_K3=.FmYGM?"Ilkl1Vk"Jb2E^^pL;ki`!Hf)Fk8a9W<]roaHU"p`0*kPtU6s,R*Z!8H`;!!(UL
-kQU(tOUh`.rTO7]!7q/5rr<KF_!("D:B337kb%o-h#?LJK)cJGki`!H0&YsVk>_M*rTF;S!1r!0
-!!%TMJcF0uJ,~>
-Rf<?flL"]i!5\6o"3(EEQi?CYUBUe/md:&Tg\pOAgAh6Pmf*7l(rbq2lVRX=rpKdd!8IM@rr<&R
-rpKdd'H"gWmd!^M2"'eM!Xl[/m_B>5!8Hi-!!%TMNrK(ZhX1WM!rr<D?C94:mf*8"g[=J0!$0GS
-mYh,G.ba=YNW9mpmf*7q"K1\U`=W*Emd:&Tg]$UCbm4ifrpBl_#7&H0mJm6<s,R*Z!8HrA!!(dQ
-mKMq0PRn,6rU0[c!8IM@rr<KF`U<0[;#iH@m\Bh8ir8?VL&_hQmd:&T0]qfjm8j:5rU'_[!2A9:
-!!%TMJcF0uJ,~>
-Rf<?flLt>s!6Og+"3goLSc8?hWWiO=p\+XfjSefSj8]2Yp\t3u)9hjLoMbfKrqHEm!9F.Rrr<&[
-rqHEm'H,-hp[hDb2YZsh!Y!!@pW*mG!9EJ?!!%TMNrK(ZhY.8\!rr<E@\2?Lp\t4+jS/BK!$9ee
-pQ5FU/E?L!P5lI!p\t4%"KhFmbRjiSp\+XfjSnlUeHlf"rq?Mo#7/f9pAb2Es,R*Z!8I8J!!)*Z
-pBC3KRLfeErV-<l!9F.Rrr<KGbkLl(;ueiNpSn3HlMgMgMZ=@_p\+Xf1%+f0p0%HFrV$@f!3+cJ
-!!%TMJcF0uJ,~>
-Rf<?flKA9P!7LH%!a5S3r9+B+!(Z8:!!(UKkQ9<8!<)-]!!&#WkQ8?r$3'/g!!(ULkl1V_f)Fn5
-!!&#WkQe^"$0^S[!-J2'"+L:Nf'DN"!.k01rr<&TkQ.b2qu?dHKB)jmrr<5Rki`!HOT+GGfDkoD
-roaXA!!(j=kPtTlrTFK=!(,o5!!(ULkQ52nMYuZ>DZF5'kPtU6s,R*Z!8H`4!!*>-r94.\!7q/5
-rr<%YrTFKu!"%lQR7O7SkQp&G!8H`$!!&2\kR"Ko+6VkOe--TJgun_<JcC<$df4g~>
-Rf<?flL"]V!8-l1!aG_8r9af4!(lVH!!(dPmK2,C!<)?c!!&/[mK10($3'Am!!(dQmf*7eg]$X@
-!!&/[mK^N-$1@4i!-eD0"+pRRg["8-!.k01rr<&TmK'O=qu?dIL?SO&rr<5Wmd:&TPQ'tPh#IGM
-rpC'M!!)'ImJm5urU'oF!(?8C!!(dQmK-r"Nr8;HEWBY-mJm6<s,R*Z!8Hr:!!*>1r9jRb!8IM@
-rr<%]rU'p+!"&)]SP$!^mKhnS!9*A6!!&>`mKp<%+RSUbf``,Uh!P.BJcC<$df4g~>
-Rf<?flLt>_!9!GB!al"@r:^GA!)3.]!!)*YpB'CU!<)Zl!!&>`pB&D9$NBf"!!)*Zp\t3njSnoR
-!!&>`pBSb>$MX:+!.4\=",HpWjQlO?!.k01rr<&TpAq`Oqu?dKMt-]=rr<5`p\+XfRJup_jo>C]
-rq?]^!!)?ZpAb2-rV$PT!(ZeX!!)*ZpB#%/PPk.VFoZ45pAb2Es,R*Z!8I8C!!*A9r:g3k!9F.R
-rr<%brV$Q<!"/JpUJ8&mpB^-d!9s7P!!&PfpBeM5+nk[)iWU+hh"LdKJcC<$df4g~>
-Rf<?flKA9R!7:<#![%KJr9+C(!"A)T!!(UKkQ9<8!<)-]!!(":kQ966!WM<_!!(ULkl1V_f)Fn5
-!!(":kQfT;!U/_l!4i'l"31BAf'DN"!.k01rr<&SkQL(UE&In!!!+b+r94.\"kMo$!!'t9kl1V_
-cMcu,!!Us;kPtUdrTFL.!"A)T!!(ULkQ2t/bP^Q*ZiDE0kPtU6s,R*Z!8H`;!!#^l;[#oU#65ah
-rTO7]!7q/5rr<&<rTF=4!!2r[$K/OO!!(X7kPtV"r9+A4!3bVMIK40<kPtU6s+13us*t~>
-Rf<?flL"]Y!7p`/![.QPr9ag3!"A;`!!(dPmK2,C!<)?c!!(1?mK2&A!WMNe!!(dQmf*7eg]$X@
-!!(1?mK_DF!UfA#!58@!"3^`Fg["8-!.k01rr<&SmKDpfF#O=&!!+h2r9jRb"l&J5!!(.>mf*7e
-e,A_7!!V-FmJm6nrU'p9!"A;`!!(dQmK+X6d/<;5\H!u6mJm6<s,R*Z!8HrA!!#dn<<Z2Z#65dn
-rU0[c!8IM@rr<&ArU'a?!!2ra$Kf-]!!(gBmJm7-r9ae;!42+]JcK]CmJm6<s+13us*t~>
-Rf<?flLt>b!8d;@![7WXr:^HC!"J\s!!)*YpB'CU!<)Zl!!(FFpB'=S!WMin!!)*Zp\t3njSnoR
-!!(FFpBT[X!Vc=7!6+p2"4R;NjQlO?!.k01rr<&SpB:3*G<#m,!!+k<r:g3k"m#FP!!(CEp\t3n
-g\pmH!!VHXpAb3)rV$QJ!"J\s!!)*ZpAuZAf_kIF^]5e?pAb2Es,R*Z!8I8J!!#mq=9VVb#QPq#
-rV-<l!9F.Rrr<&HrV$BQ!!2rj$LYur!!)-TpAb3=r:^FF!4qq!LB)ALpAb2Es+13us*t~>
-Rf<?flKA9j!4qab!XJePr9+CG!!(j=!!(UKkQ9<8!<)-]!!(RJkQ9<8!<23^!!(ULkl1V_f)Fn5
-!!(RJkQfZ=!9iVM!7Cc/"60@]f'DN"!.k01rr<&OkQTnB;ulu"r94.\"kMo$!!(OIkl1V_f)=h4
-!!Us;kPtV/rTFLH!!(d;!!(ULkPtn`!!!A`kPtU6s,R*Z!8H`;!!(UJkQB9i!)3@Trr<&Mroj@^
-!7h&3!nI>OroajDGWQ]B!!*'"f');t!7^r1#D)qVkia;m`nT\W!.k0$s3gpt~>
-Rf<?flL"]q!5A$l!XJeVr9agR!!)'I!!(dPmK2,C!<)?c!!(aOmK2,C!<2Ed!!(dQmf*7eg]$X@
-!!(aOmK_JH!:K7Z!8%2;"6]^bg["8-!.k01rr<&OmKMaS<WN2'r9jRb"l&J5!!(^Nmf*7eg\pR?
-!!V-FmJm7:rU'pS!!)!G!!(dQmJmOf!!!A`mJm6<s,R*Z!8HrA!!(dOmK;-!!)EL\rr<&RrpKdd
-!8@D>!o!\TrpC9OHT`/G!!*'"g[=J0!87;<#DE.\md;D%bM2Fb!.k0$s3gpt~>
-Rf<?flLt?&!64U(!XSk_r:^Hd!!)?Z!!)*YpB'CU!<)Zl!!)'XpB'CU!<2`m!!)*Zp\t3njSnoR
-!!)'XpBTaZ!;H3l!8mbL"7Z?kjQlO?!.k01rr<&OpBBuj=TJM-r:g3k"m#FP!!)$Wp\t3njSeiQ
-!!VHXpAb3KrV$Qe!!)9X!!)*ZpAbNp!!!DapAb2Es,R*Z!8I8J!!)*XpB0A4!)`^hrr<&[rqHEm
-!9=%P!os=]rq?oaJ3OkO!!*'"jS/BK!93qN#E&Rep\-'9e(aTs!.k0$s3gpt~>
-Rf<?flKA:D!/pX9!d1!croaCg!71T,#N,R^h<4h=f)=e6eGoUJkl1V_f)=e6ec5^Lkl1V_f)Fn5
-!!(ULkl1V_f)=e;ec5^6kQV%5rTF@C!!(U9kPtU6s,R*Z!8luAf!EQrkQ?P>#NYjIrr<5Rki`!H
-f)=h4!!(UKkl1Vdf');t!7Li0#N>^`hWOq>f)Fk7"oq?n;ZKeSkPtU6s,R*Z!8H`;!!(UIkQABr
-#NbsKrr<&Mroj@^!7q,4'\36akifhs!"hP1P0O%-f');t!7q)3#1s.fh6d5Cg?8M:JcC<$df4g~>
-Rf<?flL"^L!0?pC!dL?prpBgm!7h#8#Nc!dj6cmIg\pOAg&M-Omf*7eg\pOAgAh6Qmf*7eg]$X@
-!!(dQmf*7eg\pOFgAh6AmKWaBrU'dN!!(d>mJm6<s,R*Z!8m2GgUPW,mK8:G#O;9Urr<5Wmd:&T
-g\pR?!!(dPmf*7jg[=J0!8.8<#Nl'ejR*!Jg]$UB#67Kp<<-(WmJm6<s,R*Z!8HrA!!(dNmK:0'
-#ODBWrr<&RrpKdd!8IJ?'\`TfmdA(0!"q\6QI>g6g[=J0!8IG>#2KLkj154Pg?nq@JcC<$df4g~>
-Rf<?flLt?X!0m9Q!e$p.rq?I"!8[SI#OVQllh:AZjSefSirB)Xp\t3njSefSj8]2Zp\t3njSnoR
-!!)*Zp\t3njSefXj8]2SpBL]SrV$E`!!)*GpAb2Es,R*Z!8mMPjM0@DpB-EU#kS#hrr<5`p\+Xf
-jSeiQ!!)*Yp\t3sjS/BK!9!hM#Oh]nm.UJ[jSnlT#67Ts=9)L]pAb2Es,R*Z!8I8J!!)*WpB/D8
-#k\,jrr<&[rqHEm!9F+Q']]5op\2oI!"qe=SD+#DjS/BK!9F(P#3H1!lbNQag@kRIJcC<$df4g~>
-Rf<?flKA;:!'0l="2Fm:_#EO!*rrSDkQep(%-ZmT!7Uo1!lY->rTO7]!7q,4!nI>Oroj@^!7q/5
-rr<&Mroj@^!7q,4#M&kTkia,h[f,ClaT)=llf\<KJcCc1!!(p?!eC>ZqWJ%<!!(dPkl1Vdf');t
-!7q,4rr<&MrTO7]"kMo$!!'V/kQf*-''SNZ!7q/5!Zh?ZfB<27JcCc1!!(d;rr<&Mqre.@!!(dQ
-kl1V_f)Fn5!!(UKkQo`>!9iW-!,(BlkQorD!7pAt!!(UIkQOlbP[FKUg?8M:JcC<$df4g~>
-Rf<?flL"_D!'C#E"2t6?`W#9,+98kJmK^`3%.<N`!87>=!m1KCrU0[c!8IJ?!o!\TrpKdd!8IM@
-rr<&RrpKdd!8IJ?#MT4Ymd;4u]D_."c2[k!lg=`QJcCc1!!(pE!egVaqX+IH!!)!Vmf*7jg[=J0
-!8IJ?rr<&RrU0[c"l&J5!!'b3mK^o8'CP8g!8IM@!ZqE`fBrV=JcCc1!!(dArr<&RqsFRL!!)!W
-mf*7eg]$X@!!(dPmKhPI!:K8;!,:`tmKheP!8Hr0!!(dNmKHSjQt$,`g?nq@JcC<$df4g~>
-Rf<?flLt@S!'U/P"3^`Fbl7><+TT4RpBSqC%JTSs!9*nN!mpuJrV-<l!9F+Q!os=]rqHEm!9F.R
-rr<&[rqHEm!9F+Q#NPjbp\,j3_Ys32ec5^2lh:AZJcCc1!!(pN!f?tjqY(*Y!!)9^p\t3sjS/BK
-!9F+Qrr<&[rV-<l"m#FP!!(%;pBT.I'DM5$!9F.R![%KhfCo7FJcCc1!!(dJrr<&[qtC3]!!)9_
-p\t3njSnoR!!)*YpB]g[!;H4O!,_?,pB^$a!9EnK!!)*WpB=Y!SnA%pg@kRIJcC<$df4g~>
-Rf<?flKA?1*rq`+kQBs4!':)B!a,M4r9+B*!(,o5$NRp>kQ6VA!<)-]!!(UKkQ9<8!<23^!!(UL
-kl1V_f)Fn5!!(UKkQfZ=!9iWM!-J2'",6dUf'DN"!.k01rr<&VkQA<p&D?sE!kSFNr94.\"kMo$
-!!(UKkl1V_f)=h4!!Us;kPtU-rTFK:!)VnC!!(ULkQ4idHi3(/Qn)S%kPtU6s,R*Z!8H`;!!(UI
-kQ8Et&,k_l!!(ULkl1V_f)=e;ec5^6kQV%5rTFNY!!(O4kPtV6qre3f!(dt;iS*Jq!.k0$s3gpt~>
-Rf<?flL"c=+97u0mK;fA!'L5J!a>Y9r9af3!(62B$NS*CmK/CK!<)?c!!(dPmK2,C!<2Ed!!(dQ
-mf*7eg]$X@!!(dPmK_JH!:K8[!-eD0",R!Xg["8-!.k01rr<&VmK:-&&`<KR!l"^Sr9jRb"l&J5
-!!(dPmf*7eg\pR?!!V-FmJm66rU'oD!)i7Q!!(dQmK-SmIf/U8S1J1-mJm6<s,R*Z!8HrA!!(dN
-mK16*&H2%s!!(dQmf*7eg\pOFgAh6AmKWaArU'rc!!(^?mJm7AqsFWp!)"+=kM#>(!.k0$s3gpt~>
-Rf<?flLtDO+TS;7pB1(V!'^AU!abqAr:^G@!(Q_W$inHKpB$NY!<)Zl!!)*YpB'CU!<2`m!!)*Z
-p\t3njSnoR!!)*YpBTaZ!;H4q!.=b>"-*?]jQlO?!.k01rr<&VpB/>6&a0&c!lk9\r:g3k"m#FP
-!!)*Yp\t3njSeiQ!!VHXpAb2DrV$PR!*/df!!)*ZpB"Y$KDbHFU+U*9pAb2Es,R*Z!8I8J!!)*W
-pB&G:&H2A'!!)*Zp\t3njSefXj8]2SpBL]RrV$Ss!!)$QpAb3SqtC9+!)4:An(RL9!.k0$s3gpt~>
-Rf<?fl0&8P"9j85roaL58cT48rTF?t"9XthkRXBl!3,2G2ulb:kifMi!!)u]rr<&MrTF=6!!*#^
-!XSkEroj@^!7q/5rr<&MrTFdC!!)6H])iDOkifqu!!(X:kPtU6s,R*Z!8coA6NA^MrTF?t,liPp
-kl1Vdf');t!7q,4rr<&MrTO7]&_?10!!!J?kif\j!O_.T!!(ULkQAO%#c%C_"2,?JJD]Pj!.k01
-rr<&Rkl1V_f)4_6ff/t@rTO7]!7q/5rr<&MrTFL;!!)6H)$#QnkR"R1!!(=.kPtV6qWJ#,!WZZ^
-kPtU6s+13us*t~>
-Rf<?fl0\\Z"9sJ@rpBpA9E5F?rU'd*"9Y+lmLQ0"!3YbX3WN%Dmd@b&!!)ucrr<&RrU'aA!!*#d
-!XSkJrpKdd!8IM@rr<&RrU(3N!!)HT^]FqXmdA12!!(g?mJm6<s,R*Z!8d,G70#!UrU'd*-3/bt
-mf*7jg[=J0!8IJ?rr<&RrU0[c&_laA!!!JCmd@q'!P7^e!!(dQmK:?0#cI[i"2Y`PK\u1t!.k01
-rr<&Rmf*7eg\gIAhDkRIrU0[c!8IM@rr<&RrU'pF!!)HT)?>fsmKpB<!!(L9mJm7AqX+G3!WZca
-mJm6<s+13us*t~>
-Rf<?fl1Y=j"9sYMrq?QR:&k[IrV$E:"9Y=rpCF>1!4;Lp49/@Rp\2T?!!)ulrr<&[rV$BS!!*#m
-!X\qRrqHEm!9F.Rrr<&[rV$i`!!)cfa8ugip\3#K!!)-HpAb2Es,R*Z!8dGP8,t?arV$E:-if2'
-p\t3sjS/BK!9F+Qrr<&[rV-<l&`i]\!!!MLp\2c@!Q"O)!!)*ZpB/P@$*F4$"3D5WM;S%-!.k01
-rr<&Rp\t3njS\`Sk;rZXrV-<l!9F.Rrr<&[rV$QX!!)cf)ZZ*$pBeSM!!(dJpAb3SqY((>!WZoe
-pAb2Es+13us*t~>
-Rf<?fki`AH%0-i':H&FW(:*i$#`f&f.o%bu!IFb/$)Rb(*_\?j=o\R$kl1V_f)=e6ec5^LkQj!F
-),<i]!!(ULkl1V_f)=e6ec5^LkQu80"[GH\+92Drlf\<KJcCc1!!(m>$e[K>!$b!-.KKNTkPXQD
-!!Us;kPtV6rTO7]!7q,4rr<GXki`!H)$N>n"TWcGkl1V_f)=e=Ns#G5:HARX8`ejn!!%TMNrK(Z
-gZ\Y;!)3Aj"]@Yp!%6Iukl1V_f)Fn5!!(UKkS2SJ!9iWt!!,#Q/H@m]!4h=W!!(UHkQ?>8!57(L
-!!%TMJcF0uJ,~>
-Rf<?fkjAeR%0-i(;)e^Z(:X2/#a5>j/5S&$!Iat8$*"%,+&+Qm>Q=d&mf*7eg\pOAgAh6QmKbZM
-),O&g!!(dQmf*7eg\pOAgAh6QmKn"9"[PT_+TMN$lg=`QJcCc1!!(mD$f3oE!$b'0.ffWWmJQDP
-!!V-FmJm7ArU0[c!8IJ?rr<G]md:&T)?iJq"oruKmf*7eg\pOHP6:k:;*4p\9C(L'!!%TMNrK(Z
-g[>(A!)EMn"]Rhs!%?_&mf*7eg]$X@!!(dPmM+CU!:K9/!!,&T0*"0b!57gg!!(dMmK8+B!5dFW
-!!%TMJcF0uJ,~>
-Rf<?fkk>Fa%KHu-<&t0_(V]e@#ab\o/lOP+!J:=F$*XI2+Aars?iU3*p\t3njSefSj8]2ZpBW\X
-)H0Gu!!)*Zp\t3njSefSj8]2ZpBc*F"[kof+ohW-lh:AZJcCc1!!(mM$g0VP!$t<8/HGi]pAF[b
-!!VHXpAb3SrV-<l!9F+Qrr<Gfp\+Xf)[/]#"os/Pp\t3njSefZQimCA<'CBa:%[?;!!%TMNrK(Z
-g\:^J!)`_t"]n/%!%R11p\t3njSnoR!!)*YpCuZg!;H5F!!,,Y0E=?g!6+^,!!)*VpB-6P!6Npg
-!!%TMJcF0uJ,~>
-Rf<?fkNE3#F>FF0%5W=aq</$o:DO'H9XFZ\#d6K&#r.as!!)u]rr<&MrTF=6!!*#^#g#LE!Y<$G
-!7q/5rr<&MrTF=6!!)u]#a6nI&6@$U"6Jk4!!%TMNrK(Zh<5.,R7S>$!uXh6qWRqZ"kMo$!!(UK
-kl1V_f)=h4!".<@kPtV#<t>NqV#BNW!!(UJkQe^u)$LF,Noo3^!!%TMNrK(ZgZ\M7"9]>sJ`$Ch
-rr<&Mroj@^!7q,4!nI>OroaiM.Kp2=O60mOFQhog!7q#1!k/._f]W;8JcC<$df4g~>
-Rf<?fkO&W/G;Kg4%5`Lkq<eI$;&09K9t:,h#dZf+#r7t(!!)ucrr<&RrU'aA!!*#d#gPpL!Y<3L
-!8IM@rr<&RrU'aA!!)uc#a[7O&R!N^"7,:@!!%TMNrK(Zh<kR8SP'q,!uXn<qX4@`"l&J5!!(dP
-mf*7eg\pR?!".KKmJm7.=qCp"W;Z/a!!(dOmK^L,)$LF-P3h&n!!%TMNrK(Zg[=q="9]B!L#r7#
-rr<&RrpKdd!8IJ?!o!\TrpC8W.g?A@PO)i\GOFl!!8IA<!k\Lff^8_>JcC<$df4g~>
-Rf<?fkP#8@HSuE;%Q8q&q=b*5<#5ZO:qur&#eED6$8eF:!!)ulrr<&[rV$BS!!*#m#hDTX!YENT
-!9F.Rrr<&[rV$BS!!)ul#b<^W&R=#i"8(pR!!%TMNrK(Zh=h3JUJ2a5!ub(GqY1!i"m#FP!!)*Y
-p\t3njSeiQ!".f]pAb3>>n@9(Y5S+p!!)*XpBS`@)?gR1QhB50!!%TMNrK(Zg\:RF"9]B#MXC?9
-rr<&[rqHEm!9F+Q!os=]rq?ne/HuVER.Y.nI/!@8!9F"N!lG!nf_5@GJcC<$df4g~>
-Rf<?fR-=Rl!9O1C!lY-^lKA3JJcCc1!!'Fjrr<&M`TR:%JcCc1!!&bW!bhXpf]W;8JcC<$df4g~>
-Rf<?fR-t""!:0UO!m:QelL"WPJcCc1!!'Fprr<&R`U3^+JcCc1!!&b]!c%e!f^8_>JcC<$df4g~>
-Rf<?fR.pX3!;-6a!n%&mlLt8YJcCc1!!'G$rr<&[`V0?4JcCc1!!&bf!cJ(*f_5@GJcC<$df4g~>
-Rf<?fR-4Tn!,hf""6)fNB^4d]!.k01rr<&,kl1V_f#?hQ!.k01rr<%qkQTu0Z3qB)f]W;8JcC<$
-df4g~>
-Rf<?fR-k$"!-/#+"6W5UC?k3e!.k01rr<&,mf*7egVrR\!.k01rr<%qmKMeA[gNr5f^8_>JcC<$
-df4g~>
-Rf<?fR.gZ/!-S;8"7StaDX-rr!.k01rr<&,p\t3njMgin!.k01rr<%qpBC'\^'kbEf_5@GJcC<$
-df4g~>
-Rf<?fR-4k$&HF4T8JV:Rg$7c$!.k01rr<&,kl1V_f#?hQ!.k01rr<%qkQF0X!!%u0kPtU6s+13u
-s*t~>
-Rf<?fR-k:/&ca@X9,7LUhs0V0!.k01rr<&,mf*7egVrR\!.k01rr<%qmK>i_!!&,4mJm6<s+13u
-s*t~>
-Rf<?fR.gp@&caF]9c!dZkN_dA!.k01rr<&,p\t3njMgin!.k01rr<%qpB3nl!!&;9pAb2Es+13u
-s*t~>
-Rf<?fQfn[u?QTFU-Zn2/kPtU6s,R*Z!4D%j!!(ThkPtU6s,R*Z!2\l]E<dD4f'!)6JcC<$df4g~>
-Rf<?fQgP++@3>^Y.!O_9mJm6<s,R*Z!4D7p!!(cmmJm6<s,R*Z!2])cF9`b<f'WM<JcC<$df4g~>
-Rf<?fQhLa<AK_3^.XULGpAb2Es,R*Z!4DS$!!)*!pAb2Es,R*Z!2]DlGR,:Gf(T.EJcC<$df4g~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(Z\**hT_<:k!JcC<$df4g~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(Z\*a7`_<q:'JcC<$df4g~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(Z\+]mr_=mp0JcC<$df4g~>
-Rf<?fp?2eEPsQ)c$S?;D_<Cn!!7oHZ!!%TMNrK(Zh!"V8"9AucH/AJ_rr<&MY35icJcCc1!!(p?
-!f[E'roj=]!.+J)"3^cG!:f7S]K"L(kQ9*>Hf4)f!.k0$s3gpt~>
-Rf<?fp?i4QR6qVi$SHJN_=%='!8Gfe!!%TMNrK(Zh!Y%>"9AueI,t4nrr<&RY3l8iJcCc1!!(pE
-!g*`1rpKac!.F\2"47,L!:fIY_)g?4mK1rJIc0Vo!.k0$s3gpt~>
-Rf<?fp@ejcT10Ir$nle\_>!s0!9DH"!!%TMNrK(Zh"U[G"9B#gJaE=/rr<&[Y4hnrJcCc1!!(pN
-!gX)=rqHBl!.t%@"5*\T!:fdbaZSYGpB'1\KAcJ(!.k0$s3gpt~>
-Rf<?fpZMtC4obmO:dbut%BIA0rr<&McKG6.JcCc1!!(g<rr<$mr_itq4:D3=gAU78!!(TQkPtU6
-s,R*Z!9!&B`!C>\kl(P^./E',Gl@^5kQ1ecf&Z#rJHWLAkPtU6s+13us*t~>
-Rf<?fp[/CO56)!R;FVB$%BmY:rr<&RcL(Z4JcCc1!!(gBrr<$or`'+u4q%E@i;N*D!!(cVmJm6<
-s,R*Z!9!8HaTutdmf!1d.J`B3Hi=$8mK*FigZ7c(K`o*JmJm6<s+13us*t~>
-Rf<?fp\,$`63%?X<Cmo*%^s7Krr<&[cM%;=JcCc1!!(gKrr<$rr`B>&5Rd]Ekl(8U!!))_pAb2E
-s,R*Z!9!SQcj=ppp\k-m/,Ao>JGoQ=pAtBrjQ-%:M?LlVpAb2Es+13us*t~>
-Rf<?fpZM]s!'Jp5kQKsa!"[`"kl1V_f$<IZ!.k01rr<&Skl1V_f)4_6g,K(BrTO:"!9LBI!!%TM
-NrK(Zi915$(>f#Rrr<*2!5A<n"!\!M!:f:Q!!(U2kQBih.-0CO!!%TMJcF0uJ,~>
-Rf<?fp[/-'!']6<mKDfp!"du(mf*7egWo3e!.k01rr<&Smf*7eg\gIAi&LdLrU0^-!:-fU!!%TM
-NrK(Zi9gY+(?GG^rr<*3!5n[$"!e*O!:fLW!!(d7mK;\u.I,p\!!%TMJcF0uJ,~>
-Rf<?fp\+c4!'o]GpB:)1!"e;1p\t3njNdK"!.k01rr<&Sp\t3njS\`SkW8cZrV-?=!;*Gg!!%TM
-NrK(Zi:d:6([V+prr<*3!6Y04"""6Q!:fg`!!)*@pB0t3/+_cp!!%TMJcF0uJ,~>
-Rf<?fpZMYq!5\Qr!\XP3_s%+#!7oHZ!!%TMNrK(Zh!"b<!7q&2!jVe>Vs"*\JcCc1!!)!A!h97;
-r94.\!aPeAqre0m!)*@mn`]uQ!7p2o!f[2;iog@BJcC<$df4g~>
-Rf<?fp[/)"!64p(!\j\9_s[O)!8Gfe!!%TMNrK(Zh!Y1B!8ID=!k/.DVsXNbJcCc1!!)!G!h]OB
-r9jRb!abqFqsFU#!)3Fnna?DW!8HQ%!g*JCipHdHJcC<$df4g~>
-Rf<?fp\+_,!6tE8!\sb?_tX02!9DH"!!%TMNrK(Zh"UgK!9F%O!knXKVtU/kJcCc1!!)!P!i>sM
-r:g3k!b24NqtC63!)NXqnb<%`!9E27!gWhMiqEEQJcC<$df4g~>
-Rf<?fpZMY]!5JEp!gHc]r9+@%<>brT:V?Vhrr<MXINJ\1Fm%Xu*!IC/k5OQMjc)G:":HuDkPaWE
-!!^kl)$M=>k5FND!!^bq-O(#FYPdSg]M]RM'MPq5kl1Vl^d//;IH]n3<>brT:V?>`!!%TMNrK(Z
-h!"b<!7q&2!mUcMrTO7]!7q/5rr<8SO"UeK5HFbH#j%%0&d/RtN9C3(rr<;>5m@sMK`F:6kQBo`
-"4,fe!!%TMNrK(ZiTL=n"P*G6rr</+!#t,!kQkYuT`>)V!!(UKkQ9<8!<)-Y!!h`)<>brT:V?\j
-"24p=RJuCPk</fBqre.>$lnBhkPtU6s+13us*t~>
-Rf<?fp[/(c!6"d&!gm/hr9ad0<uD/V;8N1urr<M]Jfk17GjXU2*<mU5m/HDYl]FCF":I#ImJZJQ
-!!_(u)?qODm/?AP!!^r$-jL2IZi'4q_,M6T'hu:<mf*7r`BjeCJF;jG<uD/V;8Mnm!!%TMNrK(Z
-h!Y1B!8ID=!n.,SrU0[c!8IM@rr<8XP;*@Q5d1.S#j[U;'*J\!OR<&8rr<;C63e0SL]B[;mK;bl
-"4Z/p!!%TMNrK(ZiU-au"PWeArr<//!$(D(mKdD)V#UM`!!(dPmK2,C!<)?_!!hr4<uD/V;8N8"
-"2b<CSc8$Zm6:SLqsFRJ$m"ZomJm6<s+13us*t~>
-Rf<?fp\+^l!6b96!hN]"r:^E@=rIP[<6>(4rr<MfLEQd>IJ3&L*X3a<p&=[koThfW":R/QpAOac
-!!_A,)[7^Lp&4Xb!!_51.L-GO]);:,a]B>`'i;aFp\t4&bXDaML%k>e=rIP[<6=e,!!%TMNrK(Z
-h"UgK!9F%O!o!\[rV-<l!9F.Rrr<8aQnf!Y6alsf#kXEL'*J_$Q1k4Orr<;J70aK[N;u9BpB1%*
-"5M`,!!%TMNrK(ZiV*C+"QTFSrr</6!$1e2pBYL6WrN.o!!)*YpB'CU!<)Zh!!i8D=rIP[<6>.6
-"3LfJU]0uip-A[ZqtC3[%3G0%pAb2Es+13us*t~>
-Rf<?fpZM]2!&(nUkQm^`!&@8#!!Sbgkl1Vl6O,tE!W['k%S/V]!-eG+#Y+k,7ntK5!-J2'rr<6k
-!BEOP!)idZrr<9P!AdFm!!B.ukQm=S!%L\q!!7oSkl1Vm,8s2tVs'ZU!&@8#!!Sb_kPtU6s,R*Z
-!8Qf<!!(UIkQ71Q4oOUE!!(ULkl1Vf:'3LM*WQ89roaVX!"h^r.0'?iroj@^#U:6\+K*lt!mU]-
-!i#`_gun_<JcCc1!!)$B!jhqhqrn%["4f()Yl3blj:``g!!)3_!7q,4!nI>OrTF_i!!#\k;k4*m
-1/0>#"do;Q$%;jff')=H!$BtlkQ4EXU>tG;!.k0$s3gpt~>
-Rf<?fp[/,:!&;1[mKfKk!&ID'!!Snkmf*7r70c7J!W[0o%SAha!.+Y4#Y>"/8Pgl:!-eD0rr<6m
-!BWaU!*&pbrr<9Q!AmRq!!B>%mKf'\!%Ui!!!8#Vmf*7s,9'?#XR;be!&ID'!!SncmJm6<s,R*Z
-!8R#B!!(dNmK/s[5Q1$M!!(dQmf*7l:]idS*rlA>rpC%`!"qk".KBHmrpKdd#U:9_+fsN*!n.&8
-!iH#eh!P.BJcCc1!!)$H!kA:oqsOIa"5>L0[/KD!l4bJt!!)Ee!8IJ?!o!\TrU(.q!!#bo<M9Wt
-1J]V'"e>S[$%`-kg[=K]!$L7smK-)_VW7(E!.k0$s3gpt~>
-Rf<?fp\+bD!&DOdpB[]&!&[Y-!!T+qp\t4&8-haT!W[<u%o#4g!.Y"B#YY429N*JB!.=b>rr<6p
-!Bj!Z!*B-nrr<9S!B*h"!!BP+pB[5k!%h)'!!82[p\t4',of])ZM1:&!&[Y-!!T+ipAb2Es,R*Z
-!8R>K!!)*WpB%,j62gQX!!)*Zp\t3u;Zf0[+92JErq?[l!"qt(/-#ZtrqHEm#ULHd,-pA;!o!VI
-!j)Gnh"LdKJcCc1!!)$Q!l+e#qtL*j"6;0:]D_I1o+WJ2!!)`n!9F+Q!os=]rV$e(!!#ku=JuH)
-2,Z(-"eu"j$&8KpjS/D(!$UV'pB".kXQ0$T!.k0$s3gpt~>
-Rf<?fpZMj[!rr<C>a3P1kQAm3&$c,t".f]%`r>3%!#$?qkidg&!%HI^k_]?VkieZ>/_p?h"+pRb
-kPj]F!!`Y%kifen!1s2Rrr<KA[clr::&m<<keR?&PQ'bWT*5;%ki`!H0&YsVkK!o>Z2WqhSd#G>
-p?2JVJcCc1!!(g<rr<&MroaOIe<(7I\c(al!!(ULkl1Vl(r5A!j\Gk4kieZ>/_p?h&;'rokNM+0
-!&!3nkND&/!-\>)!_EB`gun_<JcCc1!!)$B!c%d[qrn%["4i&(?2`snUB#Jg!!)3_!7q,4!nI>O
-r94.\"kMnY#S43>kRO0g#KGukjuNK=ke%'&\,#4hL]CW=kPtU6s+13us*t~>
-Rf<?fp[/9f!rr<D?C94<mK:]>&%2E)"/6#*bPpr0!#$C"md?#6!%Q^jmZ%8`md?kN0&llu",6df
-mJcPR!!`Y)mdA%+!2BJ\rr<KB]C,+Q:]NTFm`#>1Qi?CaUBUe/md:&T0]qfjmEGnI[JoRrU'CqH
-p?hn\JcCc1!!(gBrr<&RrpBsUfp!$R^&@C!!!(dQmf*7r(rbq2lVRX=md?kN0&llu&;C/smI'BB
-!&3R'mHs=C!."P2!_WNfh!P.BJcCc1!!)$H!cA!aqsOIa"5AM0?iBC!VZ;"s!!)Ee!8IJ?!o!\T
-r9jRb"l&Ii#S4?BmLGrr#KuQ'loY8Gm_K)2]_UssMZ@#BmJm6<s+13us*t~>
-Rf<?fp\+ou!rr<E@\2?NpB/qP&A8#:"/uM2e,K+A!#$F+p\0dM!%d1)pQGRop\1Zf0C&Q2",d-k
-pAXgd!!`Y/p\2lD!3,tlrr<KB_Y<fs;ZJuTpWWdASc8?pWWiO=p\+Xf1%+f0p=0H\]`.X-W<W^X
-p@eOeJcCc1!!(gKrr<&[rq?TgigLDb`VoQ2!!)*Zp\t4&)9hjLoMbfKp\1Zf0C&Q2&;pN#p@n:]
-!&<p9p@e5a!.On@!_iZoh"LdKJcCc1!!)$Q!ce9jqtL*j"6>@?A,Z-.XT3h2!!)`n!9F+Q!os=]
-r:g3k"m#F.#nXcKpC=/-#h/PBof`@UpW3UC_tj$.O8r\KpAb2Es+13us*t~>
-Rf<?fp?2OY-2[`E."gRYkQ52nMYuZ>DZF5Fkl1V_OT+GGfDkoDroaU@!!(j=R7O7SkQB]B!8IM:
-rr<%.rTF<8!(-\Krr<%XrTFKu!"S5V=o_t.kQc,.8*K.:!0[<E!b).er9+3#!+GTb!!%TMNrK(Z
-h!"M5!=,e*kl1V_f)Fn5!!&#WkQe^"$0^T@8>lFM#i>U^gZ[i$!0[9D$*aIPkNM-Z"Vp+RkPtU6
-s,R*Z!932D2ZTWMkl1Vcf$a^4j8S6K:'&Ph!!)3_!7q,4!nI>Or94.\"P2dG!/g^<!cJ'IroaR2%
-KN(I!.FY+!j_kQj6-ICJcC<$df4g~>
-Rf<?fp?hsc-N!iF.>I'bmK-r"Nr8;HEWBYLmf*7ePQ'tPh#IGMrpC$L!!)'ISP$!^mK;PN!9*qF
-rr<%1rU'`A!(?hSrr<%\rU'p*!"SGb>QA:3mK[k78ac!H!1*TO!bD@lr9aW,!+bfk!!%TMNrK(Z
-h!Xq;!=,q.mf*7eg]$X@!!&/[mK^N-$1@5P9!&!Z#iu$diU6+6!1*QN$+9gVmI'Dq"Vp=XmJm6<
-s,R*Z!93DJ2uolRmf*7igXuZ@l2L)W:]\qt!!)Ee!8IJ?!o!\Tr9jRb"P`?U!07!F!ce9OrpC!=%
-KN4N!.ak4!k84Wj6cmIJcC<$df4g~>
-Rf<?fp@eTs./X&H.uWrrpB#%/PPk.VFoZ4Tp\t3nRJup_jo>C]rq?Z]!!)?ZUJ8&mpB0d_!9sLW
-rr<%5rV$AO!([%_rr<%arV$Q;!"\hu?iXj;pBPsD9_\8]!1a#^!bhXur:^89!,2*#!!%TMNrK(Z
-h"URD!=676p\t3njSnoR!!&>`pBSb>$MX:i9sX`l#jhTll1aoP!1`u]$,$<^p@n=@"W$^bpAb2E
-s,R*Z!93_S3WQ;Zp\t3rjP^1Qo)A@i;ZYP3!!)`n!9F+Q!os=]r:g3k"Q];k!0d?T!d4QWrq?WN%
-fiRX!/:4B!l"^`j7`NRJcC<$df4g~>
-Rf<?fp#lPAZu@o,rVusPg&C1:,65pbkQ8*k-3!-.!!'t9kl1V_cMcu,!!(UIkQTnVLB%>+roj@^
-!3c@b!m(ENroj@^!65!$#Li_Skia,hZ2Eej_uL50kPtV"rTF;-!6b<(!jhqRp?2JVJcCc1!!(g<
-rr<$mr_itq3!TF'cMcu,!!(ULkl1V_`Vo!%e,TOGkR-7[LB%>+ki`!H_Y`O%-3175k^EMIgZSV;
-JcCc1!!)$B!YbXNqrn%[&_?/3!28W?g'9V$ec5^6!!(UKkQ9<8!;u'\!!Lm:,65pbkQ8*k-2m$2
-PlLmd5Nhh*"4I5Rk2b_+!.k0$s3gpt~>
-Rf<?fp$MtM\T9\6rVusRhYupE,QQ3hmK0p!-N<H5!!(.>mf*7ee,A_7!!(dNmKMagM?!Y3rpKdd
-!42Xl!mUcSrpKdd!6b?/#MB(Xmd;4u[f#OuaT)b;mJm7-rU'_4!7:Z3!kA:Xp?hn\JcCc1!!(gB
-rr<$or`'+u3<oO)e,A_7!!(dQmf*7eb5L`0f`2'LmL&*lM?!Y3md:&Ta8>90-NLL@mXbFVg[5%A
-JcCc1!!)$H!Yk^TqsOIa&_l_?!2],Oi!2=2gAh6A!!(dPmK2,C!;u9b!!M'E,QQ3hmK0p!-N3?9
-R/d<h5je@7"5*YYm,[R7!.k0$s3gpt~>
-Rf<?fp%JU_^iqdCrVusSkPk2W-32]rpB&,1./ru@!!(CEp\t3ng\pmH!!)*WpBC!+NrT1ArqHEm
-!4r.'!nI>\rqHEm!7Uo@#N>^ap\,j3^&7U0ci=OLpAb3=rV$@?!8.5D!l+dap@eOeJcCc1!!(gK
-rr<$rr`B>&3sYg-g\pmH!!)*Zp\t3ndJ`e@iW'#UpBp?0NrT1Ap\+XfcMR>@.0-sRpP/`hg\1[J
-JcCc1!!)$Q!Yk^[qtL*j&`i[T!3>kgkQj<Fj8]2S!!)*YpB'CU!;uTk!!MBW-32]rpB&,1./ilD
-T)\rn6h^<L"5s4ap#PiI!.k0$s3gpt~>
-Rf<?fn`U/7Vc3Zs<rV:_#l"B"$NB8h!!(OIkl1V_f)=h4!"@HBkgt&@(BFL:!!(ULkl1V_ci*&5
-irB)6ki`!Hec"\:ec5^6kQh17r9+CG!!(j=!!(OIkPtn`!!!B"kPtU6s,R*Z!8Qf<!!(UJkQB9i
-!)3@Trr<&Mroj@^!7h&3!nI>OroajDGWQ]B!!*'"f');t!7^o0#D)qVkia;m`nT\W!.k01rr<&Y
-kQ1kechlr+!"mfGPQ4JBk`,Y'kgf_6kPtV6rTF=6!!)r\rr<,OkQpq`!"/Yf"%N=od.c`+i;`l4
-jQHRDJcC<$df4g~>
-Rf<?fna6SCXB#?%=oRgh#l"B"$NBJn!!(^Nmf*7eg\pR?!"@WMmbE.P(BFL:!!(dQmf*7eeG\e@
-kPtVAmd:&TgAUFEgAh6AmK`gCr9agR!!)'I!!(^NmJmOf!!!B"mJm6<s,R*Z!8R#B!!(dOmK;-!
-!)EL\rr<&RrpKdd!8@D>!o!\TrpC9OHT`/G!!*'"g[=J0!878;#DE.\md;D%bM2Fb!.k01rr<&Y
-mK*Lkebee7!"muRQiKtNmZIR5mb7^AmJm7ArU'aA!!)rbrr<,TmKiRf!"/Yl"%`Iqf(\S7k5YM@
-jR*!JJcC<$df4g~>
-Rf<?fnb34TZ<72.>lOHt$2=K#$i]o#!!)$Wp\t3njSeiQ!"@r_pZ6oi(]aU;!!)*Zp\t3nh#6sQ
-nGiRRp\+Xfj8J]Wj8]2SpB^iUr:^Hd!!)?Z!!)$WpAbNp!!!E#pAb2Es,R*Z!8R>K!!)*XpB0A4
-!)`^hrr<&[rqHEm!9=%P!os=]rq?oaJ3OkO!!*'"jS/BK!93nM#E&Rep\-'9e(aTs!.k01rr<&Y
-pAtHth>?sH!"n;dScD^`pQklHpZ);SpAb3SrV$BS!!)rkrr<,]pBgTp!"8`!"&&[thY6aHmf3@P
-jS&WSJcC<$df4g~>
-Rf<?fpuhe1Zci4/#_i<ajQPe3!)35f!*&s]rr<&MrTO7]!7q,4rr<JYkeRr5&OL,nc2[jqroj@^
-!7Li0#iYgahWX/'!7q,4#M&kTki`6Ochuu3huEc5kPtV6rTF:e!)35f!*&[U!!%TMNrK(Zh!"b<
-!7q&2"1eI;jo4KD!!(ULkl1V_f)=eHec5^6keRr5&OL,nc2[jqki`!Hf)+Y8fEVc>[/`5@kPtU6
-s,R*Z!932D"TZsIkl1Vpf'(rt#i+W(#i"Ro!!)3_!7q,4!n@8Nr94.\"P2c@!)35f!*&p\"P+=g
-!.">&"60@]guRZ!!.k0$s3gpt~>
-Rf<?fq!J4<\Bt*?#`/NdlL+'F!)<;i!*9*err<&RrU0[c!8IJ?rr<J^m`#tA&k$H"df9C&rpKdd
-!8.8<#j20fjR2F9!8IJ?#MT4Ymd:;[ebnh?jo>DAmJm7ArU'^l!)<;i!*8g]!!%TMNrK(Zh!Y1B
-!8ID="24a?li->P!!(dQmf*7eg\pOSgAh6Am`#tA&k$H"df9C&md:&Tg\^CCh$4;I\c=hGmJm6<
-s,R*Z!93DJ"T[0Omf*8!g[=,0#ib86#iY4+!!)Ee!8IJ?!nmVSr9jRb"P`>L!)<;i!*9'd"PX[l
-!.=P/"6]^bioKM-!.k0$s3gpt~>
-Rf<?fq"FjN^Y&DW#`\ljoCqta!)WMo!*T<qrr<&[rV-<l!9F+Qrr<JgpWXEQ&k?f/gAh67rqHEm
-!9!hM#k.fom.^5S!9F+Q#NPjbp\+pnh>I!PmJm7QpAb3SrV$?u!)WMo!*T$i!!%TMNrK(Zh"UgK
-!9F%O"3(<Ho`"Ub!!)*Zp\t3njSefej8]2SpWXEQ&k?f/gAh67p\+XfjSSZUjp2@\_#QXPpAb2E
-s,R*Z!93_S"T[HWp\t4*jS/!K$0q7J$0h3F!!)`n!9F+Q!oj7\r:g3k"Q]:^!)WMo!*T9p"QU@!
-!.jn="7Z?klK%[>!.k0$s3gpt~>
-Rf<?fpuhd1!+>Ze#i5O]gZ[iB!5nNorr<&MrTO7]!7q,4rr<5RkW/]VjSn?Fg].?*roj@^!4r-m
-!lb3Qroj@^!7q,4#M&kTkia)gZ2Eej_#Oo-kPtV6rTF;(!5n6g!!%TMNrK(Zh!"b<!7q&2"5s4[
-g]$F:!!(ULkl1V_f)=e<ec5^6kW/]VjSn?Kg].?*ki`!Hf)"S6;ZN%i!0l4$!!%TMNrK(ZiogFZ
-!5n]trr<Y^kibtGP0F#(kigRt!9aC_e,AJ3`;fo9kl1Vcf'".T_tE3s8cVEh"hXQn"4R;TkN(h,
-!.k0$s3gpt~>
-Rf<?fq!J3;!+Yln#iksciU6+U!6Fm%rr<&RrU0[c!8IJ?rr<5WmQ:J`lMg2RiW&u5rpKdd!5AF"
-!m:QWrpKdd!8IJ?#MT4Ymd;1t[f#Ou`W-G8mJm7ArU'_/!6FTr!!%TMNrK(Zh!Y1B!8ID="6TXa
-iVr9F!!(dQmf*7eg\pOGgAh6AmQ:J`lMg2WiW&u5md:&Tg\U=A<</Cr!1;L.!!%TMNrK(ZipHj`
-!6G'*rr<Ycmd=*UQI5e3mdAg0!:Bgeg&:=?aoDG>mf*7ig[6-`aS"s)9E7]l"i'j#"5*YZmH![8
-!.k0$s3gpt~>
-Rf<?fq"FiI!,)0&#j_Nkl1aop!71B5rr<&[rV-<l!9F+Qrr<5`pHARooD\Idl2UhFrqHEm!65!3
-!n.,_rqHEm!9F+Q#NPjbp\,g2^&7U0blA4IpAb3SrV$@9!71*-!!%TMNrK(Zh"UgK!9F%O"7H3i
-l2LGW!!)*Zp\t3njSefYj8]2SpHARooD\Iil2UhFp\+XfjSJTS=9+q*!1qp=!!%TMNrK(ZiqEKj
-!71Q:rr<Ylp\.ejSD"!Dp\3_K!;?HniViKPd/X1Ep\t3rjS'bsch7#9:&muq"ipE4"6':cp>krJ
-!.k0$s3gpt~>
-Rf<?fpuhgi!"di\kQ8?r)ZJq%=9*^GkQ7,%@/fBi!!(UKkl1V_f)=h4!!Lm:"p!!JkQ@CV!7_#3
-rr<%DrTF<5!)W[Yrr<&MrTFL;!!)6H=TDq/kQc)-6KmV5!7q,4!a#GLr9+3L.q&)7!!%TMNrK(Z
-h!"b<!7q&2!keRErTO7]!7q/5rr<&MrTFL;!!)6H"p!!JkQma[!7^5r!!(UHkQS0j8J_org?8M:
-JcCc1!!)$B!]g=Wqrn%[&_?10VZ9)2!2euDec5^6$NRp>kQ6VA!;u'\!!Lm:=9*^GkQ7,%@/f?p
-O8p9UJH."Sq<.me!%Hsl!!%TMJcF0uJ,~>
-Rf<?fq!J6t!"n,cmK1-')uf7,>6'-MmK/n0A,bor!!(dPmf*7eg\pR?!!M'E#6<9PmK90`!87A>
-rr<%GrU'`?!)igarr<&RrU'pF!!)HT>6&74mK[h66gj@B!8IJ?!a>YRr9aWV/7\DA!!%TMNrK(Z
-h!Y1B!8ID=!l=pKrU0[c!8IM@rr<&RrU'pF!!)HT#6<9PmKfNe!86f.!!(dMmKKrt9,A-%g?nq@
-JcCc1!!)$H!^$I]qsOIa&_laAX8k\<!35JTgAh6A$NS*CmK/CK!;u9b!!M'E>6'-MmK/n0A,bm$
-P5lW_K`EI^q<e<p!%R$s!!%TMJcF0uJ,~>
-Rf<?fq"Fm/!"nDkpB&A8*<,[6?3#WUpB%'ABE%Z*!!)*Yp\t3njSeiQ!!MBW#6<QXpB.Ap!94"P
-rr<%LrV$AM!*0$mrr<&[rV$QX!!)cf?N=g<pBPpC7ecWW!9F+Q!aYkZr:^8e/nanP!!%TMNrK(Z
-h"UgK!9F%O!m(ERrV-<l!9F.Rrr<&[rV$QX!!)cf#6<QXpB[_u!93bI!!)*VpBA//9c+H1g@kRI
-JcCc1!!)$Q!^6UeqtL*j&`i]\Z2dFJ!3l4lj8]2S$inHKpB$NY!;uTk!!MBW?3#WUpB%'ABE%W1
-R/e;nM?#'mq=as+!%d1)!!%TMJcF0uJ,~>
-Rf<?fpZM]H!%kh]kQAOF!.t46"24mDU]0HZ]b:Brroj@^!7q,4rr<&MrTO7]"P2cS!/gd>"LAgC
-!7(T-rr<95]BJIl%fs*;kl1V_f)=e<ec5^6ke70%QN$(RU':Uski`!Hf)=e7^'"_:roaHt'**RV
-kPtU6s,R*Z!8Qf<!!(UJkQBKt!+Pojrr<&Mroj@^!7q,4#M&kTki`laMZ2fGZP<H?cKOHl!7pu0
-"!dpJ@G0iE!.k01rr<&YkQ5`(FSk;%!#X;NkiEQ`+Vs2'kgf_6kVrQ<k32$='*&%1kQ_Co_s"f;
-#c%C_%_WMUJEZ4>$im9jjtd!Hq<.m6!+FpO!!%TMJcF0uJ,~>
-Rf<?fp[/,P!&)+cmK:?R!/:F?"2b6IVuH)d_A!!'rpKdd!8IJ?rr<&RrU0[c"P`>_!07'H"Lo0H
-!7Ur8rr<95^[CO,&-9BAmf*7eg\pOGgAh6Am_]/0Rf;^\V?[+(md:&Tg\pOB_ZU7CrpBm*'EEg[
-mJm6<s,R*Z!8R#B!!(dOmK;<+!+l,srr<&RrpKdd!8IJ?#MT4Ymd:tnNrJGQ\.nuDe*cW(!8I>;
-"!n!KAD-AN!.k01rr<&YmK.J1GPgh.!#XJYmctVl+r9M4mb7^AmQ(>Fm-a;T'EA.2mKX$uaR6qK
-#cI[i%`/n[K^S9S$imHulne]Rq<e<?!+b-X!!%TMJcF0uJ,~>
-Rf<?fp\+b\!&2IlpB/Pd!/pjN"3L`QXoA%saV4`3rqHEm!9F+Qrr<&[rV-<l"Q]:r!0dEV"MY]P
-!8IMIrr<96a7o>M&-9WHp\t3njSefYj8]2SpW<U@T`4ZkX9Sa4p\+XfjSefTaoi$Qrq?N:'EF!`
-pAb2Es,R*Z!8R>K!!)*XpB0S?!,;E+rr<&[rqHEm!9F+Q#NPjbp\,U,PQ(:_^D6eLg\:FB!9EtM
-""+-MB\E+[!.k01rr<&YpB#R>I/E[<!#Xekp[f7*,8^"HpZ);SpH/FTp%S4!'EA.2pBM$*chGQb
-$*F4$%`oCbM>-br%03d0oeleaq=arM!,1Ee!!%TMJcF0uJ,~>
-Rf<?fpZN"<2uiq'7nbB5!+"ddkR!:Q!%Ui+!rtpSroj@^!7q,4rr<&MrTO7]%+aWn!!,#Q/H@m]
-!4i*mrr<6@"[YNZ!-eD*rr<&MrTF=6!!*#^#`f&f.o%bu!IFb/rr<&Mr9+HJ"99rJ3Wf@Rjn@m<
-!.k01rr<&Skl1V_9`@ro;F1`k-e\I^rr<&Mroj@^!7q,4'\36akidQt!B3_)!'DY0\`i5W!7pu0
-"+U@O^"MTL!.k01rr<&YkQ8?r2>cV;!!(ULkQ>Ds!,2Aq%FtLZkb\C]*_\?j=o\R#kS#cQ),<hY
-"99rJ3Wf@Rjlkea!*oNe"2Y3BVu#TY7KBOMkPtU6s+13us*t~>
-Rf<?fp[/FG3WK.)8PL]9!+5-lmKo'[!%^u0!ru![rpKdd!8IJ?rr<&RrU0[c%,:3(!!,&T0*"0b
-!58C"rr<6A"[bW]!.+V3rr<&RrU'aA!!*#d#a5>j/5S&$!Iat8rr<&Rr9alT"99uM49GRVlh9`H
-!.k01rr<&Smf*7e:B"5s<'q#n.,Opjrr<&RrpKdd!8IJ?'\`Tfmd>c/!B<k.!'Vh3^$b:g!8I>;
-",$XS_V+>W!.k01rr<&YmK1-'2Z)qB!!(dQmK7/'!,DN$%GLj_m]$<g+&+Qm>Q=d%mLqGX),O%`
-"99uM49GRVlgF't!+,Zm"31THXSV>d8-#mSmJm6<s+13us*t~>
-Rf<?fp\,'Y49,@-9Md;A!+Ya$pBd2i!%q57!ru'frqHEm!9F+Qrr<&[rV-<l%-7/?!!,,Y0E=?g
-!6+s3rr<6B"\(rc!.XtArr<&[rV$BS!!*#m#ab\o/lOP+!J:=Frr<&[r:^Mb"9:&R4p(dZo_/"Z
-!.k01rr<&Sp\t3n;>sZ$=%3Su.d-d)rr<&[rqHEm!9F+Q']]5op\0OF!BO+4!'i%7`V9*,!9EtM
-",R!Xak?Cg!.k01rr<&YpB&A83;`IM!!)*ZpB,43!,hf1%HIKhpTO]!+Aars?iU3)pCfIc)H0Fk
-"9:&R4p(dZo_7u<!+Ps%"3q)OZMO:s9)uH]pAb2Es+13us*t~>
-Rf<?fp?2eER7S>$!uXh6qWJ0r;],`I2NHqukl1V_f)=h4!!(UKkl1Vkf')=U.Kp2=O60mOFT1M(
-!!U8A%gP(ir94.\!7q,4!nI>OrTFHs:DO'H9XF]]rr<&Mqre9s;],`I2NHqmkPtU6s,R*Z!8Qf8
-!!EE;3.]ubkl1V_f)Fn5!!(UKkQ9<8!<20lM^el<2im*1!-IGg!!(UGkQ83n0A,Ig!.k01rr<&X
-kQ3@<cMZo+!!(ULkQAEs!58Bq%FtLZkif38%1+bTec5^JkS)',%0@'T]2KRN$oX..kid9l)Vb5S
-"*X_]fDOh7f`r_aj6-ICJcC<$df4g~>
-Rf<?fp?i4QSP'q,!uXn<qX+U'<>brK2j3P+mf*7eg\pR?!!(dPmf*7qg[=Kj.g?A@PO)i\GQ.%1
-!!UGI&-k7pr9jRb!8IJ?!o!\TrU'm(;&09K9t:/irr<&RqsF^(<>brK2j3P#mJm6<s,R*Z!8R#>
-!!EE<3ec\nmf*7eg]$X@!!(dPmK2,C!<2BrO"1DB30W]?!-dl!!!(dLmK1$$1"bmo!.k01rr<&X
-mK,'De,8Y6!!(dQmK:3(!5ea'%GLj_md@DI%1+eYgAh6OmM!l9%0@'Y^Ju-T$oa@9md>H&)r^b`
-"*sq`h#-RBhZkCnj6cmIJcC<$df4g~>
-Rf<?fp@ejcUJ2a5!ub(GqY(68=;h>P3LBF;p\t3njSeiQ!!)*Yp\t4%jS/D5/HuVER.Y.nI/`m?
-!!U\S&-tD$r:g3k!9F+Q!os=]rV$N9<#5ZO:quu'rr<&[qtC?9=;h>P3LBF3pAb2Es,R*Z!8R>G
-!!EE<4GrP(p\t3njSnoR!!)*YpB'CU!<2^&PV!(J3gfSS!.=P8!!)*UpB&541>)=$!.k01rr<&X
-pB!&Ng\ggG!!)*ZpB/G9!6P67%HIKhp\26e%LP%cj8]2XpCl+M%K[3ba&j5`%69dJp\04=*9mFr
-"+L:fjo"iTk6N@,j7`NRJcC<$df4g~>
-Rf<?f]'0.o!7o!M!!%TMNrK(ZU?DYm!05^q!!%TMNrK(ZiTL?5!->d9!eUK6iog@BJcC<$df4g~>
-Rf<?f]'fRu!8G?X!!%TMNrK(ZU@&(u!0Z"&!!%TMNrK(ZiU-c@!-Z!B!ep]=ipHdHJcC<$df4g~>
-Rf<?f](c4)!9Cuj!!%TMNrK(ZUA"_-!12@4!!%TMNrK(ZiV*DO!.)9O!fI&GiqEEQJcC<$df4g~>
-Rf<?f]'0.o!7o!M!!%TMNrK(ZV<A*BkctR1i7R5n!.k01rr<&WkQ3URgqDnRiuBK/iog@BJcC<$
-df4g~>
-Rf<?f]'fRu!8G?X!!%TMNrK(ZV="NMm^EQ=k1K)%!.k01rr<&WmK,9Zik=a^kT),<ipHdHJcC<$
-df4g~>
-Rf<?f](c4)!9Cuj!!%TMNrK(ZV=t/_pV%%Nmb%76!.k01rr<&WpB!;elFloonK'4QiqEEQJcC<$
-df4g~>
-Rf<?f]'0.o!7o!M!!%TMNrK(ZV<A%J#ljsafB<27JcCc1!!(s@!l+tZ^$#NL!jpqM!!%TMJcF0u
-J,~>
-Rf<?f]'fRu!8G?X!!%TMNrK(ZV="IQ#ljsefBrV=JcCc1!!(sF!lY@c^$YrU!kI:X!!%TMJcF0u
-J,~>
-Rf<?f](c4)!9Cuj!!%TMNrK(ZV=t*]$31'kfCo7FJcCc1!!(sO!mCjn^%VSd!l3dh!!%TMJcF0u
-J,~>
-Rf<?f]'0.o!7o!M!!%TMNrK(ZV<A#$#9&-DkPtU6s,R*Z!8luAL^(i5kQ9*?GMqZb!.k0$s3gpt~>
-Rf<?f]'fRu!8G?X!!%TMNrK(ZV="G-#9/?ImJm6<s,R*Z!8m2GN!IP@mK1rKHJn2k!.k0$s3gpt~>
-Rf<?f](c4)!9Cuj!!%TMNrK(ZV=t(:#TS]PpAb2Es,R*Z!8mMPOU'=LpB'1]J)L&$!.k0$s3gpt~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrK(ZJ`ugk!!%TMNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrK(ZJaW7"!!%TMNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrK(ZJbSm4!!%TMNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf<?fJ`ujl!!%TMNrOY1oDjIBNrK(ZJ`ugk!!%TMJcF0uJ,~>
-Rf<?fJaW:#!!%TMNrOY1oDjIBNrK(ZJaW7"!!%TMJcF0uJ,~>
-Rf<?fJbSp5!!%TMNrOY1oDjIBNrK(ZJbSm4!!%TMJcF0uJ,~>
-Rf@p=o`0RCJcEpnqTXTkJcEpnJH5<BJcC<$df4g~>
-Rf@p=o`0RCJcEpnqTXTkJcEpnJH5<BJcC<$df4g~>
-Rf@p=o`0RCJcEpnqTXTkJcEpnJH5<BJcC<$df4g~>
-JcF@%qTXTkJcCW-ps"BiJcCT,qTXTkJcCf2J,~>
-JcF@%qTXTkJcCW-ps"BiJcCT,qTXTkJcCf2J,~>
-JcF@%qTXTkJcCW-ps"BiJcCT,qTXTkJcCf2J,~>
-JcFC&ps"BiJcC]/pW\9hJcCW-ps"BiJcCi3J,~>
-JcFC&ps"BiJcC]/pW\9hJcCW-ps"BiJcCi3J,~>
-JcFC&ps"BiJcC]/pW\9hJcCW-ps"BiJcCi3J,~>
-JcFF'pW\9hJcC]/r656Ar69fmJcC]/p<A0gJcCl4J,~>
-JcFF'pW\9hJcC]/r656Ar69fmJcC]/p<A0gJcCl4J,~>
-JcFF'pW\9hJcC]/r656Ar69fmJcC]/p<A0gJcCl4J,~>
-JcFF'r656Ar69fmJcCc1r6>6@r69fmJcC`0r656Ar69fmJcCl4J,~>
-JcFF'r656Ar69fmJcCc1r6>6@r69fmJcC`0r656Ar69fmJcCl4J,~>
-JcFF'r656Ar69fmJcCc1r6>6@r69fmJcC`0r656Ar69fmJcCl4J,~>
-JcFI(r6>6@r69fmJcCi3r6>3?qos]lJcCf2r6>6@r69fmJcCo5J,~>
-JcFI(r6>6@r69fmJcCi3r6>3?qos]lJcCf2r6>6@r69fmJcCo5J,~>
-JcFI(r6>6@r69fmJcCi3r6>3?qos]lJcCf2r6>6@r69fmJcCo5J,~>
-JcFL)r6>3?qos]lJcCo5qp#'=qos]lJcCl4r6>0>r69fmJcCr6J,~>
-JcFL)r6>3?qos]lJcCo5qp#'=qos]lJcCl4r6>0>r69fmJcCr6J,~>
-JcFL)r6>3?qos]lJcCo5qp#'=qos]lJcCl4r6>0>r69fmJcCr6J,~>
-JcFO*qp#'=qos]lJcCu7qp#!;qos]lJcCr6qp#'=qos]lJcCu7J,~>
-JcFO*qp#'=qos]lJcCu7qp#!;qos]lJcCr6qp#'=qos]lJcCu7J,~>
-JcFO*qp#'=qos]lJcCu7qp#!;qos]lJcCr6qp#'=qos]lJcCu7J,~>
-JcFR+qp#!;qos]lJcD&9qp"p9r69fmJcCu7qp#!;qos]lJcD#8J,~>
-JcFR+qp#!;qos]lJcD&9qp"p9r69fmJcCu7qp#!;qos]lJcD#8J,~>
-JcFR+qp#!;qos]lJcD&9qp"p9r69fmJcCu7qp#!;qos]lJcD#8J,~>
-JcFU,qp"p9r69fmJcD&9r6=s8r69fmJcD&9qp"p9qos]lJcD&9J,~>
-JcFU,qp"p9r69fmJcD&9r6=s8r69fmJcD&9qp"p9qos]lJcD&9J,~>
-JcFU,qp"p9r69fmJcD&9r6=s8r69fmJcD&9qp"p9qos]lJcD&9J,~>
-JcFX-qp"j7r69fmJcD,;r6=m6r69fmJcD):r6=s8qos]lJcD):J,~>
-JcFX-qp"j7r69fmJcD,;r6=m6r69fmJcD):r6=s8qos]lJcD):J,~>
-JcFX-qp"j7r69fmJcD,;r6=m6r69fmJcD):r6=s8qos]lJcD):J,~>
-JcFX-r6=m6r69fmJcD2=r6=j5qos]lJcD/<r6=m6r69fmJcD):J,~>
-JcFX-r6=m6r69fmJcD2=r6=j5qos]lJcD/<r6=m6r69fmJcD):J,~>
-JcFX-r6=m6r69fmJcD2=r6=j5qos]lJcD/<r6=m6r69fmJcD):J,~>
-JcF[.r6=j5qos]lJcD8?qp"^3qos]lJcD5>r6=g4r69fmJcD,;J,~>
-JcF[.r6=j5qos]lJcD8?qp"^3qos]lJcD5>r6=g4r69fmJcD,;J,~>
-JcF[.r6=j5qos]lJcD8?qp"^3qos]lJcD5>r6=g4r69fmJcD,;J,~>
-JcF^/r6=d3qos]lJcD>Aqp"X1qos]lJcD;@qp"[2r69fmJcD/<J,~>
-JcF^/r6=d3qos]lJcD>Aqp"X1qos]lJcD;@qp"[2r69fmJcD/<J,~>
-JcF^/r6=d3qos]lJcD>Aqp"X1qos]lJcD;@qp"[2r69fmJcD/<J,~>
-JcFa0qp"X1qos]lJcDDCqp"R/r69fmJcD>Aqp"X1qos]lJcD2=J,~>
-JcFa0qp"X1qos]lJcDDCqp"R/r69fmJcD>Aqp"X1qos]lJcD2=J,~>
-JcFa0qp"X1qos]lJcDDCqp"R/r69fmJcD>Aqp"X1qos]lJcD2=J,~>
-JcFd1qp"R/r69fmJcDDCr6=U.r69fmJcDDCqp"R/qos]lJcD5>J,~>
-JcFd1qp"R/r69fmJcDDCr6=U.r69fmJcDDCqp"R/qos]lJcD5>J,~>
-JcFd1qp"R/r69fmJcDDCr6=U.r69fmJcDDCqp"R/qos]lJcD5>J,~>
-JcFg2qp"L-r69fmJcDJEr6=O,r69fmJcDGDr6=U.qos]lJcD8?J,~>
-JcFg2qp"L-r69fmJcDJEr6=O,r69fmJcDGDr6=U.qos]lJcD8?J,~>
-JcFg2qp"L-r69fmJcDJEr6=O,r69fmJcDGDr6=U.qos]lJcD8?J,~>
-JcFj3qp"F+r69fmJcDPGr6=L+qos]lJcDMFr6=O,qos]lJcD;@J,~>
-JcFj3qp"F+r69fmJcDPGr6=L+qos]lJcDMFr6=O,qos]lJcD;@J,~>
-JcFj3qp"F+r69fmJcDPGr6=L+qos]lJcDMFr6=O,qos]lJcD;@J,~>
-JcFj3r6=L+qos]lJcDVIqp"@)qos]lJcDSHr6=I*r69fmJcD;@J,~>
-JcFj3r6=L+qos]lJcDVIqp"@)qos]lJcDSHr6=I*r69fmJcD;@J,~>
-JcFj3r6=L+qos]lJcDVIqp"@)qos]lJcDSHr6=I*r69fmJcD;@J,~>
-JcFm4r6=F)qos]lJcD\Kqp":'qos]lJcDYJqp"=(r69fmJcD>AJ,~>
-JcFm4r6=F)qos]lJcD\Kqp":'qos]lJcDYJqp"=(r69fmJcD>AJ,~>
-JcFm4r6=F)qos]lJcD\Kqp":'qos]lJcDYJqp"=(r69fmJcD>AJ,~>
-JcFp5r6=@'qos]lJcDbMqp"4%r69fmJcD\Kqp"7&r69fmJcDABJ,~>
-JcFp5r6=@'qos]lJcDbMqp"4%r69fmJcD\Kqp"7&r69fmJcDABJ,~>
-JcFp5r6=@'qos]lJcDbMqp"4%r69fmJcD\Kqp"7&r69fmJcDABJ,~>
-JcFs6qp"4%r69fmJcDbMr6=7$r69fmJcDbMqp"4%qos]lJcDDCJ,~>
-JcFs6qp"4%r69fmJcDbMr6=7$r69fmJcDbMqp"4%qos]lJcDDCJ,~>
-JcFs6qp"4%r69fmJcDbMr6=7$r69fmJcDbMqp"4%qos]lJcDDCJ,~>
-JcG!7qp".#r69fmJcDhOr6=1"r69fmJcDhOqp".#qos]lJcDGDJ,~>
-JcG!7qp".#r69fmJcDhOr6=1"r69fmJcDhOqp".#qos]lJcDGDJ,~>
-JcG!7qp".#r69fmJcDhOr6=1"r69fmJcDhOqp".#qos]lJcDGDJ,~>
-JcG$8qp"(!r69fmJcDnQr6=.!qos]lJcDkPr6=1"qos]lJcDJEJ,~>
-JcG$8qp"(!r69fmJcDnQr6=.!qos]lJcDkPr6=1"qos]lJcDJEJ,~>
-JcG$8qp"(!r69fmJcDnQr6=.!qos]lJcDkPr6=1"qos]lJcDJEJ,~>
-JcG'9qp"$uqos]lJcDtSqp"!tqos]lJcDqRr6=*ur69fmJcDJEJ,~>
-JcG'9qp"$uqos]lJcDtSqp"!tqos]lJcDqRr6=*ur69fmJcDJEJ,~>
-JcG'9qp"$uqos]lJcDtSqp"!tqos]lJcDqRr6=*ur69fmJcDJEJ,~>
-JcG'9r6='tqos]lJcE%Uqp!prqos]lJcE"Tr6=$sr69fmJcDMFJ,~>
-JcG'9r6='tqos]lJcE%Uqp!prqos]lJcE"Tr6=$sr69fmJcDMFJ,~>
-JcG'9r6='tqos]lJcE%Uqp!prqos]lJcE"Tr6=$sr69fmJcDMFJ,~>
-JcG*:r6=!rqos]lJcE+Wqp!jpr69fmJcE%Uqp!mqr69fmJcDPGJ,~>
-JcG*:r6=!rqos]lJcE+Wqp!jpr69fmJcE%Uqp!mqr69fmJcDPGJ,~>
-JcG*:r6=!rqos]lJcE+Wqp!jpr69fmJcE%Uqp!mqr69fmJcDPGJ,~>
-JcG-;r6<ppr69fmJcE+Wr6<mor69fmJcE+Wqp!jpqos]lJcDSHJ,~>
-JcG-;r6<ppr69fmJcE+Wr6<mor69fmJcE+Wqp!jpqos]lJcDSHJ,~>
-JcG-;r6<ppr69fmJcE+Wr6<mor69fmJcE+Wqp!jpqos]lJcDSHJ,~>
-JcG0<qp!dnr69fmJcE1Yr6<gmr69fmJcE1Yqp!dnqos]lJcDVIJ,~>
-JcG0<qp!dnr69fmJcE1Yr6<gmr69fmJcE1Yqp!dnqos]lJcDVIJ,~>
-JcG0<qp!dnr69fmJcE1Yr6<gmr69fmJcE1Yqp!dnqos]lJcDVIJ,~>
-JcG3=qp!^lr69fmJcE7[r6<dlqos]lJcE4Zr6<gmqos]lJcDYJJ,~>
-JcG3=qp!^lr69fmJcE7[r6<dlqos]lJcE4Zr6<gmqos]lJcDYJJ,~>
-JcG3=qp!^lr69fmJcE7[r6<dlqos]lJcE4Zr6<gmqos]lJcDYJJ,~>
-JcG6>qp![kqos]lJcE=]qp!Xjqos]lJcE:\r6<akqos]lJcD\KJ,~>
-JcG6>qp![kqos]lJcE=]qp!Xjqos]lJcE:\r6<akqos]lJcD\KJ,~>
-JcG6>qp![kqos]lJcE=]qp!Xjqos]lJcE:\r6<akqos]lJcD\KJ,~>
-JcG6>r6<^jqos]lJcEC_qp!Rhqos]lJcE@^r6<[ir69fmJcD\KJ,~>
-JcG6>r6<^jqos]lJcEC_qp!Rhqos]lJcE@^r6<[ir69fmJcD\KJ,~>
-JcG6>r6<^jqos]lJcEC_qp!Rhqos]lJcE@^r6<[ir69fmJcD\KJ,~>
-JcG9?r6<Xhqos]lJcEIaqp!Lfr69fmJcEC_qp!Ogr69fmJcD_LJ,~>
-JcG9?r6<Xhqos]lJcEIaqp!Lfr69fmJcEC_qp!Ogr69fmJcD_LJ,~>
-JcG9?r6<Xhqos]lJcEIaqp!Lfr69fmJcEC_qp!Ogr69fmJcD_LJ,~>
-JcG<@r6<Rfr69fmJcEIar6<Oer69fmJcEIaqp!Ier69fmJcDbMJ,~>
-JcG<@r6<Rfr69fmJcEIar6<Oer69fmJcEIaqp!Ier69fmJcDbMJ,~>
-JcG<@r6<Rfr69fmJcEIar6<Oer69fmJcEIaqp!Ier69fmJcDbMJ,~>
-JcG?Aqp!Fdr69fmJcEOcr6<Icr69fmJcEOcqp!Fdqos]lJcDeNJ,~>
-JcG?Aqp!Fdr69fmJcEOcr6<Icr69fmJcEOcqp!Fdqos]lJcDeNJ,~>
-JcG?Aqp!Fdr69fmJcEOcr6<Icr69fmJcEOcqp!Fdqos]lJcDeNJ,~>
-JcGBBqp!@br69fmJcEUer6<Fbqos]lJcERdr6<Icqos]lJcDhOJ,~>
-JcGBBqp!@br69fmJcEUer6<Fbqos]lJcERdr6<Icqos]lJcDhOJ,~>
-JcGBBqp!@br69fmJcEUer6<Fbqos]lJcERdr6<Icqos]lJcDhOJ,~>
-JcGECqp!=aqos]lJcE[gqp!:`qos]lJcEXfr6<Caqos]lJcDkPJ,~>
-JcGECqp!=aqos]lJcE[gqp!:`qos]lJcEXfr6<Caqos]lJcDkPJ,~>
-JcGECqp!=aqos]lJcE[gqp!:`qos]lJcEXfr6<Caqos]lJcDkPJ,~>
-JcGHDqp!7_qos]lJcEaiqp!4^qos]lJcE^hr6<=_qos]lJcDnQJ,~>
-JcGHDqp!7_qos]lJcEaiqp!4^qos]lJcE^hr6<=_qos]lJcDnQJ,~>
-JcGHDqp!7_qos]lJcEaiqp!4^qos]lJcE^hr6<=_qos]lJcDnQJ,~>
-JcGHDr6<:^qos]lJcEgkqp!.\r69fmJcEaiqp!1]r69fmJcDnQJ,~>
-JcGHDr6<:^qos]lJcEgkqp!.\r69fmJcEaiqp!1]r69fmJcDnQJ,~>
-JcGHDr6<:^qos]lJcEgkqp!.\r69fmJcEaiqp!1]r69fmJcDnQJ,~>
-JcGKEr6<4\r69fmJcEgkr6<1[r69fmJcEgkqp!+[r69fmJcDqRJ,~>
-JcGKEr6<4\r69fmJcEgkr6<1[r69fmJcEgkqp!+[r69fmJcDqRJ,~>
-JcGKEr6<4\r69fmJcEgkr6<1[r69fmJcEgkqp!+[r69fmJcDqRJ,~>
-JcGNFr6<.Zr69fmJcEmmr6<+Yr69fmJcEmmqp!%Yr69fmJcDtSJ,~>
-JcGNFr6<.Zr69fmJcEmmr6<+Yr69fmJcEmmqp!%Yr69fmJcDtSJ,~>
-JcGNFr6<.Zr69fmJcEmmr6<+Yr69fmJcEmmqp!%Yr69fmJcDtSJ,~>
-JcGQGqp!"Xr69fmJcEsor6<(Xqos]lJcEsoqp!"Xqos]lJcE"TJ,~>
-JcGQGqp!"Xr69fmJcEsor6<(Xqos]lJcEsoqp!"Xqos]lJcE"TJ,~>
-JcGQGqp!"Xr69fmJcEsor6<(Xqos]lJcEsoqp!"Xqos]lJcE"TJ,~>
-JcGTHqoutWqos]lJcF$qqouqVqos]lJcF!pr6<%Wqos]lJcE%UJ,~>
-JcGTHqoutWqos]lJcF$qqouqVqos]lJcF!pr6<%Wqos]lJcE%UJ,~>
-JcGTHqoutWqos]lJcF$qqouqVqos]lJcF!pr6<%Wqos]lJcE%UJ,~>
-JcGWIqounUqos]lJcF*sqoukTqos]lJcF'rr6;tUqos]lJcE(VJ,~>
-JcGWIqounUqos]lJcF*sqoukTqos]lJcF'rr6;tUqos]lJcE(VJ,~>
-JcGWIqounUqos]lJcF*sqoukTqos]lJcF'rr6;tUqos]lJcE(VJ,~>
-JcGZJqouhSqos]lJcF0uqoueRr69fmJcF*sr6;nSr69fmJcE(VJ,~>
-JcGZJqouhSqos]lJcF0uqoueRr69fmJcF*sr6;nSr69fmJcE(VJ,~>
-JcGZJqouhSqos]lJcF0uqoueRr69fmJcF*sr6;nSr69fmJcE(VJ,~>
-JcGZJr6;kRr69fmJcF0ur6;hQr69fmJcF0uqoubQr69fmJcE+WJ,~>
-JcGZJr6;kRr69fmJcF0ur6;hQr69fmJcF0uqoubQr69fmJcE+WJ,~>
-JcGZJr6;kRr69fmJcF0ur6;hQr69fmJcF0uqoubQr69fmJcE+WJ,~>
-JcG]Kr6;ePr69fmJcF7"r6;bOr69fmJcF7"qou\Or69fmJcE.XJ,~>
-JcG]Kr6;ePr69fmJcF7"r6;bOr69fmJcF7"qou\Or69fmJcE.XJ,~>
-JcG]Kr6;ePr69fmJcF7"r6;bOr69fmJcF7"qou\Or69fmJcE.XJ,~>
-JcG`Lr6;_Nr69fmJcF=$r6;_Nqos]lJcF=$qouYNqos]lJcE1YJ,~>
-JcG`Lr6;_Nr69fmJcF=$r6;_Nqos]lJcF=$qouYNqos]lJcE1YJ,~>
-JcG`Lr6;_Nr69fmJcF=$r6;_Nqos]lJcF=$qouYNqos]lJcE1YJ,~>
-JcGcMqouVMqos]lJcFC&qouSLqos]lJcF@%r6;\Mqos]lJcE4ZJ,~>
-JcGcMqouVMqos]lJcFC&qouSLqos]lJcF@%r6;\Mqos]lJcE4ZJ,~>
-JcGcMqouVMqos]lJcFC&qouSLqos]lJcF@%r6;\Mqos]lJcE4ZJ,~>
-Jc>`MqouPKqos]lJcFI(qouMJqos]lJcFF'r6;VKqos]lJcE7[J,~>
-Jc>`MqouPKqos]lJcFI(qouMJqos]lJcFF'r6;VKqos]lJcE7[J,~>
-Jc>`MqouPKqos]lJcFI(qouMJqos]lJcFF'r6;VKqos]lJcE7[J,~>
-JcGVlZiBpIJcC<$h#I8rZN'jIJcC<$gAh)qZN'gHJcC<$\c70~>
-JcGVlZiBpIJcC<$h#I8rZN'jIJcC<$gAh)qZN'gHJcC<$\c70~>
-JcGVlZiBpIJcC<$h#I8rZN'jIJcC<$gAh)qZN'gHJcC<$\c70~>
-K)b_mZ2aaHJcC<$h#I;sYlFXGJcC<$h#I8rZ2aaHJcC<$\c70~>
-K)b_mZ2aaHJcC<$h#I;sYlFXGJcC<$h#I8rZ2aaHJcC<$\c70~>
-K)b_mZ2aaHJcC<$h#I;sYlFXGJcC<$h#I8rZ2aaHJcC<$\c70~>
-K)bbnYQ+OFJcC<$hZ*MuY5eFEJcC<$hZ*JtYQ+OFJcC<$])R9~>
-K)bbnYQ+OFJcC<$hZ*MuY5eFEJcC<$hZ*JtYQ+OFJcC<$])R9~>
-K)bbnYQ+OFJcC<$hZ*MuY5eFEJcC<$hZ*JtYQ+OFJcC<$])R9~>
-KE(koXoJ=DJcC<$i;``"XoJ:CJcC<$i;`]!XoJ=DJcC<$]DmB~>
-KE(koXoJ=DJcC<$i;``"XoJ:CJcC<$i;`]!XoJ=DJcC<$]DmB~>
-KE(koXoJ=DJcC<$i;``"XoJ:CJcC<$i;`]!XoJ=DJcC<$]DmB~>
-K`CtpXT/1BJcC<$irAo#XT/1BJcC<$iW&i#XT/1BJcC<$]`3K~>
-K`CtpXT/1BJcC<$irAo#XT/1BJcC<$iW&i#XT/1BJcC<$]`3K~>
-K`CtpXT/1BJcC<$irAo#XT/1BJcC<$iW&i#XT/1BJcC<$]`3K~>
-L&_%pX8i(AJcC<$jT#,%WrMt@JcC<$j8]&%WrMt@JcC<$^&NT~>
-L&_%pX8i(AJcC<$jT#,%WrMt@JcC<$j8]&%WrMt@JcC<$^&NT~>
-L&_%pX8i(AJcC<$jT#,%WrMt@JcC<$j8]&%WrMt@JcC<$^&NT~>
-LB%.qWW2k?JcC<$k5Y>'W;le?JcC<$jT#/&W;lb>JcC<$^Ai]~>
-LB%.qWW2k?JcC<$k5Y>'W;le?JcC<$jT#/&W;lb>JcC<$^Ai]~>
-LB%.qWW2k?JcC<$k5Y>'W;le?JcC<$jT#/&W;lb>JcC<$^Ai]~>
-L]@7rVuQ\>JcC<$k5YA(VZ6S=JcC<$k5Y>'VuQY=JcC<$^]/f~>
-L]@7rVuQ\>JcC<$k5YA(VZ6S=JcC<$k5Y>'VuQY=JcC<$^]/f~>
-L]@7rVuQ\>JcC<$k5YA(VZ6S=JcC<$k5Y>'VuQY=JcC<$^]/f~>
-L]@:sV>pJ<JcC<$kl:S*V#UA;JcC<$kl:P)V>pJ<JcC<$^]/f~>
-L]@:sV>pJ<JcC<$kl:S*V#UA;JcC<$kl:P)V>pJ<JcC<$^]/f~>
-L]@:sV>pJ<JcC<$kl:S*V#UA;JcC<$kl:P)V>pJ<JcC<$^]/f~>
-M#[CtU]:8:JcC<$lMpe,U]:59JcC<$lMpb+U]:8:JcC<$_#Jo~>
-M#[CtU]:8:JcC<$lMpe,U]:59JcC<$lMpb+U]:8:JcC<$_#Jo~>
-M#[CtU]:8:JcC<$lMpe,U]:59JcC<$lMpb+U]:8:JcC<$_#Jo~>
-M?!LuUAt,8JcC<$m/Qt-UAt,8JcC<$li6n-U&Y&8JcC<$_>f#~>
-M?!LuUAt,8JcC<$m/Qt-UAt,8JcC<$li6n-U&Y&8JcC<$_>f#~>
-M?!LuUAt,8JcC<$m/Qt-UAt,8JcC<$li6n-U&Y&8JcC<$_>f#~>
-MZ<RuU&Y#7JcC<$mf31/T`=o6JcC<$mJm+/T`=o6JcC<$_Z,,~>
-MZ<RuU&Y#7JcC<$mf31/T`=o6JcC<$mJm+/T`=o6JcC<$_Z,,~>
-MZ<RuU&Y#7JcC<$mf31/T`=o6JcC<$mJm+/T`=o6JcC<$_Z,,~>
-MuW\!TE"f5JcC<$nGiC1T)\`5JcC<$mf340T)\]4JcC<$_uG5~>
-MuW\!TE"f5JcC<$nGiC1T)\`5JcC<$mf340T)\]4JcC<$_uG5~>
-MuW\!TE"f5JcC<$nGiC1T)\`5JcC<$mf340T)\]4JcC<$_uG5~>
-N;re"ScAW4JcC<$nGiF2SH&N3JcC<$nGiC1ScAT3JcC<$`;b>~>
-N;re"ScAW4JcC<$nGiF2SH&N3JcC<$nGiC1ScAT3JcC<$`;b>~>
-N;re"ScAW4JcC<$nGiF2SH&N3JcC<$nGiC1ScAT3JcC<$`;b>~>
-NW8n#S,`E2JcC<$o)JX4RfE<1JcC<$o)JU3S,`E2JcC<$`;b>~>
-NW8n#S,`E2JcC<$o)JX4RfE<1JcC<$o)JU3S,`E2JcC<$`;b>~>
-NW8n#S,`E2JcC<$o)JX4RfE<1JcC<$o)JU3S,`E2JcC<$`;b>~>
-NW8q$RK*30JcC<$o`+j6RK*0/JcC<$o`+g5RK*30JcC<$`W(G~>
-NW8q$RK*30JcC<$o`+j6RK*0/JcC<$o`+g5RK*30JcC<$`W(G~>
-NW8q$RK*30JcC<$o`+j6RK*0/JcC<$o`+g5RK*30JcC<$`W(G~>
-NrT%%R/d'.JcC<$pAb$7R/d'.JcC<$pAb$7QiI!.JcC<$`rCP~>
-NrT%%R/d'.JcC<$pAb$7R/d'.JcC<$pAb$7QiI!.JcC<$`rCP~>
-NrT%%R/d'.JcC<$pAb$7R/d'.JcC<$pAb$7QiI!.JcC<$`rCP~>
-O8o.&QN-j,JcC<$q#C69QN-j,JcC<$p](09QN-j,JcC<$a8^Y~>
-O8o.&QN-j,JcC<$q#C69QN-j,JcC<$p](09QN-j,JcC<$a8^Y~>
-O8o.&QN-j,JcC<$q#C69QN-j,JcC<$p](09QN-j,JcC<$a8^Y~>
-OT54&Q2ga+JcC<$qZ$H;PlL[+JcC<$q#C9:PlLX*JcC<$aT$b~>
-OT54&Q2ga+JcC<$qZ$H;PlL[+JcC<$q#C9:PlLX*JcC<$aT$b~>
-OT54&Q2ga+JcC<$qZ$H;PlL[+JcC<$q#C9:PlLX*JcC<$aT$b~>
-OoP='PQ1R*JcC<$qZ$K<P5kI)JcC<$qZ$K<P5kF(JcC<$ao?k~>
-OoP='PQ1R*JcC<$qZ$K<P5kI)JcC<$qZ$K<P5kF(JcC<$ao?k~>
-OoP='PQ1R*JcC<$qZ$K<P5kI)JcC<$qZ$K<P5kF(JcC<$ao?k~>
-P5kF(OoP@(JcC<$r;Z]>OT57'JcC<$r;ZZ=OoP='JcC<$b5Zt~>
-P5kF(OoP@(JcC<$r;Z]>OT57'JcC<$r;ZZ=OoP='JcC<$b5Zt~>
-P5kF(OoP@(JcC<$r;Z]>OT57'JcC<$r;ZZ=OoP='JcC<$b5Zt~>
-PQ1O)O8o.&JcC<$rr;o@O8o+%JcC<$rr;l?O8o.&JcC<$b5Zt~>
-PQ1O)O8o.&JcC<$rr;o@O8o+%JcC<$rr;l?O8o.&JcC<$b5Zt~>
-PQ1O)O8o.&JcC<$rr;o@O8o+%JcC<$rr;l?O8o.&JcC<$b5Zt~>
-PQ1R*NrT"$JcC<$!<;r@NrT"$JcC<$!<;r@NW8q$JcC<$bQ!(~>
-PQ1R*NrT"$JcC<$!<;r@NrT"$JcC<$!<;r@NW8q$JcC<$bQ!(~>
-PQ1R*NrT"$JcC<$!<;r@NrT"$JcC<$!<;r@NW8q$JcC<$bQ!(~>
-PlL[+N;re"JcC?%qot*"qos]lJcGYmMuW_"JcC<$bl<1~>
-PlL[+N;re"JcC?%qot*"qos]lJcGYmMuW_"JcC<$bl<1~>
-PlL[+N;re"JcC?%qot*"qos]lJcGYmMuW_"JcC<$bl<1~>
-Q2gd,MZ<RuJcCE'qot#ur69fmK)bbnMZ<RuJcC<$c2W:~>
-Q2gd,MZ<RuJcCE'qot#ur69fmK)bbnMZ<RuJcC<$c2W:~>
-Q2gd,MZ<RuJcCE'qot#ur69fmK)bbnMZ<RuJcC<$c2W:~>
-QN-j,M?!LuJcCE'r6:&tr69fmK`CtpM#[@sJcC<$cMrC~>
-QN-j,M?!LuJcCE'r6:&tr69fmK`CtpM#[@sJcC<$cMrC~>
-QN-j,M?!LuJcCE'r6:&tr69fmK`CtpM#[@sJcC<$cMrC~>
-QiHs-L]@:sJcCK)r69urr69fmLB%.qL]@7rJcC<$ci8L~>
-QiHs-L]@:sJcCK)r69urr69fmLB%.qL]@7rJcC<$ci8L~>
-QiHs-L]@:sJcCK)r69urr69fmLB%.qL]@7rJcC<$ci8L~>
-R/d'.L&_(qJcCQ+r69rqqos]lM#[@sL&_%pJcC<$d/SU~>
-R/d'.L&_(qJcCQ+r69rqqos]lM#[@sL&_%pJcC<$d/SU~>
-R/d'.L&_(qJcCQ+r69rqqos]lM#[@sL&_%pJcC<$d/SU~>
-RK*0/K`CqoJcCW-qosfoqos]lMZ<RuKE(koJcC<$d/SU~>
-RK*0/K`CqoJcCW-qosfoqos]lMZ<RuKE(koJcC<$d/SU~>
-RK*0/K`CqoJcCW-qosfoqos]lMZ<RuKE(koJcC<$d/SU~>
-RK*30K)b_mJcC]/qos`mqos]lMuW_"JcGYmJcC<$dJn^~>
-RK*30K)b_mJcC]/qos`mqos]lMuW_"JcGYmJcC<$dJn^~>
-RK*30K)b_mJcC]/qos`mqos]lMuW_"JcGYmJcC<$dJn^~>
-RfE<1Jc>`Mqos]lNrT"$Jc>`Mr69fmN;rh#JcGcMr69fmJcF0uJ,~>
-RfE<1Jc>`Mqos]lNrT"$Jc>`Mr69fmN;rh#JcGcMr69fmJcF0uJ,~>
-RfE<1Jc>`Mqos]lNrT"$Jc>`Mr69fmN;rh#JcGcMr69fmJcF0uJ,~>
-S,`E2JcG`Lr69fmNrT%%JcG`Lr69fmNrT%%JcG`Lqos]lJcF4!J,~>
-S,`E2JcG`Lr69fmNrT%%JcG`Lr69fmNrT%%JcG`Lqos]lJcF4!J,~>
-S,`E2JcG`Lr69fmNrT%%JcG`Lr69fmNrT%%JcG`Lqos]lJcF4!J,~>
-SH&K2JcG]Kr69fmOT57'JcGZJr69fmOT54&JcG]Kqos]lJcF7"J,~>
-SH&K2JcG]Kr69fmOT57'JcGZJr69fmOT54&JcG]Kqos]lJcF7"J,~>
-SH&K2JcG]Kr69fmOT57'JcGZJr69fmOT54&JcG]Kqos]lJcF7"J,~>
-ScAT3JcGWIr69fmP5kI)JcGWIqos]lP5kF(JcGWIqos]lJcF:#J,~>
-ScAT3JcGWIr69fmP5kI)JcGWIqos]lP5kF(JcGWIqos]lJcF:#J,~>
-ScAT3JcGWIr69fmP5kI)JcGWIqos]lP5kF(JcGWIqos]lJcF:#J,~>
-T)\]4JcGTHqos]lPlLX*JcGTHqos]lPlLX*JcGQGr69fmJcF:#J,~>
-T)\]4JcGTHqos]lPlLX*JcGTHqos]lPlLX*JcGQGr69fmJcF:#J,~>
-T)\]4JcGTHqos]lPlLX*JcGTHqos]lPlLX*JcGQGr69fmJcF:#J,~>
-T)\`5JcGNFqos]lQN-j,JcGNFqos]lQN-j,JcGKEr69fmJcF=$J,~>
-T)\`5JcGNFqos]lQN-j,JcGNFqos]lQN-j,JcGKEr69fmJcF=$J,~>
-T)\`5JcGNFqos]lQN-j,JcGNFqos]lQN-j,JcGKEr69fmJcF=$J,~>
-TE"i6JcGHDqos]lR/d'.JcGHDr69fmQN-m-JcGECr69fmJcF@%J,~>
-TE"i6JcGHDqos]lR/d'.JcGHDr69fmQN-m-JcGECr69fmJcF@%J,~>
-TE"i6JcGHDqos]lR/d'.JcGHDr69fmQN-m-JcGECr69fmJcF@%J,~>
-T`=r7JcGBBr69fmR/d*/JcGBBr69fmR/d*/JcGBBqos]lJcFC&J,~>
-T`=r7JcGBBr69fmR/d*/JcGBBr69fmR/d*/JcGBBqos]lJcFC&J,~>
-T`=r7JcGBBr69fmR/d*/JcGBBr69fmR/d*/JcGBBqos]lJcFC&J,~>
-U&Y#7JcG?Ar69fmRfE<1JcG<@r69fmRfE<1JcG<@qos]lJcFF'J,~>
-U&Y#7JcG?Ar69fmRfE<1JcG<@r69fmRfE<1JcG<@qos]lJcFF'J,~>
-U&Y#7JcG?Ar69fmRfE<1JcG<@r69fmRfE<1JcG<@qos]lJcFF'J,~>
-UAt,8JcG9?r69fmSH&N3JcG9?qos]lSH&K2JcG9?qos]lJcFI(J,~>
-UAt,8JcG9?r69fmSH&N3JcG9?qos]lSH&K2JcG9?qos]lJcFI(J,~>
-UAt,8JcG9?r69fmSH&N3JcG9?qos]lSH&K2JcG9?qos]lJcFI(J,~>
-U]:59JcG6>qos]lT)\]4JcG6>qos]lT)\]4JcG3=qos]lJcFL)J,~>
-U]:59JcG6>qos]lT)\]4JcG6>qos]lT)\]4JcG3=qos]lJcFL)J,~>
-U]:59JcG6>qos]lT)\]4JcG6>qos]lT)\]4JcG3=qos]lJcFL)J,~>
-V#U>:JcG0<qos]lT`=o6JcG0<qos]lT`=o6JcG-;r69fmJcFL)J,~>
-V#U>:JcG0<qos]lT`=o6JcG0<qos]lT`=o6JcG-;r69fmJcFL)J,~>
-V#U>:JcG0<qos]lT`=o6JcG0<qos]lT`=o6JcG-;r69fmJcFL)J,~>
-V#UA;JcG*:qos]lUAt,8JcG*:r69fmT`=r7JcG'9r69fmJcFO*J,~>
-V#UA;JcG*:qos]lUAt,8JcG*:r69fmT`=r7JcG'9r69fmJcFO*J,~>
-V#UA;JcG*:qos]lUAt,8JcG*:r69fmT`=r7JcG'9r69fmJcFO*J,~>
-V>pJ<JcG$8r69fmUAt/9JcG$8r69fmUAt/9JcG!7r69fmJcFR+J,~>
-V>pJ<JcG$8r69fmUAt/9JcG$8r69fmUAt/9JcG!7r69fmJcFR+J,~>
-V>pJ<JcG$8r69fmUAt/9JcG$8r69fmUAt/9JcG!7r69fmJcFR+J,~>
-VZ6S=JcFs6r69fmV#UA;JcFs6r69fmV#UA;JcFs6qos]lJcFU,J,~>
-VZ6S=JcFs6r69fmV#UA;JcFs6r69fmV#UA;JcFs6qos]lJcFU,J,~>
-VZ6S=JcFs6r69fmV#UA;JcFs6r69fmV#UA;JcFs6qos]lJcFU,J,~>
-VuQY=JcFp5r69fmVZ6S=JcFp5qos]lVZ6P<JcFp5qos]lJcFX-J,~>
-VuQY=JcFp5r69fmVZ6S=JcFp5qos]lVZ6P<JcFp5qos]lJcFX-J,~>
-VuQY=JcFp5r69fmVZ6S=JcFp5qos]lVZ6P<JcFp5qos]lJcFX-J,~>
-W;lb>JcFm4qos]lW;lb>JcFm4qos]lW;lb>JcFj3qos]lJcF[.J,~>
-W;lb>JcFm4qos]lW;lb>JcFm4qos]lW;lb>JcFj3qos]lJcF[.J,~>
-W;lb>JcFm4qos]lW;lb>JcFm4qos]lW;lb>JcFj3qos]lJcF[.J,~>
-WW2k?JcFg2qos]lWrMt@JcFg2qos]lWrMt@JcFd1qos]lJcF^/J,~>
-WW2k?JcFg2qos]lWrMt@JcFg2qos]lWrMt@JcFd1qos]lJcF^/J,~>
-WW2k?JcFg2qos]lWrMt@JcFg2qos]lWrMt@JcFd1qos]lJcF^/J,~>
-WrMt@JcFa0qos]lXT/1BJcFa0r69fmWrN"AJcF^/r69fmJcF^/J,~>
-WrMt@JcFa0qos]lXT/1BJcFa0r69fmWrN"AJcF^/r69fmJcF^/J,~>
-WrMt@JcFa0qos]lXT/1BJcFa0r69fmWrN"AJcF^/r69fmJcF^/J,~>
-WrN"AJcF[.r69fmXT/4CJcF[.r69fmXT/4CJcFX-r69fmJcFa0J,~>
-WrN"AJcF[.r69fmXT/4CJcF[.r69fmXT/4CJcFX-r69fmJcFa0J,~>
-WrN"AJcF[.r69fmXT/4CJcF[.r69fmXT/4CJcFX-r69fmJcFa0J,~>
-X8i+BJcFU,r69fmY5eFEJcFU,r69fmY5eFEJcFR+r69fmJcFd1J,~>
-X8i+BJcFU,r69fmY5eFEJcFU,r69fmY5eFEJcFR+r69fmJcFd1J,~>
-X8i+BJcFU,r69fmY5eFEJcFU,r69fmY5eFEJcFR+r69fmJcFd1J,~>
-XT/4CJcFO*r69fmYlFXGJcFR+qos]lYlFUFJcFR+qos]lJcFg2J,~>
-XT/4CJcFO*r69fmYlFXGJcFR+qos]lYlFUFJcFR+qos]lJcFg2J,~>
-XT/4CJcFO*r69fmYlFXGJcFR+qos]lYlFUFJcFR+qos]lJcFg2J,~>
-XoJ:CJcFO*qos]lZN'gHJcFO*qos]lZN'gHJcFL)qos]lJcFj3J,~>
-XoJ:CJcFO*qos]lZN'gHJcFO*qos]lZN'gHJcFL)qos]lJcFj3J,~>
-XoJ:CJcFO*qos]lZN'gHJcFO*qos]lZN'gHJcFL)qos]lJcFj3J,~>
-Y5eCDJcFI(qos]l[/^$JJcFI(qos]l[/^$JJcFF'qos]lJcFm4J,~>
-Y5eCDJcFI(qos]l[/^$JJcFI(qos]l[/^$JJcFF'qos]lJcFm4J,~>
-Y5eCDJcFI(qos]l[/^$JJcFI(qos]l[/^$JJcFF'qos]lJcFm4J,~>
-YQ+LESH"-?oDjIBq>^?:SH"-?oDlQ(JH5<BhuA6-oDjIBWrIS~>
-YQ+LESH"-?oDjIBq>^?:SH"-?oDlQ(JH5<BhuA6-oDjIBWrIS~>
-YQ+LESH"-?oDjIBq>^?:SH"-?oDlQ(JH5<BhuA6-oDjIBWrIS~>
-oDa@AoDmeK!!%T6p?2JV^&NW`oDmeK!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JVJcDbMJ,~>
-oDa@AoDmeK!!%T<p?hn\^&NW`oDmeK!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\JcDbMJ,~>
-oDa@AoDmeK!!%TEp@eOe^&NW`oDmeK!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOeJcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!&kZ!9_hp!!'_4!!%T6p?2JVhu<ZVV<@pBe*$c3]`.s3J`ugk!!(pV!!&kZ
-!9_hp!!%TMWrIS~>
-oD\djJaW7"!!(pV!!&k`!:A8'!!'_4!!%T<p?hn\hu<ZVV="?Ne*[29]`.s3JaW7"!!(pV!!&k`
-!:A8'!!%TMWrIS~>
-oD\djJbSm4!!(pV!!&ki!;=n9!!'_4!!%TEp@eOehu<ZVV=su`e+WhB]`.s3JbSm4!!(pV!!&ki
-!;=n9!!%TMWrIS~>
-oD\djJ`ugk!!(pV!!(p?qZ$a#$S#uCo]Z;T!7pH!rr<&MroaEr37cRB!!'_4!!%T6p?2JVhu<ZV
-hWXh:"9Jr\Ct84Brr<&Ml0/-I"kMo$]K"KkkPtUqrr<&Kkk5#Tkl1Vaf')>k!;ksckFPBe"U6&H
-VU=T-!8meV!8cr:!!E?2.W!Z.kl1V_f';K!!!(ULkQ8CVf$ig_!.k0Ms*t~>
-oD\djJaW7"!!(pV!!(pEqZ$a#$S-/Lo^;_Z!8Hf,rr<&RrpBj(3nr-O!!'_4!!%T<p?hn\hu<ZV
-hX:7@"9Jr]DqamPrr<&Rl0eQO"l&J5_)g?"mJm7"rr<&Kme-YZmf*7gg[=M'!;l0im@mAr"U?/L
-WmU57!8meV!8d/@!!E?2.rX/7mf*7egZn5,!!(dQmK13cgXGQj!.k0Ms*t~>
-oD\djJbSm4!!(pV!!(pNqZ$a#$nZP\o_8@c!9EG>rr<&[rq?K94QOuc!!'_4!!%TEp@eOehu<ZV
-hY6mI"9Ju`F5urfrr<&[l1b2X"m#FPaZSY5pAb3+rr<&Kp\"Ucp\t3pjS/EB!;lKrp8Lq1"U?2P
-YgN1F!8meV!8dJI!!E?3/T]tFp\t3njQcL>!!)*ZpB&H!jO<i'!.k0Ms*t~>
-oD\djeEHT+roj@^!7q/5p&P!R#j7dR)[-Ef;Pqk*!!(pV!!(p?rr<$mr_itu7hbqAch6N%!!(U8
-kl1V_f)Fk7!W^g#kPtUrrr<&Kkk5#Tkl1V_f)Fn,!;u$dkFPBe"U6&HVU=T-!8meV!8cr>!!#^l
-;[$&h'EB&tp?;MV!7pDurr<5Rki`'Jf$ig_!5/=3!7^64!!#^g;uPq[!!Us;kPtTVq,@4T$d(1(
-!%1?3.KKN/c-tkV!8meV!8cr>!!#^l;[$&h'EB&tp?;MV!7pH!rr<&MroaCb!7oW_!!%TMWrIS~>
-oD\djeF*#1rpKdd!8IM@p&P!X#jn?^*!HQi<3"@6!!(pV!!(pErr<$or`',$8JM4Eeb/A1!!(d=
-mf*7eg]$UB!W_!(mJm7#rr<&Kme-YZmf*7eg]$X7!;u6jm@mAr"U?/LWmU57!8meV!8d/D!!#dn
-<<Z>n'`]3'p?qq\!8Hc+rr<5Wmd:,VgXGQj!5/=3!7^H:!!#di<W2@c!!V-FmJm5^q,R@\$dUR.
-!%:K8.ffW2daRUa!8meV!8d/D!!#dn<<Z>n'`]3'p?qq\!8Hf,rr<&RrpBgh!8Guj!!%TMWrIS~>
-oD\djeG&Y:rqHEm!9F.Rp&P!a#kk5q*<cZk=0U*H!!(pV!!(pNrr<$rr`B>*9GIOIh=^OB!!)*F
-p\t3njSnlT!W_<1pAb3,rr<&Kp\"Ucp\t3njSnoI!;uQsp8Lq1"U?2PYgN1F!8meV!8dJM!!#mq
-=9Vc"'`]60p@nRe!9ED=rr<5`p\+^hjO<i'!5/=3!7^cC!!#ml=T/!o!!VHXpAb1jq,mRh$eI38
-!%L]?/HGi6g=,cr!8meV!8dJM!!#mq=9Vc"'`]60p@nRe!9EG>rr<&[rq?Hq!9DW'!!%TMWrIS~>
-oD\djeEHo4!)32eroj@^!7q/5rr<$mq,@4T$d(1(!%1?3.KKN/c-tkV!8meV!8m#?!!(UJkQBa,
-!)iLRs24p!lKJ8d!9O4Drr<&Me*$c3^&J'4eEHo4!)32erTO7]!7q/5rr<$mq,@7U$d(1(!%1?3
-.KKN/c-tkV!8meV!8cr>!!(UJkQBa,!)iOSs24p!l0//c"m+t3!!(U!kPtUqrr<&Kkl1V_f(J8,
-!!Us;kPtV6p#lP"'`^eDrTFC(8,sLOeE?l4hu<ZVhWXt>!7q)3"5l?C;YK>S_uSoakl8R$jo4KD
-!!(U!kPtU6s/Q*L~>
-oD\djeF*>:!)E>irpKdd!8IM@rr<$oq,R@\$dUR.!%:K8.ffW2daRUa!8meV!8m5E!!(dOmK;T9
-!*&XZs2b9,lL+\o!:0XPrr<&Re*[29^&J'4eF*>:!)E>irU0[c!8IM@rr<$oq,RC]$dUR.!%:K8
-.ffW2daRUa!8meV!8d/D!!(dOmK;T9!*&[[s2b9,l0eSn"mbUE!!(d&mJm7"rr<&Kmf*7eg\("7
-!!V-FmJm7Ap$Mt-'`^kKrU'g38cT^VeF!;:hu<ZVhX:CD!8IG>"6MfJ<;,b[aT1Ylmf1B/li->P
-!!(d&mJm6<s/Q*L~>
-oD\djeG&tC!)`PorqHEm!9F.Rrr<$rq,mRh$eI38!%L]?/HGi6g=,cr!8meV!8mPN!!)*XpB0hM
-!*Ajfs3Lc<lM(>*!;-9brr<&[e+WhB^&J'4eG&tC!)`PorV-<l!9F.Rrr<$rq,mUi$eI38!%L]?
-/HGi6g=,cr!8meV!8dJM!!)*XpB0hM!*Amgs3Lc<l1b5)"n_Q`!!)*/pAb3+rr<&Kp\t3njRr9I
-!!VHXpAb3Sp%JU>('%(VrV$HD9`Q'beFrqChu<ZVhY7$M!9F(P"7AJU=8)CgciE_'p]&S?o`"Ub
-!!)*/pAb2Es/Q*L~>
-oD\djeEHo4!7pl-rr<&Mroj@^!7pi,"NV;X8B(Pk"NEt4(sURo!!(pV!!(p?rr<&Mqre."!!qc=
-kl1V_f$ig_!58C4!7^64!!(UCkl1V_f)Fn5!!(UDkQJsA!(b*-kQJmr!#Wu1kPtV?rr<&Ukl1V_
-f)+Y5_Z0u*fBE57!7oW_!!'\3!!(O4rr<&Mp#uDU"kMo$!!(UDkQBs#!,_Pq"()$ekLJbr!8meV
-!8cr>!!(UIkQA^&#j9h'rr<&Me*$c3JcDbMJ,~>
-oD\djeF*>:!8I58rr<&RrpKdd!8I27"O.Y]9$7,#"NsC;(t-q%!!(pV!!(pErr<&RqsFR-!!quC
-mf*7egXGQj!58C4!7^H:!!(dHmf*7eg]$X@!!(dImKCcL!(tE4mKC^*!#X/6mJm7Err<&Umf*7e
-g\^C@a8cM5fC&Y=!8Guj!!'\3!!(O:rr<&Rp$Vh["l&J5!!(dImK;f1!-%c%"(;0hmFCV)!8meV
-!8d/D!!(dNmK:N1#jp73rr<&Re*[29JcDbMJ,~>
-oD\djeG&tC!9EkJrr<&[rqHEm!9EhI"P"7f:!rq6"Og'F);<U7!!(pV!!(pNrr<&[qtC3=!"&AM
-p\t3njO<i'!58C4!7^cC!!)*Qp\t3njSnoR!!)*RpB9"^!):l>pB8r>!#aM?pAb3Nrr<&Up\t3n
-jSSZRcN":FfD#:F!9DW'!!'\3!!(OCrr<&[p%SId"m#FP!!)*RpB1(D!-J&2"(_Hnp=8m;!8meV
-!8dJM!!)*WpB/_A$23!Frr<&[e+WhBJcDbMJ,~>
-oD\djeEHo4!7pl-rr<&Mroj@^!7pl-"6M6:D>EAt?N<%Je`Zu5hu<ZVhrt(?!7q&2&`Wikh!!r%
-!5Ll)&q0!-!!(ULkQ\[t(^1UI[J]7g!"-M-"ql@J!!(U6kkY8Z4oFLGjVS*Gi91.@^&J'4eEHo4
-!7pi,rr<&Mroj@^!7po."6M6:D>EAt?N<%Je`Zu5hu<ZVhWXt>!7q&2&E<`jh!!r%!5Ll)&q/sD
-!7q,4#/!hN"VaY<rTO7]$G\q3&q0!-!!(U6q>^LYr9+7E(^&+BkPtUqrr<&Kkl1V_f(J8,!!Us;
-kPtV6p?2UM!%R.,kQBie!2\60!!(pV!!(m>rr<&MqreUO!!(g<kPtUu5m@sMkPtV6rTFHu;A]QO
-9XXi_rr<DA5m@sMkPtV6kihjC!'U8D"6C@%cf"!e!.k0Ms*t~>
-oD\djeF*>:!8I58rr<&RrpKdd!8I58"7.`BE;Ao(@/r:Sea<D;hu<ZVhsULE!8ID=&a98qipQ47
-!6%80'7fN=!!(dQmKUL,(^1XK]);!r!"-\3#8;XU!!(dAmeQn`5Q'pOlPK`Ri9gRF^&J'4eF*>:
-!8I27rr<&RrpKdd!8I89"7.`BE;Ao(@/r:Sea<D;hu<ZVhX:CD!8ID=&Es/pipQ47!6%80'7fKN
-!8IJ?#/O7U"VjbCrU0[c$H5=:'7fN=!!(dAq>^L[r9a[Q(^&:GmJm7"rr<&Kmf*7eg\("7!!V-F
-mJm7Ap?i$W!%[F3mK;Yq!3+N:!!(pV!!(mDrr<&RqsG$[!!)$HmJm7+63e0SmJm7ArU'm+<#>cR
-9tL;krr<DF63e0SmJm7AmdBoO!'gDL"7$d+eDT`p!.k0Ms*t~>
-oD\djeG&tC!9EkJrr<&[rqHEm!9EkJ"8+DLFSYY5AH4dbeb9%Dhu<ZVhtR-N!9F%O&b5o%lM(#Q
-!6dk:'8?2T!!)*ZpBJ`@)$LaO_>O'-!"-q=#8;gc!!)*Sp\Fji62^HZoGIbdi:d3O^&J'4eG&tC
-!9EhIrr<&[rqHEm!9EnK"8+DLFSYY5AH4dbeb9%Dhu<ZVhY7$M!9F%O&Fof$lM(#Q!6dk:'8?/\
-!9F+Q#0Bpa"VjkMrV-<l$HtpD'8?2T!!)*Sq>^L]r:^<c)$A[PpAb3+rr<&Kp\t3njRr9I!!VHX
-pAb3Sp@eZg!%mm>pB0q/!3arI!!(pV!!(mMrr<&[qtCZm!!)<YpAb3;70aK[pAb3SrV$N<<uD/V
-:r3,)rr<DM70aK[pAb3Sp\4La!($PW"8!H5gu.o,!.k0Ms*t~>
-oD\djeEHo4!7pl-rr<&Mroj@^!7pl-".fKBk5"3Ciu\8te`Zu5hu<ZVhrt(?!7q&2!l"^Groj@^
-'I+Mh+K+Ge!!(U6k`Q&K.SVMq!f$[;rr<]W)G;3NkPtV6kibqF!)-<Y#6N0KkQ7LZ6f7)-!58C4
-!7^64!!(UCkl1V_f)Fn5!!(UEkQ@CV.d$Qj"61I'V:Fc0!8meV!8cr>!!(UIkQ8L!&,tem!!jef
-9-C.r!!(ULkQm=S!%L\q!!7oSkl1Vr,8s2tVs*=E!7p@4!!#\k6O*\;rTF<X!(5Z-!!'\3!!(O4
-rr<&Mp#uDU"kMo$!!(UDkQ4N[K_O[3HiR'pkPtV?rr<&Ukl1V_f)+Y4^AnfDkl1Vg,8s2tVs"*\
-f)Fk=Ootb79eHDILApE:!#$Rq9-C.r!!(U6kYhH]9N+:`!mU]-!i#`_hrk%?JcDbMJ,~>
-oD\djeF*>:!8I58rr<&RrpKdd!8I58"/5cGm.p&OkTBl)ea<D;hu<ZVhsULE!8ID=!lP'MrpKdd
-'I+Pk+ft,"!!(dAmZdnT.o.i!!f?mDrr<]W)bhKWmJm7Amd='T!)?N_#6N?PmK09d7GmM5!58C4
-!7^H:!!(dHmf*7eg]$X@!!(dJmK90`/+!*""6^j-WR^D:!8meV!8d/D!!(dNmK1<,&H;+t!!jeg
-9d-V+!!(dQmKf'\!%Ui!!!8#Vmf*8#,9'?#XR>KV!8HpA!!#bo70`nBrU'`b!(Gf5!!'\3!!(O:
-rr<&Rp$Vh["l&J5!!(dImK-5cL\L3<IfNHumJm7Err<&Umf*7eg\^C?_uLAJmf*7m,9'?#XR6&g
-g]$UHPlq(;:G;bMM>lrC!#$Rr9d-V+!!(dAmSs5e:/s^f!n.&8!iH#ehsLIEJcDbMJ,~>
-oD\djeG&tC!9EkJrr<&[rqHEm!9EkJ"/u8Pp%e=anK@n9eb9%Dhu<ZVhtR-N!9F%O!m:QTrqHEm
-'I=_p,-pt;!!)*SpR;9c/Q+;'!fm6Rrr<]Y*)@capAb3Sp\.bi!)Zih#Qi`YpB%Gs8Dj.A!58C4
-!7^cC!!)*Qp\t3njSnoR!!)*SpB.Ap/bSr6"7[N7YLW@I!8meV!8dJM!!)*WpB&M<&H;G(!!jkj
-:Em+=!!)*ZpB[5k!%h)'!!82[p\t4,,of])ZM4(n!9ElV!!#ku8-f:NrV$Aq!(c#A!!'\3!!(OC
-rr<&[p%SId"m#FP!!)*RpB":oN;*&JKE,*(pAb3Nrr<&Up\t3njSSZQb5`+Qp\t4!,of])ZM+>!
-jSnlZRfi^C;DA.QNrJeQ!#$Xu:Em+=!!)*SpK.Cq;-6?p!o!VI!j)GnhtI*NJcDbMJ,~>
-oD\djeEHo4!7pl-rr<&Mroj@^!7pl-!`&fLpZM[+!)hA2!!(pV!!(p?rr<&Mr9+783WNRekl1Vm
-0&YsVkNM+0!7pAM!s4\ckQ@F\!j_ghrr<<Wi99@ekPtV6roj@^"kMo$<<.4@kQ4<UT&8`3!58C4
-!7^64!!(UCkl1V_f)Fn5!!(UEkQ4N[K_O[3HiR'pkPtV?rr<&Ukl1V_f)4_6fK'"?roj@^%PH]'
-kND%/!7pAt_#jb&rob;n"Tl!nkPtT8i99@eki`!Hf');t!7pAt<<.4@kQ4<UT&8`3!5/=3!7^64
-!!(UCkl1Vdf');t!7pl-!Zh?NpZM[e!$9\S!!(pV!!(m>rr<&Mr9+783WNRekl1Vm0&YsVkNDmG
-f')>6!s4\ckRa?i!j_%R!!"Y0ki_-m!!(ULkl1Vdf')<t!-\>)!_EB`hrk%?JcDbMJ,~>
-oD\djeF*>:!8I58rr<&RrpKdd!8I58!`8rQp[/*4!*%M:!!(pV!!(pErr<&Rr9a[C49/mjmf*7s
-0]qfjmI'BB!8Hq]!s4hgmK93g!k80srr<<Yk3hX(mJm7ArpKdd"l&J5<rdOEmK-#]U>PA=!58C4
-!7^H:!!(dHmf*7eg]$X@!!(dJmK-5cL\L3<IfNHumJm7Err<&Umf*7eg\gIAh)k[IrpKdd%P[&5
-mHs<A!8Hr0`WH:/rpC`#"p2:%mJm5@k3hX(md:&Tg[=J0!8Hr0<rdOEmK-#]U>PA=!5/=3!7^H:
-!!(dHmf*7jg[=J0!8I58!ZqETp[/*p!$BbZ!!(pV!!(mDrr<&Rr9a[C49/mjmf*7s0]qfjmHsrS
-g[=LL!s4hgmLZ,t!k7Uc!!"_8md9E0!!(dQmf*7jg[=K2!."P2!_WNfhsLIEJcDbMJ,~>
-oD\djeG&tC!9EkJrr<&[rqHEm!9EkJ!`T/Yp\+`B!*@_F!!(pV!!(pNrr<&[r:^<U4of6pp\t4'
-1%+f0p@n:]!9En!!s5%mpB.E"!l"[.rr<<Zme?GKpAb3SrqHEm"m#FP=oa$MpB"%hWSdFM!58C4
-!7^cC!!)*Qp\t3njSnoR!!)*SpB":oN;*&JKE,*(pAb3Nrr<&Up\t3njS\`SjurcXrqHEm%PdDG
-p@e4\!9EnKbl\$<rq@A3"p2O5pAb1Jme?GKp\+XfjS/BK!9EnK=oa$MpB"%hWSdFM!5/=3!7^cC
-!!)*Qp\t3sjS/BK!9EkJ![%K\p\+a+!$Khd!!(pV!!(mMrr<&[r:^<U4of6pp\t4'1%+f0p@eOe
-jS/Dn!s5%mpCO>/!l"F'!!"bAp\+=T!!)*Zp\t3sjS/CP!.On@!_iZohtI*NJcDbMJ,~>
-oD\djeEHo4!7pl-rr<&Mroj@^!7pl-!Zh?NpZM[e!$9\S!!(pV!!(p?rr<$mr_its3X>^3g&C48
-!!&2Zkl1Vcf'$9;@/T3iEWAW/kl1V_P5OPD!!(ULkl1Vkf')>&!$CCfkgTbNjPT/$!58C4!7^64
-!!(UCkl1V_f)Fn5!!(UEkQ2e*\+f(f[K%B!kPtV?rr<&Ukl1V_9`@ro:c\j^-/&:]rr<%^r94.\
-"kMo$=o_t.kQc,.8*K.:!0[6Crr<Y^ki`!Hf')>&!$CCfkgTbNjPT/$!5/=3!7^6,!;u'\!!:a8
-kk>)UkQ1nfchHW)cN"1"kPtV?rr<&Ukl1V_9`@ro:c\j^-/&:]rr<%^r94.\"kMo$=o_t.kQc,.
-8*K.:!0[9Drr<&Mroj@^%+aY+YlGm/kigM"($+99!!%TMWrIS~>
-oD\djeF*>:!8I58rr<&RrpKdd!8I58!ZqETp[/*p!$BbZ!!(pV!!(pErr<$or`',"49tp6hu<'D
-!!&>^mf*7ig[8;HA,P`rFT>#4mf*7eQMg1N!!(dQmf*7qg[=L<!$L[smb%aYlJM"0!58C4!7^H:
-!!(dHmf*7eg]$X@!!(dJmK+I1]_Cgq])Wr'mJm7Err<&Umf*7e:B"5s;EP3b-K"gjrr<%br9jRb
-"l&J5>QA:3mK[k78ac!H!1*NMrr<Ycmd:&Tg[=L<!$L[smb%aYlJM"0!5/=3!7^H2!;u9b!!:pC
-me6_[mK*RmebAJ5eGoj)mJm7Err<&Umf*7e:B"5s;EP3b-K"gjrr<%br9jRb"l&J5>QA:3mK[k7
-8ac!H!1*QNrr<&RrpKdd%,:4<[K%H;mdAa3($a]E!!%TMWrIS~>
-oD\djeG&tC!9EkJrr<&[rqHEm!9EkJ![%K\p\+a+!$Khd!!(pV!!(pNrr<$rr`B>(4p_3;kPk5U
-!!&Pdp\t3rjS*$^BDhK*GlUP;p\t3nSG`-]!!)*Zp\t4%jS/D^!$V(1pYl>loAB9B!58C4!7^cC
-!!)*Qp\t3njSnoR!!)*SpAuH;_tWm,_>k_/pAb3Nrr<&Up\t3n;>sZ$<B^]h.-LU(rr<%hr:g3k
-"m#FP?iXj;pBPsD9_\8]!1`r\rr<Ylp\+XfjS/D^!$V(1pYl>loAB9B!5/=3!7^c;!;uTk!!;6U
-p\+[dpAtO!h=pXFh#I]1pAb3Nrr<&Up\t3n;>sZ$<B^]h.-LU(rr<%hr:g3k"m#FP?iXj;pBPsD
-9_\8]!1`u]rr<&[rqHEm%-70W]`95Lp\3YN(A$GX!!%TMWrIS~>
-oD\djeEHW,rTO7]!7q/5pAk0U!X/SMpZM\)!!_!;!!(pV!!(p?qZ$a#%l8LdrTO7]!5eWsrr<2Q
-kTBl1r9+4#!"Akjrr<&9r94.\!7q/5rr<&MroaS6!3bVMIK40?kPtUrrr<&Kkk>)Tkl1V_f)Fn-
-!<20`"TZmCkQ9'1#1_o;!8meV!8cr:!!E?61O7dSkl1V__YiWt!!Us;kTBl1r9+C(!"A)T!!'n5
-kl1Vdf');t!7q/5#:9GSkidHqCYn7T!5/=3!7^64!!#^h;uGkZ!!Us;kPtTVqG[@V!X&MNpZM\(
-!!_!;!!(pV!!(m>qZ$a#%l8LdrTO7]!5eZtrr<5Rkia,hZ2Eej_uL50kPtV"r94.\!7q/5rr<&M
-roaS6!3bVMIK40?kPtU6s/Q*L~>
-oD\djeF*&2rU0[c!8IM@pAk0[!X8YTp[/+5!!h'B!!(pV!!(pEqZ$a#&2\dorU0[c!6>!)rr<2V
-mNDS=r9aX.!"Akprr<&>r9jRb!8IM@rr<&RrpC"=!42+]JcK]FmJm7#rr<&Kme6_Zmf*7eg]$X8
-!<2Bf"p!3JmK1o=#M&5B!8meV!8d/@!!E?71jn<]mf*7ea8GB*!!V-FmNDS=r9ag3!"A;`!!((:
-mf*7jg[=J0!8IM@#:BMXmd>Z,DVjd]!5/=3!7^H:!!#dj<W):b!!V-FmJm5^qGmL^!X&MTp[/+3
-!!h'B!!(pV!!(mDqZ$a#&2\dorU0[c!6>$*rr<5Wmd;4u[f#OuaT)b;mJm7-r9jRb!8IM@rr<&R
-rpC"=!42+]JcK]FmJm6<s/Q*L~>
-oD\djeG&\;rV-<l!9F.RpAk0d!X8Y\p\+aF!!h'K!!(pV!!(pNqZ$a#&2o+)rV-<l!7(K9rr<2_
-pEBUNr:^9>!"Jr%rr<&Er:g3k!9F.Rrr<&[rq?XH!4qq!LB)AOpAb3,rr<&Kp\+[cp\t3njSnoJ
-!<2]o"p!KRpB'.N#M&PK!8meV!8dJI!!E?72M(/lp\t3ncM[G:!!VHXpEBUNr:^HC!"J\s!!(=A
-p\t3sjS/BK!9F.R#:TYap\0FCEo-Nj!5/=3!7^cC!!#mm=T%pn!!VHXpAb1jqH3^j!X&M\p\+aD
-!!h'K!!(pV!!(mMqZ$a#&2o+)rV-<l!7(N:rr<5`p\,j3^&7U0ci=OLpAb3=r:g3k!9F.Rrr<&[
-rq?XH!4qq!LB)AOpAb2Es/Q*L~>
-oD\djeEHo4!)35frTO7]!7q/5rr<$mqG[@V!X&MNpZM\(!!_!;!!(pV!!(p?rr<&Mp#uDU!7^o0
-rr<2QkQh17r9+FH!!(j=kPtV4r94.\!7q/5rr<&MroaT=!*8=I,lksAkPtUrrr<&Kkl1V_9_q]c
-kl1V_f)Fn5!!#^h;uYt^"9?jDkQ9$0#1_o;!8meV!8cr>!!(UCkl1V_eGSP1!!Us;kQh17r9+CG
-!!(j=!!(OGkl1Vdf');t!7q/5#D)qVkia;m`nonZ!5/=3!7^64!!(UCkl1Vdf');t!7pl-!Z;!N
-pZM[f!$0VR!!(pV!!(m>rr<&Mp#uDU!7^r1rr<5Rki`9Pchuu3irB)8kPtV4r94.\!7q/5rr<&M
-roaT=!*8=I,lksAkPtU6s/Q*L~>
-oD\djeF*>:!)EAjrU0[c!8IM@rr<$oqGmL^!X&MTp[/+3!!h'B!!(pV!!(pErr<&Rp$Vh[!878;
-rr<2VmK`gCr9ajS!!)'ImJm7?r9jRb!8IM@rr<&RrpC#F!*SaX-326GmJm7#rr<&Kmf*7e:ARug
-mf*7eg]$X@!!#dj<W;Cf"9@'JmK1i;#M&5B!8meV!8d/D!!(dHmf*7eg&1:<!!V-FmK`gCr9agR
-!!)'I!!(^Lmf*7jg[=J0!8IM@#DE.\md;D%bMMXe!5/=3!7^H:!!(dHmf*7jg[=J0!8I58!ZD'T
-p[/*q!$9\Y!!(pV!!(mDrr<&Rp$Vh[!87;<rr<5Wmd:>\ebnh?kPtVCmJm7?r9jRb!8IM@rr<&R
-rpC#F!*SaX-326GmJm6<s/Q*L~>
-oD\djeG&tC!)`SprV-<l!9F.Rrr<$rqH3^j!X&M\p\+aD!!h'K!!(pV!!(pNrr<&[p%SId!93nM
-rr<2_pB^iUr:^Ke!!)?ZpAb3Qr:g3k!9F.Rrr<&[rq?YU!*o9m-ih`QpAb3,rr<&Kp\t3n;>ODm
-p\t3njSnoR!!#mm=T8$r"9@?RpB'(L#M&PK!8meV!8dJM!!)*Qp\t3nir&QN!!VHXpB^iUr:^Hd
-!!)?Z!!)$Up\t3sjS/BK!9F.R#E&Rep\-'9e)'g!!5/=3!7^cC!!)*Qp\t3sjS/BK!9EkJ!ZM-]
-p\+a,!$Bbc!!(pV!!(mMrr<&[p%SId!93qNrr<5`p\+soh>I!PnGiRTpAb3Qr:g3k!9F.Rrr<&[
-rq?YU!*o9m-ih`QpAb2Es/Q*L~>
-oD\djeEHo4!7pl-rr<&Mroj@^!7pl-!Z;!NpZM[f!$0VR!!(pV!!(p?rr<&Mp#uDU!7q&2rr<2Q
-kQ_+6r9+FE!!(j=kPtV6r94.\!7q/5rr<&MroaR=#7B:p!'/m!!!'_4!!(O4rr<&Mp#uDU!7q/5
-rr<&MpZMYr!5/'i!k/.Me`Zu5hu<ZVhWXt>!7pi,rr<&Mr94.\"kMo$#6<*JkQg#G!8Zi=!7q&2
-rr<5Rki`!Hf)Fk;fEVc>[/`5CkPtUqrr<&Kkl1V_f(J8,!!Us;kPtV6p?2QP!/:12!e(,Fe`Zu5
-hu<ZVhWXt>!7pi,rr<&Mr94.\"kMo$#6<*JkQg#G!8Zi=!7q)3rr<&Mroj@^!7q/5#1s.fh6d5C
-h<4h=JcDbMJ,~>
-oD\djeF*>:!8I58rr<&RrpKdd!8I58!ZD'Tp[/*q!$9\Y!!(pV!!(pErr<&Rp$Vh[!8ID=rr<2V
-mKWaBr9ajQ!!)'ImJm7Ar9jRb!8IM@rr<&RrpC!H#7BM&!'B$)!!'_4!!(O:rr<&Rp$Vh[!8IM@
-rr<&Rp[/)$!5\Et!k\LSea<D;hu<ZVhX:CD!8I27rr<&Rr9jRb"l&J5#6<<PmK_kS!9<JI!8ID=
-rr<5Wmd:&Tg]$UFh$4;I\c=hJmJm7"rr<&Kmf*7eg\("7!!V-FmJm7Ap?huX!/UC;!eLDLea<D;
-hu<ZVhX:CD!8I27rr<&Rr9jRb"l&J5#6<<PmK_kS!9<JI!8IG>rr<&RrpKdd!8IM@#2KLkj154P
-h<k7CJcDbMJ,~>
-oD\djeG&tC!9EkJrr<&[rqHEm!9EkJ!ZM-]p\+a,!$Bbc!!(pV!!(pNrr<&[p%SId!9F%Orr<2_
-pBUcTr:^Kb!!)?ZpAb3Sr:g3k!9F.Rrr<&[rq?WZ#Rft7!'T04!!'_4!!(OCrr<&[p%SId!9F.R
-rr<&[p\+_.!6P!0!lG![eb9%Dhu<ZVhY7$M!9EhIrr<&[r:g3k"m#FP#QW]YpBU*d!:0@Z!9F%O
-rr<5`p\+XfjSnlXjp2@\_#QXSpAb3+rr<&Kp\t3njRr9I!!VHXpAb3Sp@eVd!0-aI!f$bTeb9%D
-hu<ZVhY7$M!9EhIrr<&[r:g3k"m#FP#QW]YpBU*d!:0@Z!9F(Prr<&[rqHEm!9F.R#3H1!lbNQa
-h=gmLJcDbMJ,~>
-oD\djeEHo4!7pl-rr<&Mroj@^!7pl-!_iZKpZM[-!)M//!!(pV!!(p?rr<&Mp#uDU!7q&2rr<2Q
-kT9f0r9+3u!"Akjrr<&Mr94.\!7q/5rr<&MrTFD`!0gjkPhkO'!58C4!7^64!!(UCkl1V_f)Fn5
-!!(UEkQ4HYL%jd4IK30okPtV?rr<&Ukl1V_f(J8,!!(UJkl1Vdf')<>!3uIc#JgBKki`!Hf)+\2
-!!Us;kPtV6rTFD`!0gjkPhkO'!5/=3!7^64!!(UCkl1Vdf');t!7pl-"/5c?jn\*Bj<+Gre`Zu5
-hu<ZVhWXt>!7pi,rr<&Mr94.\"kMo$*rrSDkQep(%-ZmT!7q)3rr<&Mroj@^!7q,4"]GDc?iZGI
-kPtU6s/Q*L~>
-oD\djeF*>:!8I58rr<&RrpKdd!8I58!`&fPp[/*7!)_;7!!(pV!!(pErr<&Rp$Vh[!8ID=rr<2V
-mN;M<r9aX+!"Akprr<&Rr9jRb!8IM@rr<&RrU'hh!176rR,.01!58C4!7^H:!!(dHmf*7eg]$X@
-!!(dJmK-/aM"g<=JcJZumJm7Err<&Umf*7eg\("7!!(dOmf*7jg[=JP!4Mgn#K?`Pmd:&Tg\^F=
-!!V-FmJm7ArU'hh!176rR,.01!5/=3!7^H:!!(dHmf*7jg[=J0!8I58"/Z&DlhTrNl6-/(ea<D;
-hu<ZVhX:CD!8I27rr<&Rr9jRb"l&J5+98kJmK^`3%.<N`!8IG>rr<&RrpKdd!8IJ?"]YPi@fVnP
-mJm6<s/Q*L~>
-oD\djeG&tC!9EkJrr<&[rqHEm!9EkJ!`B#Xp\+`E!*%MC!!(pV!!(pNrr<&[p%SId!9F%Orr<2_
-pE9OMr:^9;!"Jr%rr<&[r:g3k!9F.Rrr<&[rV$It!1mg'T&',@!58C4!7^cC!!)*Qp\t3njSnoR
-!!)*SpB"4mNVE/KLB(<(pAb3Nrr<&Up\t3njRr9I!!)*Xp\t3sjS/Bl!58=)#L*5Xp\+XfjSS]O
-!!VHXpAb3SrV$It!1mg'T&',@!5/=3!7^cC!!)*Qp\t3sjS/BK!9EkJ"0;JLo_J4`o-+18eb9%D
-hu<ZVhY7$M!9EhIrr<&[r:g3k"m#FP+TT4RpBSqC%JTSs!9F(Prr<&[rqHEm!9F+Q"]tbrB)nOZ
-pAb2Es/Q*L~>
-oD\djeEHo4!7pl-rr<&Mroj@^!7pl-"/5c?jn\*Bj<+Gre`Zu5hu<ZVhrt(?!7pi,rr<&Mqrn%[
-"P2d>!+Pli!c\3,roj@^!7q)3rr<&Mroj@^!7q,4"g@tu(D#K\kPtUrrr<&Kkl1V_f(J8,!!(UL
-kl1V_f(\A1U&ZG"q<.qA+98+ckPtV?rr<&Ukl1V_f(J8,!!(UJkl1Vdf')=#!+Pli#B9`1ki`!H
-f)+\2!!Us;kPtV6rTFEh!(dt;iSE\t!5/=3!7^64!!(UCkl1Vdf');t!7pl-"6VQB@/B'ik?n9F
-kLJbr!8meV!8cr>!!(UCkl1V_f)4b3!!Us;kZImpr9+B*!(,o5!!(UJkl1V_f)Fn5!!(UKkQS0j
-8J_orh<4h=JcDbMJ,~>
-oD\djeF*>:!8I58rr<&RrpKdd!8I58"/Z&DlhTrNl6-/(ea<D;hu<ZVhsULE!8I27rr<&RqsOIa
-"P`?K!+l)r!d"E0rpKdd!8IG>rr<&RrpKdd!8IJ?"ge8&(D#]bmJm7#rr<&Kmf*7eg\("7!!(dQ
-mf*7eg\:+<V>qn-q<e@M+TS@hmJm7Err<&Umf*7eg\("7!!(dOmf*7jg[=K6!+l)r#BTr5md:&T
-g\^F=!!V-FmJm7ArU'ir!)"+=kM>P+!5/=3!7^H:!!(dHmf*7jg[=J0!8I58"78#IA,>Trm:$&O
-mFCV)!8meV!8d/D!!(dHmf*7eg\gL>!!V-FmTT[&r9af3!(62B!!(dOmf*7eg]$X@!!(dPmKKrt
-9,A-%h<k7CJcDbMJ,~>
-oD\djeG&tC!9EkJrr<&[rqHEm!9EkJ"0;JLo_J4`o-+18eb9%Dhu<ZVhtR-N!9EhIrr<&[qtL*j
-"Q];a!,;B*!dF]7rqHEm!9F(Prr<&[rqHEm!9F+Q"hOb/(_H/lpAb3,rr<&Kp\t3njRr9I!!)*Z
-p\t3njS/BNX8jU>q=b!_+on[opAb3Nrr<&Up\t3njRr9I!!)*Xp\t3sjS/CU!,;B*#C$5<p\+Xf
-jSS]O!!VHXpAb3SrV$K-!)4:An(m^<!5/=3!7^cC!!)*Qp\t3sjS/BK!9EkJ"84_TBDV?*p1=:^
-p=8m;!8meV!8dJM!!)*Qp\t3njS\cP!!VHXpKmo7r:^G@!(Q_W!!)*Xp\t3njSnoR!!)*YpBA//
-9c+H1h=gmLJcDbMJ,~>
-oD\djeEHo4!7pl-rr<&Mroj@^!7pl-"6VQB@/B'ik?n9FkLJbr!8meV!8m#?!!(UCkl1V_f)+\2
-!!Us;^'"P(roaHY"otY%kl1V_f)4b3!!(ULkQ2%j_u/^#,Q[sSgun_<^&J'4eEHo4!7pi,rr<&M
-roj@^!7po."6VQB@/B'ik?n9FkLJbr!8meV!8cr>!!(UCkl1V_f)4b3!!_$<ke70%QN$(RU':Us
-ki`!Hf)+\2!!Us;kQq7,r9+5.!WZZakPtUqrr<&Kkl1V_f(J8,!!Us;kPtV6p#lP()$!1HrTFC(
-7fX:FeE?l4hu<ZVhWXt>!7pi,rr<&Mr94.\#1i#%^'"P(roaW^"otXdkPtV6r94.\!7q/5!XSkE
-r9+5.!WZZakPtU6s/Q*L~>
-oD\djeF*>:!8I58rr<&RrpKdd!8I58"78#IA,>Trm:$&OmFCV)!8meV!8m5E!!(dHmf*7eg\^F=
-!!V-F_ZU(1rpBlc#6:q+mf*7eg\gL>!!(dQmK*[paSbH.,m"'Wh!P.B^&J'4eF*>:!8I27rr<&R
-rpKdd!8I89"78#IA,>Trm:$&OmFCV)!8meV!8d/D!!(dHmf*7eg\gL>!!_3Gm_]/0Rf;^\V?[+(
-md:&Tg\^F=!!V-FmKim7r9aY5!WZcdmJm7"rr<&Kmf*7eg\("7!!V-FmJm7Ap$Mt3)?<@PrU'g3
-8H9LMeF!;:hu<ZVhX:CD!8I27rr<&Rr9jRb#2AS6_ZU(1rpC&h#6:ppmJm7Ar9jRb!8IM@!XSkJ
-r9aY5!WZcdmJm6<s/Q*L~>
-oD\djeG&tC!9EkJrr<&[rqHEm!9EkJ"84_TBDV?*p1=:^p=8m;!8meV!8mPN!!)*Qp\t3njSS]O
-!!VHXaohg>rq?Mr#6;.1p\t3njS\cP!!)*ZpAt[%ci!M>-NX9]h"LdK^&J'4eG&tC!9EhIrr<&[
-rqHEm!9EnK"84_TBDV?*p1=:^p=8m;!8meV!8dJM!!)*Qp\t3njS\cP!!_NYpW<U@T`4ZkX9Sa4
-p\+XfjSS]O!!VHXpBgoHr:^:@!WZohpAb3+rr<&Kp\t3njRr9I!!VHXpAb3Sp%JUD)ZWR\rV$HD
-9E5jYeFrqChu<ZVhY7$M!9EhIrr<&[r:g3k#3>OQaohg>rq?]"#6;.*pAb3Sr:g3k!9F.R!X\qR
-r:^:@!WZohpAb2Es/Q*L~>
-oD\djeEHo4!7pl-rr<&Mroj@^!7pi,"O7kb8&kMk"NEq3(!+ng!!(pV!!(p?rr<&Mp#uDU!7q&2
-rr<GXkie'0!%Ueu!!.EEkl1V_f)4b3!!(ULkR03I),<i]kidNs!571O!!'_4!!(O4rr<&Mp#uDU
-!7q/5rr<&Mp?2Y))$!1HrTFC(7fX:FeE?l4hu<ZVhWXt>!7pi,rr<&Mr94.\!7q/5#`f&f.o%bu
-!IFb/rr<&Mqrn%[%bBk-1]SCg9A\mrJ,fS_gun_<]`.s3eEHo4!7pi,rr<5Rki`!Hf(A/6cT;+-
-.8!2]!!"n!e*$c3hu<ZVhWXt>!7pi,rr<&Mr94.\!7q/5#`f&f.o%bu!IFb/rr<&Mr94.\!7q/5
-$T%i$:.sI-k^WX5^"hfO!.k0Ms*t~>
-oD\djeF*>:!8I58rr<&RrpKdd!8I27"Oe7h8^%)#"Ns@:(!Y7r!!(pV!!(pErr<&Rp$Vh[!8ID=
-rr<G]md?8@!%^r$!!.NHmf*7eg\gL>!!(dQmL(lP),O&gmd>`.!5dOZ!!'_4!!(O:rr<&Rp$Vh[
-!8IM@rr<&Rp?i(4)?<@PrU'g38H9LMeF!;:hu<ZVhX:CD!8I27rr<&Rr9jRb!8IM@#a5>j/5S&$
-!Iat8rr<&RqsOIa%bpF>2#nLj:#ta1KE)"hh!P.B]`.s3eF*>:!8I27rr<5Wmd:&Tg[snAe3*d4
-.SNMc!!"q'e*[29hu<ZVhX:CD!8I27rr<&Rr9jRb!8IM@#a5>j/5S&$!Iat8rr<&Rr9jRb!8IM@
-$T.o%:eg$=mXtQ?_VFPZ!.k0Ms*t~>
-oD\djeG&tC!9EkJrr<&[rqHEm!9EhI"PXjq9[it7"Og$E(=gq/!!(pV!!(pNrr<&[p%SId!9F%O
-rr<Gfp\1$W!%q2+!!.]Mp\t3njS\cP!!)*ZpBrn[)H0Gup\0LE!6O$j!!'_4!!(OCrr<&[p%SId
-!9F.Rrr<&[p@e^E)ZWR\rV$HD9E5jYeFrqChu<ZVhY7$M!9EhIrr<&[r:g3k!9F.R#ab\o/lOP+
-!J:=Frr<&[qtL*j%cmBY2ZOap:[IiMM#[Oth"LdK]`.s3eG&tC!9EhIrr<5`p\+XfjRi0Sgckc>
-/5Aqk!!#"1e+WhBhu<ZVhY7$M!9EhIrr<&[r:g3k!9F.R#ab\o/lOP+!J:=Frr<&[r:g3k!9F.R
-$TA&(;bucSpPAkMakZUj!.k0Ms*t~>
-oD\djeEHo4!7pl-rr<&Mroj@^!7pf+$dUm7!@^W5.0'?*b1#PS!8meV!8m#?!!(UCkl1V_f)+\2
-!!(ULkQ\Uo('G:EZi'%e!!(UJkl1V_f)Fk?a[HX?&&7>l[fA)9kPtUrrr<&Kkl1V_f(J8,!!(UL
-kl1V_f(J57cT;+-.8!2]!!"n!e*$c3hu<ZVhWXt>!7pi,rr<&Mr94.\!7q,4#.dSG";=J8rTO7]
-!7q&2rr<MZkig,W%0@'TkifJU0AG[j!5/=3!7^64!!(UCkl1Vdf');t!7p`)#cCQA"U,uHVWZCk
-!!(pV!!(m>rr<&Mp#uDU!7q)3rr<&MrTFHs:DO'H9XF]]rr<&Mr94.\!7q/5$HY^G!Y<'0kdLOF
-gZSV;JcDbMJ,~>
-oD\djeF*>:!8I58rr<&RrpKdd!8I/6$e.<>!@gc:.KBH,cdV:^!8meV!8m5E!!(dHmf*7eg\^F=
-!!(dQmKUC&('G=G\GYdp!!(dOmf*7eg]$UJc:8<F&&do(]Ds\@mJm7#rr<&Kmf*7eg\("7!!(dQ
-mf*7eg\'tBe3*d4.SNMc!!"q'e*[29hu<ZVhX:CD!8I27rr<&Rr9jRb!8IJ?#/3qM";FS?rU0[c
-!8ID=rr<M_mdA@j%0@'Ymd@^f1#)*r!5/=3!7^H:!!(dHmf*7jg[=J0!8I)4#cgoH"pQ2MWpS7&
-!!(pV!!(mDrr<&Rp$Vh[!8IG>rr<&RrU'm(;&09K9t:/irr<&Rr9jRb!8IM@$I2-N!Y<6;m^rNS
-g[5%AJcDbMJ,~>
-oD\djeG&tC!9EkJrr<&[rqHEm!9EeH$f!rH!A$u@/-#Z0f@0Ho!8meV!8mPN!!)*Qp\t3njSS]O
-!!)*ZpBJW:(BbFK^\mj+!!)*Xp\t3njSnl\ek-DR&BjhB_Z2IHpAb3,rr<&Kp\t3njRr9I!!)*Z
-p\t3njRr6Tgckc>/5Aqk!!#"1e+WhBhu<ZVhY7$M!9EhIrr<&[r:g3k!9F+Q#0'UY";F\IrV-<l
-!9F%Orr<Mhp\362%K[3bp\2Q*1>DO'!5/=3!7^cC!!)*Qp\t3sjS/BK!9E_F#dIGR"pQ5QYkHN>
-!!(pV!!(mMrr<&[p%SId!9F(Prr<&[rV$N9<#5ZO:quu'rr<&[r:g3k!9F.R$J%fZ!YEQLpVQtd
-g\1[JJcDbMJ,~>
-oD\djeEHo4!7pl-rr<&Mroj@^!7p`)#cCQA"U,uHVWZCk!!(pV!!&YT!bhXpgZSV;^&J'4eEHo4
-!7pi,rr<&Mroj@^!7pc*#cCQA"U,uHVWZCk!!(pV!!&YT!bhXpgZSV;]`.s3J`ugk!!(pV!!&YT
-!bhXpgZSV;JcDbMJ,~>
-oD\djeF*>:!8I58rr<&RrpKdd!8I)4#cgoH"pQ2MWpS7&!!(pV!!&YZ!c%e!g[5%A^&J'4eF*>:
-!8I27rr<&RrpKdd!8I,5#cgoH"pQ2MWpS7&!!(pV!!&YZ!c%e!g[5%A]`.s3JaW7"!!(pV!!&YZ
-!c%e!g[5%AJcDbMJ,~>
-oD\djeG&tC!9EkJrr<&[rqHEm!9E_F#dIGR"pQ5QYkHN>!!(pV!!&Yc!cJ(*g\1[J^&J'4eG&tC
-!9EhIrr<&[rqHEm!9EbG#dIGR"pQ5QYkHN>!!(pV!!&Yc!cJ(*g\1[J]`.s3JbSm4!!(pV!!&Yc
-!cJ(*g\1[JJcDbMJ,~>
-oD\djJ`ugk!!(pV!!&bW"leaO$P_ORkPtUrrr<%Mkk=3?!8meV!2AZ\iomZU']@a0!!'\3!!%T6
-p?2JVhu<ZVU?Dd?kctR1i7mGq!.k0Ms*t~>
-oD\djJaW7"!!(pV!!&b]"m><_$PhgYmJm7#rr<%Mme6&K!8meV!2AlbkO,ee($=9=!!'\3!!%T<
-p?hn\hu<ZVU@&3Jm^EQ=k1f;(!.k0Ms*t~>
-oD\djJbSm4!!(pV!!&bf"n;9#$l/3bpAb3,rr<%Mp\+=]!8meV!2B2knFsX*(%0iN!!'\3!!%TE
-p@eOehu<ZVUA"i\pV%%Nmb@I9!.k0Ms*t~>
-oD\djJ`ugk!!(pV!!&bW"@3=o!0#Xq!!'_4!!%T6p?2JVhu<ZVU?D_G#ljsag?8M:]`.s3J`ugk
-!!(pV!!&bW"@3=o!0#Xq!!%TMWrIS~>
-oD\djJaW7"!!(pV!!&b]"@<Cp!0Gq&!!'_4!!%T<p?hn\hu<ZVU@&.N#ljseg?nq@]`.s3JaW7"
-!!(pV!!&b]"@<Cp!0Gq&!!%TMWrIS~>
-oD\djJbSm4!!(pV!!&bf"@WXt!0u:4!!'_4!!%TEp@eOehu<ZVUA"dZ$31'kg@kRI]`.s3JbSm4
-!!(pV!!&bf"@WXt!0u:4!!%TMWrIS~>
-oD\djJ`ugk!!(pV!!&bW"*"PaJD',d!58C4!.jA-kPtV?rr<%nkQ>f0)M$N)!!'\3!!%T6p?2JV
-hu<ZVU?D]!#9&-GkPtU6s/Q*L~>
-oD\djJaW7"!!(pV!!&b]"*=beK\>bn!58C4!.jS3mJm7Err<%nmK7P9)hco4!!'\3!!%T<p?hn\
-hu<ZVU@&,*#9/?LmJm6<s/Q*L~>
-oD\djJbSm4!!(pV!!&bf"*b(kM:qV'!58C4!.jn<pAb3Nrr<%npB,XG*/WAC!!'\3!!%TEp@eOe
-hu<ZVUA"b7#TS]SpAb2Es/Q*L~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV
-JcDbMJ,~>
-oD\djJaW7"!!(pV!!%T<p?hn\^&J'4JaW7"!!(pV!!%T<p?hn\]`.s3JaW7"!!(pV!!%T<p?hn\
-JcDbMJ,~>
-oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe
-JcDbMJ,~>
-oD\djJ`ugk!!(pVJH5<B^&J'4J`ugk!!(pVJH5<B]`3N_oDmeKJH5<BJcDbMJ,~>
-oD\djJaW7"!!(pVJH5<B^&J'4JaW7"!!(pVJH5<B]`3N_oDmeKJH5<BJcDbMJ,~>
-oD\djJbSm4!!(pVJH5<B^&J'4JbSm4!!(pVJH5<B]`3N_oDmeKJH5<BJcDbMJ,~>
-oDa@AoDjIBNrOY1oDjIBJcC<$ScAE.JcC<$l2Q8~>
-oDa@AoDjIBNrOY1oDjIBJcC<$ScAE.JcC<$l2Q8~>
-oDa@AoDjIBNrOY1oDjIBJcC<$ScAE.JcC<$l2Q8~>
-JcC<$JcC<$JcC<$JcCE'o$)acJcG'9J,~>
-JcC<$JcC<$JcC<$JcCE'o$)acJcG'9J,~>
-JcC<$JcC<$JcC<$JcCE'o$)acJcG'9J,~>
-JcC<$JcC<$JcC<$JcCH(n'-F`JcG-;J,~>
-JcC<$JcC<$JcC<$JcCH(n'-F`JcG-;J,~>
-JcC<$JcC<$JcC<$JcCH(n'-F`JcG-;J,~>
-JcC<$JcC<$JcC<$JcCN*p!!L:q9=KjJcG0<J,~>
-JcC<$JcC<$JcC<$JcCN*p!!L:q9=KjJcG0<J,~>
-JcC<$JcC<$JcC<$JcCN*p!!L:q9=KjJcG0<J,~>
-JcC<$JcC<$JcC<$JcCT,prrg=rQYBBps"BiJcG6>J,~>
-JcC<$JcC<$JcC<$JcCT,prrg=rQYBBps"BiJcG6>J,~>
-JcC<$JcC<$JcC<$JcCT,prrg=rQYBBps"BiJcG6>J,~>
-JcC<$JcC<$JcC<$JcCW-q9Ap=rQY<@ps"BiJcG<@J,~>
-JcC<$JcC<$JcC<$JcCW-q9Ap=rQY<@ps"BiJcG<@J,~>
-JcC<$JcC<$JcC<$JcCW-q9Ap=rQY<@ps"BiJcG<@J,~>
-JcC<$JcC<$JcC<$JcC]/ps&d;rQY6>q9=KjJcG?AJ,~>
-JcC<$JcC<$JcC<$JcC]/ps&d;rQY6>q9=KjJcG?AJ,~>
-JcC<$JcC<$JcC<$JcC]/ps&d;rQY6>q9=KjJcG?AJ,~>
-JcC<$JcC<$JcC<$JcCc1ps&^9rQY3=ps"BiJcGECJ,~>
-JcC<$JcC<$JcC<$JcCc1ps&^9rQY3=ps"BiJcGECJ,~>
-JcC<$JcC<$JcC<$JcCc1ps&^9rQY3=ps"BiJcGECJ,~>
-JcC<$JcC<$JcC<$JcCf2q9Aa8rQY-;ps"BiJcGKEJ,~>
-JcC<$JcC<$JcC<$JcCf2q9Aa8rQY-;ps"BiJcGKEJ,~>
-JcC<$JcC<$JcC<$JcCf2q9Aa8rQY-;ps"BiJcGKEJ,~>
-JcC<$JcC<$JcC<$JcCl4ps&U6rQY'9q9=KjJcGNFJ,~>
-JcC<$JcC<$JcC<$JcCl4ps&U6rQY'9q9=KjJcGNFJ,~>
-JcC<$JcC<$JcC<$JcCl4ps&U6rQY'9q9=KjJcGNFJ,~>
-JcC<$JcC<$JcC<$JcCr6ps&O4rQY$8ps"BiJcGTHJ,~>
-JcC<$JcC<$JcC<$JcCr6ps&O4rQY$8ps"BiJcGTHJ,~>
-JcC<$JcC<$JcC<$JcCr6ps&O4rQY$8ps"BiJcGTHJ,~>
-JcC<$JcC<$JcC<$JcCu7q9AR3rQXs6ps"BiJcGZJJ,~>
-JcC<$JcC<$JcC<$JcCu7q9AR3rQXs6ps"BiJcGZJJ,~>
-JcC<$JcC<$JcC<$JcCu7q9AR3rQXs6ps"BiJcGZJJ,~>
-JcC<$JcC<$JcC<$JcD&9ps&F1rQXm4q9=KjJcG]KJ,~>
-JcC<$JcC<$JcC<$JcD&9ps&F1rQXm4q9=KjJcG]KJ,~>
-JcC<$JcC<$JcC<$JcD&9ps&F1rQXm4q9=KjJcG]KJ,~>
-JcC<$JcC<$JcC<$JcD,;ps&@/rQXj3ps"BiJcGcMJ,~>
-JcC<$JcC<$JcC<$JcD,;ps&@/rQXj3ps"BiJcGcMJ,~>
-JcC<$JcC<$JcC<$JcD,;ps&@/rQXj3ps"BiJcGcMJ,~>
-JcC<$JcC<$JcC<$JcD/<q9AC.rQXd1ps"BiJcC6~>
-JcC<$JcC<$JcC<$JcD/<q9AC.rQXd1ps"BiJcC6~>
-JcC<$JcC<$JcC<$JcD/<q9AC.rQXd1ps"BiJcC6~>
-JcC<$JcC<$JcC<$JcD5>ps&7,rQX^/q9=KjK)^?~>
-JcC<$JcC<$JcC<$JcD5>ps&7,rQX^/q9=KjK)^?~>
-JcC<$JcC<$JcC<$JcD5>ps&7,rQX^/q9=KjK)^?~>
-JcC<$JcC<$JcC<$JcD;@ps&1*rQX[.ps"BiK`?Q~>
-JcC<$JcC<$JcC<$JcD;@ps&1*rQX[.ps"BiK`?Q~>
-JcC<$JcC<$JcC<$JcD;@ps&1*rQX[.ps"BiK`?Q~>
-JcC<$JcC<$JcC<$JcD>Aq9A4)rQXU,ps"BiLAuc~>
-JcC<$JcC<$JcC<$JcD>Aq9A4)rQXU,ps"BiLAuc~>
-JcC<$JcC<$JcC<$JcD>Aq9A4)rQXU,ps"BiLAuc~>
-JcC<$JcC<$JcC<$JcDDCps&('rQXO*q9=KjL];l~>
-JcC<$JcC<$JcC<$JcDDCps&('rQXO*q9=KjL];l~>
-JcC<$JcC<$JcC<$JcDDCps&('rQXO*q9=KjL];l~>
-JcC<$JcC<$JcC<$JcDJEps&"%rQXL)ps"BiM>r)~>
-JcC<$JcC<$JcC<$JcDJEps&"%rQXL)ps"BiM>r)~>
-JcC<$JcC<$JcC<$JcDJEps&"%rQXL)ps"BiM>r)~>
-JcC<$JcC<$JcC<$JcDMFq9A%$rQXF'ps"BiMuS;~>
-JcC<$JcC<$JcC<$JcDMFq9A%$rQXF'ps"BiMuS;~>
-JcC<$JcC<$JcC<$JcDMFq9A%$rQXF'ps"BiMuS;~>
-JcC<$JcC<$JcC<$JcDSHps%n"rQX@%q9=KjN;nD~>
-JcC<$JcC<$JcC<$JcDSHps%n"rQX@%q9=KjN;nD~>
-JcC<$JcC<$JcC<$JcDSHps%n"rQX@%q9=KjN;nD~>
-JcC<$JcC<$JcC<$JcDYJps%gurQX=$ps"BiNrOV~>
-JcC<$JcC<$JcC<$JcDYJps%gurQX=$ps"BiNrOV~>
-JcC<$JcC<$JcC<$JcDYJps%gurQX=$ps"BiNrOV~>
-JcC<$JcC<$JcC<$JcD\Kq9@jtrQX7"ps"BiOT0h~>
-JcC<$JcC<$JcC<$JcD\Kq9@jtrQX7"ps"BiOT0h~>
-JcC<$JcC<$JcC<$JcD\Kq9@jtrQX7"ps"BiOT0h~>
-JcC<$JcC<$JcC<$JcDbMps%^rrQX0uq9=KjOoKq~>
-JcC<$JcC<$JcC<$JcDbMps%^rrQX0uq9=KjOoKq~>
-JcC<$JcC<$JcC<$JcDbMps%^rrQX0uq9=KjOoKq~>
-JcC<$JcC<$JcC<$JcDhOps%XprQX-tps"BiPQ-.~>
-JcC<$JcC<$JcC<$JcDhOps%XprQX-tps"BiPQ-.~>
-JcC<$JcC<$JcC<$JcDhOps%XprQX-tps"BiPQ-.~>
-JcC<$JcC<$JcC<$JcDkPq9@[orQX'rps"BiQ2c@~>
-JcC<$JcC<$JcC<$JcDkPq9@[orQX'rps"BiQ2c@~>
-JcC<$JcC<$JcC<$JcDkPq9@[orQX'rps"BiQ2c@~>
-JcC<$JcC<$JcC<$JcDqRps%OmrQX!pq9=KjQN)I~>
-JcC<$JcC<$JcC<$JcDqRps%OmrQX!pq9=KjQN)I~>
-JcC<$JcC<$JcC<$JcDqRps%OmrQX!pq9=KjQN)I~>
-JcC<$JcC<$JcC<$JcE"Tps%IkrQWsops"BiR/_[~>
-JcC<$JcC<$JcC<$JcE"Tps%IkrQWsops"BiR/_[~>
-JcC<$JcC<$JcC<$JcE"Tps%IkrQWsops"BiR/_[~>
-JcC<$JcC<$JcC<$JcE%Uq9@LjrQWmmps"BiRf@m~>
-JcC<$JcC<$JcC<$JcE%Uq9@LjrQWmmps"BiRf@m~>
-JcC<$JcC<$JcC<$JcE%Uq9@LjrQWmmps"BiRf@m~>
-JcC<$JcC<$JcC<$JcE+Wps%@hrQWgkq9=KjS,\!~>
-JcC<$JcC<$JcC<$JcE+Wps%@hrQWgkq9=KjS,\!~>
-JcC<$JcC<$JcC<$JcE+Wps%@hrQWgkq9=KjS,\!~>
-JcC<$JcC<$JcC<$JcE1Yps%:frQWdjps"BiSc=3~>
-JcC<$JcC<$JcC<$JcE1Yps%:frQWdjps"BiSc=3~>
-JcC<$JcC<$JcC<$JcE1Yps%:frQWdjps"BiSc=3~>
-JcC<$JcC<$JcC<$JcE4Zq9@=erQW^hps"BiTDsE~>
-JcC<$JcC<$JcC<$JcE4Zq9@=erQW^hps"BiTDsE~>
-JcC<$JcC<$JcC<$JcE4Zq9@=erQW^hps"BiTDsE~>
-JcC<$JcC<$JcC<$JcE:\ps%1crQWXfq9=KjT`9N~>
-JcC<$JcC<$JcC<$JcE:\ps%1crQWXfq9=KjT`9N~>
-JcC<$JcC<$JcC<$JcE:\ps%1crQWXfq9=KjT`9N~>
-JcC<$JcC<$JcC<$JcE=]q9@4brQWUeps"BiUAo`~>
-JcC<$JcC<$JcC<$JcE=]q9@4brQWUeps"BiUAo`~>
-JcC<$JcC<$JcC<$JcE=]q9@4brQWUeps"BiUAo`~>
-JcC<$JcC<$JcC<$JcEC_q9@.`rQWOcps"BiV#Pr~>
-JcC<$JcC<$JcC<$JcEC_q9@.`rQWOcps"BiV#Pr~>
-JcC<$JcC<$JcC<$JcEC_q9@.`rQWOcps"BiV#Pr~>
-JcC<$JcC<$JcC<$JcEIaps%"^rQWIaq9=KjV>l&~>
-JcC<$JcC<$JcC<$JcEIaps%"^rQWIaq9=KjV>l&~>
-JcC<$JcC<$JcC<$JcEIaps%"^rQWIaq9=KjV>l&~>
-JcC<$JcC<$JcC<$JcELbq9@%]rQWF`ps"BiVuM8~>
-JcC<$JcC<$JcC<$JcELbq9@%]rQWF`ps"BiVuM8~>
-JcC<$JcC<$JcC<$JcELbq9@%]rQWF`ps"BiVuM8~>
-JcC<$JcC<$JcC<$JcERdps$n[rQW@^ps"BiWW.J~>
-JcC<$JcC<$JcC<$JcERdps$n[rQW@^ps"BiWW.J~>
-JcC<$JcC<$JcC<$JcERdps$n[rQW@^ps"BiWW.J~>
-JcC<$JcC<$JcC<$JcEXfps$hYrQW:\q9=KjWrIS~>
-JcC<$JcC<$JcC<$JcEXfps$hYrQW:\q9=KjWrIS~>
-JcC<$JcC<$JcC<$JcEXfps$hYrQW:\q9=KjWrIS~>
-JcC<$JcC<$JcC<$JcE[gq9?kXrQW7[ps"BiXT*e~>
-JcC<$JcC<$JcC<$JcE[gq9?kXrQW7[ps"BiXT*e~>
-JcC<$JcC<$JcC<$JcE[gq9?kXrQW7[ps"BiXT*e~>
-JcC<$JcC<$JcC<$JcEaips$_VrQW1Yps"BiY5a"~>
-JcC<$JcC<$JcC<$JcEaips$_VrQW1Yps"BiY5a"~>
-JcC<$JcC<$JcC<$JcEaips$_VrQW1Yps"BiY5a"~>
-JcC<$JcC<$JcC<$JcEgkps$YTrQW+Wq9=KjYQ'+~>
-JcC<$JcC<$JcC<$JcEgkps$YTrQW+Wq9=KjYQ'+~>
-JcC<$JcC<$JcC<$JcEgkps$YTrQW+Wq9=KjYQ'+~>
-JcC<$JcC<$JcC<$JcEjlq9?\SrQW(Vps"BiZ2]=~>
-JcC<$JcC<$JcC<$JcEjlq9?\SrQW(Vps"BiZ2]=~>
-JcC<$JcC<$JcC<$JcEjlq9?\SrQW(Vps"BiZ2]=~>
-JcC<$JcC<$JcC<$JcEpnps$PQrQW"Tps"BiZi>O~>
-JcC<$JcC<$JcC<$JcEpnps$PQrQW"Tps"BiZi>O~>
-JcC<$JcC<$JcC<$JcEpnps$PQrQW"Tps"BiZi>O~>
-JcC<$JcC<$JcC<$JcF!pps$JOrQVqRq9=Kj[/YX~>
-JcC<$JcC<$JcC<$JcF!pps$JOrQVqRq9=Kj[/YX~>
-JcC<$JcC<$JcC<$JcF!pps$JOrQVqRq9=Kj[/YX~>
-JcC<$JcC<$JcC<$JcF$qq9?MNrQVnQps"Bi[f:j~>
-JcC<$JcC<$JcC<$JcF$qq9?MNrQVnQps"Bi[f:j~>
-JcC<$JcC<$JcC<$JcF$qq9?MNrQVnQps"Bi[f:j~>
-JcC<$JcC<$JcC<$JcF*sps$ALrQVhOps"Bi\Gq'~>
-JcC<$JcC<$JcC<$JcF*sps$ALrQVhOps"Bi\Gq'~>
-JcC<$JcC<$JcC<$JcF*sps$ALrQVhOps"Bi\Gq'~>
-JcC<$JcC<$JcC<$JcF0ups$;JrQVbMq9=Kj\c70~>
-JcC<$JcC<$JcC<$JcF0ups$;JrQVbMq9=Kj\c70~>
-JcC<$JcC<$JcC<$JcF0ups$;JrQVbMq9=Kj\c70~>
-JcC<$JcC<$JcC<$JcF4!q9?>IrQV_Lps"Bi]DmB~>
-JcC<$JcC<$JcC<$JcF4!q9?>IrQV_Lps"Bi]DmB~>
-JcC<$JcC<$JcC<$JcF4!q9?>IrQV_Lps"Bi]DmB~>
-JcC<$JcC<$JcC<$JcF:#ps$2GrQVYJps"Bi^&NT~>
-JcC<$JcC<$JcC<$JcF:#ps$2GrQVYJps"Bi^&NT~>
-JcC<$JcC<$JcC<$JcF:#ps$2GrQVYJps"Bi^&NT~>
-JcC<$JcC<$JcC<$JcF@%ps$,ErQVSHps"Bi^]/f~>
-JcC<$JcC<$JcC<$JcF@%ps$,ErQVSHps"Bi^]/f~>
-JcC<$JcC<$JcC<$JcF@%ps$,ErQVSHps"Bi^]/f~>
-JcC<$JcC<$JcC<$JcFC&q9?/DrQVPGps"Bi_#Jo~>
-JcC<$JcC<$JcC<$JcFC&q9?/DrQVPGps"Bi_#Jo~>
-JcC<$JcC<$JcC<$JcFC&q9?/DrQVPGps"Bi_#Jo~>
-JcC<$JcC<$JcC<$JcFI(ps$#BrQVJEps"Bi_Z,,~>
-JcC<$JcC<$JcC<$JcFI(ps$#BrQVJEps"Bi_Z,,~>
-JcC<$JcC<$JcC<$JcFI(ps$#BrQVJEps"Bi_Z,,~>
-JcC<$JcC<$JcC<$JcFO*ps#r@rQVDCps"Bi`;b>~>
-JcC<$JcC<$JcC<$JcFO*ps#r@rQVDCps"Bi`;b>~>
-JcC<$JcC<$JcC<$JcFO*ps#r@rQVDCps"Bi`;b>~>
-JcC<$JcC<$JcC<$JcFR+q9>u?rQV>Aq9=Kj`W(G~>
-JcC<$JcC<$JcC<$JcFR+q9>u?rQV>Aq9=Kj`W(G~>
-JcC<$JcC<$JcC<$JcFR+q9>u?rQV>Aq9=Kj`W(G~>
-JcC<$JcC<$JcC<$JcFX-ps#i=rQV;@ps"Bia8^Y~>
-JcC<$JcC<$JcC<$JcFX-ps#i=rQV;@ps"Bia8^Y~>
-JcC<$JcC<$JcC<$JcFX-ps#i=rQV;@ps"Bia8^Y~>
-JcC<$JcC<$JcC<$JcF^/ps#c;rQV5>ps"Biao?k~>
-JcC<$JcC<$JcC<$JcF^/ps#c;rQV5>ps"Biao?k~>
-JcC<$JcC<$JcC<$JcF^/ps#c;rQV5>ps"Biao?k~>
-JcC<$JcC<$JcC<$JcFa0q9>f:rQV/<q9=Kjb5Zt~>
-JcC<$JcC<$JcC<$JcFa0q9>f:rQV/<q9=Kjb5Zt~>
-JcC<$JcC<$JcC<$JcFa0q9>f:rQV/<q9=Kjb5Zt~>
-JcC<$JcC<$JcC<$JcFg2ps#Z8rQV,;ps"Bibl<1~>
-JcC<$JcC<$JcC<$JcFg2ps#Z8rQV,;ps"Bibl<1~>
-JcC<$JcC<$JcC<$JcFg2ps#Z8rQV,;ps"Bibl<1~>
-JcC<$JcC<$JcC<$JcFm4ps#T6rQV&9ps"BicMrC~>
-JcC<$JcC<$JcC<$JcFm4ps#T6rQV&9ps"BicMrC~>
-JcC<$JcC<$JcC<$JcFm4ps#T6rQV&9ps"BicMrC~>
-JcC<$JcC<$JcC<$JcFp5q9>W5rQUu7q9=Kjci8L~>
-JcC<$JcC<$JcC<$JcFp5q9>W5rQUu7q9=Kjci8L~>
-JcC<$JcC<$JcC<$JcFp5q9>W5rQUu7q9=Kjci8L~>
-JcC<$JcC<$JcC<$JcG!7ps#K3rQUr6ps"BidJn^~>
-JcC<$JcC<$JcC<$JcG!7ps#K3rQUr6ps"BidJn^~>
-JcC<$JcC<$JcC<$JcG!7ps#K3rQUr6ps"BidJn^~>
-JcC<$JcC<$JcC<$JcG'9ps#E1rQUl4ps"Bie,Op~>
-JcC<$JcC<$JcC<$JcG'9ps#E1rQUl4ps"Bie,Op~>
-JcC<$JcC<$JcC<$JcG'9ps#E1rQUl4ps"Bie,Op~>
-JcC<$JcC<$JcC<$JcG*:q9>H0rQUf2q9=KjeGk%~>
-JcC<$JcC<$JcC<$JcG*:q9>H0rQUf2q9=KjeGk%~>
-JcC<$JcC<$JcC<$JcG*:q9>H0rQUf2q9=KjeGk%~>
-JcC<$JcC<$JcC<$JcG0<ps#<.rQUc1ps"Bif)L7~>
-JcC<$JcC<$JcC<$JcG0<ps#<.rQUc1ps"Bif)L7~>
-JcC<$JcC<$JcC<$JcG0<ps#<.rQUc1ps"Bif)L7~>
-JcC<$JcC<$JcC<$JcG6>ps#6,rQU]/ps"Bif`-I~>
-JcC<$JcC<$JcC<$JcG6>ps#6,rQU]/ps"Bif`-I~>
-JcC<$JcC<$JcC<$JcG6>ps#6,rQU]/ps"Bif`-I~>
-JcC<$JcC<$JcC<$JcG9?q9>9+rQUW-q9=Kjg&HR~>
-JcC<$JcC<$JcC<$JcG9?q9>9+rQUW-q9=Kjg&HR~>
-JcC<$JcC<$JcC<$JcG9?q9>9+rQUW-q9=Kjg&HR~>
-JcC<$JcC<$JcC<$JcG?Aps#-)rQUT,ps"Big])d~>
-JcC<$JcC<$JcC<$JcG?Aps#-)rQUT,ps"Big])d~>
-JcC<$JcC<$JcC<$JcG?Aps#-)rQUT,ps"Big])d~>
-JcC<$JcC<$JcC<$JcGBBq9>0(rQUN*ps"Bih>`!~>
-JcC<$JcC<$JcC<$JcGBBq9>0(rQUN*ps"Bih>`!~>
-JcC<$JcC<$JcC<$JcGBBq9>0(rQUN*ps"Bih>`!~>
-JcC<$JcC<$JcC<$JcGHDq9>*&rQUH(q9=KjhZ&*~>
-JcC<$JcC<$JcC<$JcGHDq9>*&rQUH(q9=KjhZ&*~>
-JcC<$JcC<$JcC<$JcGHDq9>*&rQUH(q9=KjhZ&*~>
-JcC<$JcC<$JcC<$JcGNFps"s$rQUE'ps"Bii;\<~>
-JcC<$JcC<$JcC<$JcGNFps"s$rQUE'ps"Bii;\<~>
-JcC<$JcC<$JcC<$JcGNFps"s$rQUE'ps"Bii;\<~>
-JcC<$JcC<$JcC<$JcGQGq9>!#rQU?%ps"Biir=N~>
-JcC<$JcC<$JcC<$JcGQGq9>!#rQU?%ps"Biir=N~>
-JcC<$JcC<$JcC<$JcGQGq9>!#rQU?%ps"Biir=N~>
-JcC<$JcC<$JcC<$JcGWIps"j!rQU9#q9=Kjj8XW~>
-JcC<$JcC<$JcC<$JcGWIps"j!rQU9#q9=Kjj8XW~>
-JcC<$JcC<$JcC<$JcGWIps"j!rQU9#q9=Kjj8XW~>
-JcC<$JcC<$JcC<$JcG]Kps"ctrQU6"ps"Bijo9i~>
-JcC<$JcC<$JcC<$JcG]Kps"ctrQU6"ps"Bijo9i~>
-JcC<$JcC<$JcC<$JcG]Kps"ctrQU6"ps"Bijo9i~>
-JcC<$JcC<$JcC<$JcG`Lq9=fsrQU/ups"BikPp&~>
-JcC<$JcC<$JcC<$JcG`Lq9=fsrQU/ups"BikPp&~>
-JcC<$JcC<$JcC<$JcG`Lq9=fsrQU/ups"BikPp&~>
-JcC<$JcC<$JcC<$Jc>`Mps"ZqrQU)sq9=Kjkl6/~>
-JcC<$JcC<$JcC<$Jc>`Mps"ZqrQU)sq9=Kjkl6/~>
-JcC<$JcC<$JcC<$Jc>`Mps"ZqrQU)sq9=Kjkl6/~>
-JcC<$JcC<$JcC<$K)bVjL]@=tL&^qmJcG$8J,~>
-JcC<$JcC<$JcC<$K)bVjL]@=tL&^qmJcG$8J,~>
-JcC<$JcC<$JcC<$K)bVjL]@=tL&^qmJcG$8J,~>
-JcC<$JcC<$JcC<$KE(blL&_+rKE(_kJcG*:J,~>
-JcC<$JcC<$JcC<$KE(blL&_+rKE(_kJcG*:J,~>
-JcC<$JcC<$JcC<$KE(blL&_+rKE(_kJcG*:J,~>
-JcC<$JcC<$JcC<$L&^qmK`D"qJcGPjJcG-;J,~>
-JcC<$JcC<$JcC<$L&^qmK`D"qJcGPjJcG-;J,~>
-JcC<$JcC<$JcC<$L&^qmK`D"qJcGPjJcG-;J,~>
-JcC<$JcC<$JcC<$L]@.oK)beoJc>`Mps"Bin,In~>
-JcC<$JcC<$JcC<$L]@.oK)beoJc>`Mps"Bin,In~>
-JcC<$JcC<$JcC<$L]@.oK)beoJc>`Mps"Bin,In~>
-JcC<$JcC<$JcC<$M#[:qJc>`MrQTonrr;c<JcG9?J,~>
-JcC<$JcC<$JcC<$M#[:qJc>`MrQTonrr;c<JcG9?J,~>
-JcC<$JcC<$JcC<$M#[:qJc>`MrQTonrr;c<JcG9?J,~>
-JcC<$JcC<$JcC<$MZ<IrJcGcMrQTonr;ZT;JcG<@J,~>
-JcC<$JcC<$JcC<$MZ<IrJcGcMrQTonr;ZT;JcG<@J,~>
-JcC<$JcC<$JcC<$MZ<IrJcGcMrQTonr;ZT;JcG<@J,~>
-JcC<$JcC<$JcC<$N;r[tJcG]KrQTonqu?H9JcGBBJ,~>
-JcC<$JcC<$JcC<$N;r[tJcG]KrQTonqu?H9JcGBBJ,~>
-JcC<$JcC<$JcC<$N;r[tJcG]KrQTonqu?H9JcGBBJ,~>
-JcC<$JcC<$JcC<$NW8h!JcGWIrQTonq>^67JcGHDJ,~>
-JcC<$JcC<$JcC<$NW8h!JcGWIrQTonq>^67JcGHDJ,~>
-JcC<$JcC<$JcC<$NW8h!JcGWIrQTonq>^67JcGHDJ,~>
-JcC<$JcC<$JcC<$O8o""JcGTHrQTonp]('6JcGKEJ,~>
-JcC<$JcC<$JcC<$O8o""JcGTHrQTonp]('6JcGKEJ,~>
-JcC<$JcC<$JcC<$O8o""JcGTHrQTonp]('6JcGKEJ,~>
-JcC<$JcC<$JcC<$OoP4$JcGNFrQTonpAap4JcGQGJ,~>
-JcC<$JcC<$JcC<$OoP4$JcGNFrQTonpAap4JcGQGJ,~>
-JcC<$JcC<$JcC<$OoP4$JcGNFrQTonpAap4JcGQGJ,~>
-JcC<$JcC<$JcC<$P5k@&JcGHDrQTono`+^2JcGWIJ,~>
-JcC<$JcC<$JcC<$P5k@&JcGHDrQTono`+^2JcGWIJ,~>
-JcC<$JcC<$JcC<$P5k@&JcGHDrQTono`+^2JcGWIJ,~>
-JcC<$JcC<$JcC<$PlLO'JcGECrQTono)JO1JcGZJJ,~>
-JcC<$JcC<$JcC<$PlLO'JcGECrQTono)JO1JcGZJJ,~>
-JcC<$JcC<$JcC<$PlLO'JcGECrQTono)JO1JcGZJJ,~>
-JcC<$JcC<$JcC<$QN-a)JcG?ArQTonnc/C/JcG`LJ,~>
-JcC<$JcC<$JcC<$QN-a)JcG?ArQTonnc/C/JcG`LJ,~>
-JcC<$JcC<$JcC<$QN-a)JcG?ArQTonnc/C/JcG`LJ,~>
-JcC<$JcC<$JcC<$QiHm+JcG9?rQTonn,N1-Jc>`MJ,~>
-JcC<$JcC<$JcC<$QiHm+JcG9?rQTonn,N1-Jc>`MJ,~>
-JcC<$JcC<$JcC<$QiHm+JcG9?rQTonn,N1-Jc>`MJ,~>
-JcC<$JcC<$JcC<$RK*',JcG6>rQTonmJm",JcC6~>
-JcC<$JcC<$JcC<$RK*',JcG6>rQTonmJm",JcC6~>
-JcC<$JcC<$JcC<$RK*',JcG6>rQTonmJm",JcC6~>
-JcC<$JcC<$JcC<$S,`9.JcG0<rQTonm/Qk*KE$H~>
-JcC<$JcC<$JcC<$S,`9.JcG0<rQTonm/Qk*KE$H~>
-JcC<$JcC<$JcC<$S,`9.JcG0<rQTonm/Qk*KE$H~>
-JcC<$JcC<$JcC<$SH&E0JcG*:rQTonlMpY(L&ZZ~>
-JcC<$JcC<$JcC<$SH&E0JcG*:rQTonlMpY(L&ZZ~>
-JcC<$JcC<$JcC<$SH&E0JcG*:rQTonlMpY(L&ZZ~>
-JcC<$JcC<$JcC<$T)\T1JcG'9rQTonkl:J'LAuc~>
-JcC<$JcC<$JcC<$T)\T1JcG'9rQTonkl:J'LAuc~>
-JcC<$JcC<$JcC<$T)\T1JcG'9rQTonkl:J'LAuc~>
-JcC<$JcC<$JcC<$T`=f3JcG!7rQTonkPt>%M#Vu~>
-JcC<$JcC<$JcC<$T`=f3JcG!7rQTonkPt>%M#Vu~>
-JcC<$JcC<$JcC<$T`=f3JcG!7rQTonkPt>%M#Vu~>
-JcC<$JcC<$JcC<$U&Xr5JcFp5rQTonjo>,#MZ82~>
-JcC<$JcC<$JcC<$U&Xr5JcFp5rQTonjo>,#MZ82~>
-JcC<$JcC<$JcC<$U&Xr5JcFp5rQTonjo>,#MZ82~>
-JcC<$JcC<$JcC<$U]:,6JcFm4rQTonj8\r"MuS;~>
-JcC<$JcC<$JcC<$U]:,6JcFm4rQTonj8\r"MuS;~>
-JcC<$JcC<$JcC<$U]:,6JcFm4rQTonj8\r"MuS;~>
-JcC<$JcC<$JcC<$V>p>8JcFg2rQTonirAeuNW4M~>
-JcC<$JcC<$JcC<$V>p>8JcFg2rQTonirAeuNW4M~>
-JcC<$JcC<$JcC<$V>p>8JcFg2rQTonirAeuNW4M~>
-JcC<$JcC<$JcC<$VZ6J:JcFa0rQToni;`SsO8j_~>
-JcC<$JcC<$JcC<$VZ6J:JcFa0rQToni;`SsO8j_~>
-JcC<$JcC<$JcC<$VZ6J:JcFa0rQToni;`SsO8j_~>
-JcC<$JcC<$JcC<$W;lY;JcF^/rQTonhZ*DrOT0h~>
-JcC<$JcC<$JcC<$W;lY;JcF^/rQTonhZ*DrOT0h~>
-JcC<$JcC<$JcC<$W;lY;JcF^/rQTonhZ*DrOT0h~>
-JcC<$JcC<$JcC<$WrMk=JcFX-rQTonh>d8pP5g%~>
-JcC<$JcC<$JcC<$WrMk=JcFX-rQTonh>d8pP5g%~>
-JcC<$JcC<$JcC<$WrMk=JcFX-rQTonh>d8pP5g%~>
-JcC<$JcC<$JcC<$X8i"?JcFR+rQTong].&nPlH7~>
-JcC<$JcC<$JcC<$X8i"?JcFR+rQTong].&nPlH7~>
-JcC<$JcC<$JcC<$X8i"?JcFR+rQTong].&nPlH7~>
-JcC<$JcC<$JcC<$XoJ1@JcFO*rQTong&LlmQ2c@~>
-JcC<$JcC<$JcC<$XoJ1@JcFO*rQTong&LlmQ2c@~>
-JcC<$JcC<$JcC<$XoJ1@JcFO*rQTong&LlmQ2c@~>
-JcC<$JcC<$JcC<$YQ+CBT)X?AoDmeKJH5<Bg&HR~>
-JcC<$JcC<$JcC<$YQ+CBT)X?AoDmeKJH5<Bg&HR~>
-JcC<$JcC<$JcC<$YQ+CBT)X?AoDmeKJH5<Bg&HR~>
-JcC<$JcC<$JcC<$o)F7@oDmeK!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)F7@oDmeK!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)F7@oDmeK!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!&kZ!9_hp!!(pV!!&kZ!9_hp!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!&k`!:A8'!!(pV!!&k`!:A8'!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!&ki!;=n9!!(pV!!&ki!;=n9!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!(m>qZ$a#$S#uCp#uDU!7pH!rr<&MroaEr37cRB!!(pV
-!!(p?qZ$a#$S#uCo]Z;T!7pH!rr<&MroaEr37cRB!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!(mDqZ$a#$S-/Lp$Vh[!8Hf,rr<&RrpBj(3nr-O!!(pV
-!!(pEqZ$a#$S-/Lo^;_Z!8Hf,rr<&RrpBj(3nr-O!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!(mMqZ$a#$nZP\p%SId!9EG>rr<&[rq?K94QOuc!!(pV
-!!(pNqZ$a#$nZP\o_8@c!9EG>rr<&[rq?K94QOuc!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!(m>rr<$mr_itu7hbqAch?T&!!(U8kl1V_f)Fk7!W^g#
-kPtV?rr<&Vkl1V_9`@ro;F_E$)UJ*?rr<&MlKJ6J!7q/5!WiAQe*$c3g&HR~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!(mDrr<$or`',$8JM4Eeb8G2!!(d=mf*7eg]$UB!W_!(
-mJm7Err<&Vmf*7e:B"5s<(Rf))qFWLrr<&RlL+ZP!8IM@!WiAVe*[29g&HR~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!(mMrr<$rr`B>*9GIOIh=gUC!!)*Fp\t3njSnlT!W_<1
-pAb3Nrr<&Vp\t3n;>sZ$=%j>/*8U;^rr<&[lM(;Y!9F.R!WiA_e+WhBg&HR~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!(m>rr<&Mr9+7@4oeLSkl8R$jm)(0_uSoukl1V_f$ig_
-!8meV!8m#?!!(UJkQBa,!)iLRs24p!lKJ8d!9O4Drr<&Me*$c3g&HR~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!(mDrr<&Rr9a[L56+[Vmf1B/lg!p<aT1Z+mf*7egXGQj
-!8meV!8m5E!!(dOmK;T9!*&XZs2b9,lL+\o!:0XPrr<&Re*[29g&HR~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!(mMrr<&[r:^<]63(*\p]&S?o]l2NciE_;p\t3njO<i'
-!8meV!8mPN!!)*XpB0hM!*Ajfs3Lc<lM(>*!;-9brr<&[e+WhBg&HR~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!(m>rr<&Mqre."!!qc>kl1V_f$ig_!8meV!8m#?!!(UI
-kQA^&#j9e&rr<&Me*$c3g&HR~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!(mDrr<&RqsFR-!!quDmf*7egXGQj!8meV!8m5E!!(dN
-mK:N1#jp42rr<&Re*[29g&HR~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!(mMrr<&[qtC3=!"&ANp\t3njO<i'!8meV!8mPN!!)*W
-pB/_A$22sErr<&[e+WhBg&HR~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!(m>rr<&MqreUO!!(g<kPtUu5m@sMkPtV6rTFHu;A]QO
-9XXi_rr<DA5m@sMkPtV6kihjC!'U8D"6C@%cf"!e!8meV!8m#?!!(UIkRlhT!8Qf%!!'f#"ql@J
-kPtV6rTFHu;A]QO9XXi_rr<DA5m@sMkPtV6kihjC!'U8D"6C@%cf"!e!87C&~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!(mDrr<&RqsG$[!!)$HmJm7+63e0SmJm7ArU'm+<#>cR
-9tL;krr<DF63e0SmJm7AmdBoO!'gDL"7$d+eDT`p!8meV!8m5E!!(dNmLe[`!93G7!!'u)#8;XU
-mJm7ArU'm+<#>cR9tL;krr<DF63e0SmJm7AmdBoO!'gDL"7$d+eDT`p!87C&~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!(mMrr<&[qtCZm!!)<YpAb3;70aK[pAb3SrV$N<<uD/V
-:r3,)rr<DM70aK[pAb3Sp\4La!($PW"8!H5gu.o,!8meV!8mPN!!)*WpCZrr!:'=Q!!(53#8;gc
-pAb3SrV$N<<uD/V:r3,)rr<DM70aK[pAb3Sp\4La!($PW"8!H5gu.o,!87C&~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!(m>rr<&Mqre*r!"](mrr<<L)G;3NkPtV6roaWN"99oG
-/cYs-roj@^'-eDg+K+E'!7pAt;ZHek;aUckc2Hi-UB![=kPtV?rr<&Vkl1V_f)+Y4^AnfDkl1Vh
-,8s2tVs*=E!7q/5#a,;j.SVMq!f$^<rr<]W)G;3NkPtV6kibqF!)-<Y#6N0KkQ7LZ6f7)-!87C&~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!(mDrr<&RqsFO(!"f.trr<<L)bhKWmJm7ArpC&W"99rJ
-0E;02rpKdd'-eGj+ft)3!8Hr0<<*"o<CI,odf&S8VZ90CmJm7Err<&Vmf*7eg\^C?_uLAJmf*7n
-,9'?#XR>KV!8IM@#aGMm.o.i!!f?pErr<]W)bhKWmJm7Amd='T!)?N_#6N?PmK09d7GmM5!87C&~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!(mMrr<&[qtC08!"f/(rr<<N*)@capAb3Srq?\f"9:#O
-0`V98rqHEm'."Vo,-pqC!9EnK=9&=u=@`]!gAUaIXT1oLpAb3Nrr<&Vp\t3njSSZQb5`+Qp\t4"
-,of])ZM4(n!9F.R#b(qs/Q+;'!fm9Srr<]Y*)@capAb3Sp\.bi!)Zih#Qi`YpB%Gs8Dj.A!87C&~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!(m>rr<&Mr9+783WNRekl1Vm0&YsVkNDmGf')>6!s4\c
-kRa?i!j_%R!!"Y0ki_-m!!(ULkl1Vdf')<t!-\>)!_EB`hrk%?hu<ZVhrt(?!7q)3"5#X7@/fBi
-!"U^?ki_-mkPtV6kifhb!gEWI&>'+-ZKUKP!&!3nkND%/!7q/5rr<5Rkic"HG5^V+8H>@>kPtV9
-s*t~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!(mDrr<&Rr9a[C49/mjmf*7s0]qfjmHsrSg[=LL!s4hg
-mLZ,t!k7Uc!!"_8md9E0!!(dQmf*7jg[=K2!."P2!_WNfhsLIEhu<ZVhsULE!8IG>"5Q'>A,bor
-!"UdGmd9E0mJm7AmdA's!gioS&>KF2\*iYa!&3R'mHs<A!8IM@rr<5Wmd=-VH2[.49)t^DmJm7?
-s*t~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!(mMrr<&[r:^<U4of6pp\t4'1%+f0p@eOejS/Dn!s5%m
-pCO>/!l"F'!!"bAp\+=T!!)*Zp\t3sjS/CP!.On@!_iZohtI*Nhu<ZVhtR-N!9F(P"6McIBE%Z*
-!"UgPp\+=TpAb3Sp\2o7!hK>b&?5p9^A%@%!&<p9p@e4\!9F.Rrr<5`p\.hkIf9!B9`V0MpAb3H
-s*t~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!(m>rr<$mr_its3X>^3g&C48!!&2[kl1Vdf')=$!+>`g
-#BBf7ki`!HP5OPD!!(ULkl1Vkf')>&!$CCfkgTbNjPT/$!8meV!8m#?!!#^l;[#uY#QQ1(roj@^
-!0[6Crr<5Rkic1M@/T3nEWAVnkPtUGr94.\!7q/5rr<JYkif8O+6VkOe--TJhrk%?g&HR~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!(mDrr<$or`',"49tp6hu<'D!!&>_mf*7jg[=K7!+Yrp
-#B^#<md:&TQMg1N!!(dQmf*7qg[=L<!$L[smb%aYlJM"0!8meV!8m5E!!#dn<<Z8_#QQ4/rpKdd
-!1*NMrr<5Wmd=<[A,Pa"FT>#$mJm6Qr9jRb!8IM@rr<J^md@L`+RSUbf``,UhsLIEg&HR~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!(mMrr<$rr`B>(4p_3;kPk5U!!&Pep\t3sjS/CV!,)6(
-#C-;Cp\+XfSG`-]!!)*Zp\t4%jS/D^!$V(1pYl>loAB9B!8meV!8mPN!!#mq=9V\g#llC:rqHEm
-!1`r\rr<5`p\/%qBDhK/GlUP4pAb2`r:g3k!9F.Rrr<Jgp\2?$+nk[)iWU+hhtI*Ng&HR~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!(m>qZ$a#%l8LdrTO7]!5eZtrr<5Rkia,hZ2Eej_uL50
-kPtV"r94.\!7q/5rr<&MroaS6!3bVMIK40?kPtV?rr<&Vkkb>_!Y7)4h#6I:!!'n5kl1Vdf')<?
-!3uIc#K-TNki`!H_YiWt!!(ULkl1V_f)Fk<-3175k^EMIhWOq>g&HR~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!(mDqZ$a#&2\dorU0[c!6>$*rr<5Wmd;4u[f#OuaT)b;
-mJm7-r9jRb!8IM@rr<&RrpC"=!42+]JcK]FmJm7Err<&VmeZte!Y@29ir/<F!!((:mf*7jg[=JQ
-!4Mgn#KZrSmd:&Ta8GB*!!(dQmf*7eg]$UG-NLL@mXbFVhX1@Dg&HR~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!(mMqZ$a#&2o+)rV-<l!7(N:rr<5`p\,j3^&7U0ci=OL
-pAb3=r:g3k!9F.Rrr<&[rq?XH!4qq!LB)AOpAb3Nrr<&Vp\Opn!Y@8@lM^JW!!(=Ap\t3sjS/Bm
-!58=)#LEG[p\+XfcM[G:!!)*Zp\t3njSnlY.0-sRpP/`hhY.!Mg&HR~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!(m>rr<&Mp#uDU!7^r1rr<5Rki`9Pchuu3irB)8kPtV4
-r94.\!7q/5rr<&MroaT=!*8=I,lksAkPtV?rr<&Vkl1V_f(J8,!!(OGkl1Vdf')<'!71T,#NGda
-h<4h=eGSP1!!(ULkl1V_f)Fk<JcJj8kTp5KhWOq>g&HR~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!(mDrr<&Rp$Vh[!87;<rr<5Wmd:>\ebnh?kPtVCmJm7?
-r9jRb!8IM@rr<&RrpC#F!*SaX-326GmJm7Err<&Vmf*7eg\("7!!(^Lmf*7jg[=J8!7h#8#Nu-f
-j6cmIg&1:<!!(dQmf*7eg]$UGK`G9DmNqqWhX1@Dg&HR~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!(mMrr<&[p%SId!93qNrr<5`p\+soh>I!PnGiRTpAb3Q
-r:g3k!9F.Rrr<&[rq?YU!*o9m-ih`QpAb3Nrr<&Vp\t3njRr9I!!)$Up\t3sjS/BT!8[SI#Oqco
-lh:AZir&QN!!)*Zp\t3njSnlYMZ@#VpF$$jhY.!Mg&HR~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!(m>rr<&Mp#uDU!7q)3rr<5Rki`6Ochuu3huEc5kPtV6
-r94.\!7q/5rr<&MroaR=#7B:p!'/m!!!(pV!!(p?rr<&Mp#uDU!7q&2rr<5Rki`6Ochuu3huEc5
-kPtV6r94.\!7q/5rr<&MroaR=#7B:p!'/m!!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!(mDrr<&Rp$Vh[!8IG>rr<5Wmd:;[ebnh?jo>DAmJm7A
-r9jRb!8IM@rr<&RrpC!H#7BM&!'B$)!!(pV!!(pErr<&Rp$Vh[!8ID=rr<5Wmd:;[ebnh?jo>DA
-mJm7Ar9jRb!8IM@rr<&RrpC!H#7BM&!'B$)!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!(mMrr<&[p%SId!9F(Prr<5`p\+pnh>I!PmJm7QpAb3S
-r:g3k!9F.Rrr<&[rq?WZ#Rft7!'T04!!(pV!!(pNrr<&[p%SId!9F%Orr<5`p\+pnh>I!PmJm7Q
-pAb3Sr:g3k!9F.Rrr<&[rq?WZ#Rft7!'T04!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!(m>rr<&Mp#uDU!7q)3rr<5Rkia)gZ2Eej_#Oo-kPtV6
-r94.\!7q/5rr<&MrTFD`!0gjkPhkO'!8meV!8m#?!!(UCkl1V_f)+\2!!Us;kT9f0r9+C%!"A)T
-!!(UJkl1V_f)Fn5!!(UKkQOlbP[FKUh<4h=g&HR~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!(mDrr<&Rp$Vh[!8IG>rr<5Wmd;1t[f#Ou`W-G8mJm7A
-r9jRb!8IM@rr<&RrU'hh!176rR,.01!8meV!8m5E!!(dHmf*7eg\^F=!!V-FmN;M<r9ag0!"A;`
-!!(dOmf*7eg]$X@!!(dPmKHSjQt$,`h<k7Cg&HR~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!(mMrr<&[p%SId!9F(Prr<5`p\,g2^&7U0blA4IpAb3S
-r:g3k!9F.Rrr<&[rV$It!1mg'T&',@!8meV!8mPN!!)*Qp\t3njSS]O!!VHXpE9OMr:^H@!"J\s
-!!)*Xp\t3njSnoR!!)*YpB=Y!SnA%ph=gmLg&HR~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!(m>rr<&Mp#uDU!7q)3rr<5Rkic.L@f5EpE<&>hkPtV6
-r94.\!7q/5rr<&MrTFEh!(dt;iSE\t!8meV!8m#?!!(UCkl1V_f)+\2!!Us;kZImpr9+B*!(,o5
-!!(UJkl1V_f)Fn5!!(UKkQS0j8J_orh<4h=g&HR~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!(mDrr<&Rp$Vh[!8IG>rr<5Wmd=9ZAc1s$F9"\rmJm7A
-r9jRb!8IM@rr<&RrU'ir!)"+=kM>P+!8meV!8m5E!!(dHmf*7eg\^F=!!V-FmTT[&r9af3!(62B
-!!(dOmf*7eg]$X@!!(dPmKKrt9,A-%h<k7Cg&HR~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!(mMrr<&[p%SId!9F(Prr<5`p\/"pC&I]1GQ:5-pAb3S
-r:g3k!9F.Rrr<&[rV$K-!)4:An(m^<!8meV!8mPN!!)*Qp\t3njSS]O!!VHXpKmo7r:^G@!(Q_W
-!!)*Xp\t3njSnoR!!)*YpBA//9c+H1h=gmLg&HR~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!(m>rr<&Mp#uDU!7q)3rr<8Skif_`".&rM#bhM'WT`OG
-!7q)3rr<&MroaCi!5n`u"!dpJ@GL&H!8meV!8m#?!!(UCkl1V_f)+\2!!_$<ke70%QN$(RU':Us
-ki`!Hf)4b3!!(ULkQ2%j_u/^#,Q[sSgun_<g&HR~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!(mDrr<&Rp$Vh[!8IG>rr<8Xmd@sq".K5W#c7h,Y3t]X
-!8IG>rr<&RrpBgo!6G*+"!n!KADHSQ!8meV!8m5E!!(dHmf*7eg\^F=!!_3Gm_]/0Rf;^\V?[+(
-md:&Tg\gL>!!(dQmK*[paSbH.,m"'Wh!P.Bg&HR~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!(mMrr<&[p%SId!9F(Prr<8ap\2f5"/,Yf#cn72[.j:p
-!9F(Prr<&[rq?I$!71T;""+-MB\`=^!8meV!8mPN!!)*Qp\t3njSS]O!!_NYpW<U@T`4ZkX9Sa4
-p\+XfjS\cP!!)*ZpAt[%ci!M>-NX9]h"LdKg&HR~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!(m>rr<&Mp#uDU!7q)3rr<&MroaWK!rsiH0E;-"roj@^
-!7q)3rr<&Mroa_H!#\O)hWX0R!!'^fkPtV?rr<&Vkl1V_f(J8,!!(UIkl1V_f)Fk=NroA4:+uYK
-HN*..!!(UJkl1V_f)Fk@1]SCg9A\mrJ,fS_gun_<g&HR~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!(mDrr<&Rp$Vh[!8IG>rr<&RrpC&U!rslK0`V6&rpKdd
-!8IG>rr<&RrpC.O!#\U-jR2Gh!!'mkmJm7Err<&Vmf*7eg\("7!!(dNmf*7eg]$UHP61e9:b_qN
-IK&[7!!(dOmf*7eg]$UK2#nLj:#ta1KE)"hh!P.Bg&HR~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!(mMrr<&[p%SId!9F(Prr<&[rq?\c!rsrP1B7H-rqHEm
-!9F(Prr<&[rq?dZ!#ed3m.^72!!(-rpAb3Nrr<&Vp\t3njRr9I!!)*Wp\t3njSnlZQid=@;_nCS
-K)YNE!!)*Xp\t3njSnl]2ZOap:[IiMM#[Oth"LdKg&HR~>
-JcC<$JcC<$JcC<$o)A[iaQWX(!+l#j!nI>O]]]=qhu<ZVhWXt>!7pi,rr<&Mr94.\!7q,4#.dSG
-";=J8rTO7]!7q)3rr<&Mroa^271B;/^Zamj!&**j!!(pV!!(p?rr<&Mp#uDU!7q&2rr<&MrTFHs
-:DO'H9XF]]rr<&Mr94.\!7q/5$HY^G!Y<'0kdLOFgZSV;g&HR~>
-JcC<$JcC<$JcC<$o)A[iaR9'.!,25s!o!\T]^>b"hu<ZVhX:CD!8I27rr<&Rr9jRb!8IJ?#/3qM
-";FS?rU0[c!8IG>rr<&RrpC-=7h#M1`:!'+!&<6r!!(pV!!(pErr<&Rp$Vh[!8ID=rr<&RrU'm(
-;&09K9t:/irr<&Rr9jRb!8IM@$I2-N!Y<6;m^rNSg[5%Ag&HR~>
-JcC<$JcC<$JcC<$o)A[iaS5]7!,VN+!os=]]_;C+hu<ZVhY7$M!9EhIrr<&[r:g3k!9F+Q#0'UY
-";F\IrV-<l!9F(Prr<&[rq?cN8e(n6bP1bK!&E='!!(pV!!(pNrr<&[p%SId!9F%Orr<&[rV$N9
-<#5ZO:quu'rr<&[r:g3k!9F.R$J%fZ!YEQLpVQtdg\1[Jg&HR~>
-JcC<$JcC<$JcC<$o)A[iaQWX(!<K;!kQ9<8!5.Lq!8meV!2&HVB`O1JkPtV?rr<%kkQ5GuNn`at
-!87C&~>
-JcC<$JcC<$JcC<$o)A[iaR9'.!<KG%mK2,C!5._"!8meV!2&Z\CB0OPmJm7Err<%kmK./(P2#C)
-!87C&~>
-JcC<$JcC<$JcC<$o)A[iaS5]7!<K\,pB'CU!5/%+!8meV!2&ueDZH-YpAb3Nrr<%kpB#75QeV67
-!87C&~>
-JcC<$JcC<$JcC<$o)A[iaQWU'!?0YhkQ9<8!5.Lq!8meV!2AZ\iomZU']@a0!!(pV!!&bW"leaO
-$P_ORkPtV9s*t~>
-JcC<$JcC<$JcC<$o)A[iaR9$-!?9qomK2,C!5._"!8meV!2AlbkO,ee($=9=!!(pV!!&b]"m><_
-$PhgYmJm7?s*t~>
-JcC<$JcC<$JcC<$o)A[iaS5Z6!?C;#pB'CU!5/%+!8meV!2B2knFsX*(%0iN!!(pV!!&bf"n;9#
-$l/3bpAb3Hs*t~>
-JcC<$JcC<$JcC<$o)A[iaQWX(!ZD&;r9+45!!'[q!!(pV!!&bW"@3=o!0#Xq!!(pV!!&bW"@3=o
-!0#Xq!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iaR9'.!ZM,>r9aX@!!'\"!!(pV!!&b]"@<Cp!0Gq&!!(pV!!&b]"@<Cp
-!0Gq&!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iaS5]7!ZV2Br:^9R!!'\+!!(pV!!&bf"@WXt!0u:4!!(pV!!&bf"@WXt
-!0u:4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iaQWX("/lA'S,MOPec5^JkQ\[t(^1UI[E.P3!8meV!2AZZE<dD4g#rD9
-hu<ZVU?D]!#9&-GkPtV9s*t~>
-JcC<$JcC<$JcC<$o)A[iaR9'."0D_,TDe0ZgAh6OmKUL,(^1XK]#a:>!8meV!2Al`F9`b<g$Sh?
-hu<ZVU@&,*#9/?LmJm7?s*t~>
-JcC<$JcC<$JcC<$o)A[iaS5]7"1&.2V>^,ij8]2XpBJ`@)$LaO_8u?N!8meV!2B2iGR,:Gg%PIH
-hu<ZVUA"b7#TS]SpAb3Hs*t~>
-JcC<$JcC<$JcC<$o)A[iaQWX("P.bs&CLL@!nI>OrTFNM"99oG/cYs-ali^)hu<ZVJ`ugk!!(pV
-!!%T6p?2JVg&HR~>
-JcC<$JcC<$JcC<$o)A[iaR9'."P\5&&_I$M!o!\TrU'rV"99rJ0E;02amK-/hu<ZVJaW7"!!(pV
-!!%T<p?hn\g&HR~>
-JcC<$JcC<$JcC<$o)A[iaS5]7"QY%4&`<T^!os=]rV$Se"9:#O0`V98anGc8hu<ZVJbSm4!!(pV
-!!%TEp@eOeg&HR~>
-JcC<$JcC<$JcC<$o)A[iaQWX("P2Zi!(-\K!nI>OroaI#!s4\ckQ@F\!j]u4!!(pV!!%T6p?2JV
-hu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iaR9'."P`5u!(6bR!o!\TrpBm.!s4hgmK93g!k6>?!!(pV!!%T<p?hn\
-hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iaS5]7"Q]24!(Qt^!os=]rq?N>!s5%mpB.E"!kuhO!!(pV!!%TEp@eOe
-hu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iaQWX($J+F\#loeFkgf_6roaDe!+>`g!ce92b3/g*hu<ZVJ`ugk!!(pV
-!!%T6p?2JVg&HR~>
-JcC<$JcC<$JcC<$o)A[iaR9'.$JY!l#loqPmb7^ArpBhm!+Yrp!d+K7b3f60hu<ZVJaW7"!!(pV
-!!%T<p?hn\g&HR~>
-JcC<$JcC<$JcC<$o)A[iaS5]7$KUs1$364_pZ);Srq?J%!,)6(!dOc>b4bl9hu<ZVJbSm4!!(pV
-!!%TEp@eOeg&HR~>
-JcC<$JcC<$JcC<$o)A[iaQWX($J+G)L]@b$kgf_6roaD+!3uIc!lP'Ib3/g*hu<ZVJ`ugk!!(pV
-!!%T6p?2JVg&HR~>
-JcC<$JcC<$JcC<$o)A[iaR9'.$JY":MuX1-mb7^ArpBh2!4Mgn!m(ENb3f60hu<ZVJaW7"!!(pV
-!!%T<p?hn\g&HR~>
-JcC<$JcC<$JcC<$o)A[iaS5]7$KUsUOT5a;pZ);Srq?I<!58=)!mgoVb4bl9hu<ZVJbSm4!!(pV
-!!%TEp@eOeg&HR~>
-JcC<$JcC<$JcC<$o)A[iaQWX(!7q/5#!r;FjjjD3roaCh!71T,"60@]h95!^!8meV!.jA-kPtV?
-rr<%Mkk=3?!87C&~>
-JcC<$JcC<$JcC<$o)A[iaR9'.!8IM@#"&AHle;C>rpBgn!7h#8"6]^bj3-ij!8meV!.jS3mJm7E
-rr<%Mme6&K!87C&~>
-JcC<$JcC<$JcC<$o)A[iaS5]7!9F.R#"ASMo],uPrq?I#!8[SI"7Z?klc]#&!8meV!.jn<pAb3N
-rr<%Mp\+=]!87C&~>
-JcC<$JcC<$JcC<$o)A[iaQWX(!7q/5#13t^G1HWnroaCg!71T,"5j.Zh95!^!8meV!.jA-kPtV?
-rr<%Mkk=3?!87C&~>
-JcC<$JcC<$JcC<$o)A[iaR9'.!8IM@#1jFeH.r<!rpBgm!7h#8"6KR`j3-ij!8meV!.jS3mJm7E
-rr<%Mme6&K!87C&~>
-JcC<$JcC<$JcC<$o)A[iaS5]7!9F.R#2^!mIcLJ/rq?I"!8[SI"7?-hlc]#&!8meV!.jn<pAb3N
-rr<%Mp\+=]!87C&~>
-JcC<$JcC<$JcC<$o)A[iaQWX(!7q,4"e,JqVZ6_rkQ2h+Z2Eee_#OndkPtV?rr<%Mkk=3?!8meV
-!.jA-kPtV9s*t~>
-JcC<$JcC<$JcC<$o)A[iaR9'.!8IJ?"ePbuX8i8"mK+L2[f#Op`W-FimJm7Err<%Mme6&K!8meV
-!.jS3mJm7?s*t~>
-JcC<$JcC<$JcC<$o)A[iaS5]7!9F+Q"f22&Z2an(pAuK<^&7U+blA3qpAb3Nrr<%Mp\+=]!8meV
-!.jn<pAb3Hs*t~>
-JcC<$JcC<$JcC<$o)A[iaQWX(!7q)3"B,:<!!*#^!a,M4r9+3%!(+il!!(pV!!'Om!9_/]!!(pV
-!!%T6p?2JVg&HR~>
-JcC<$JcC<$JcC<$o)A[iaR9'.!8IG>"B>F?!!*#d!a>Y9r9aW.!(4os!!(pV!!'Os!:@Si!!(pV
-!!%T<p?hn\g&HR~>
-JcC<$JcC<$JcC<$o)A[iaS5]7!9F(P"BYXC!!*#m!abqAr:^8;!(P-*!!(pV!!'P'!;=5&!!(pV
-!!%TEp@eOeg&HR~>
-JcC<$JcC<$JcC<$o)A[iaQWX(!7q)3!SJ@i!<20a^'"P(roaHY"otXFkPtV?rr<&kkl1V_f(%u(
-!!(U1kl1V_f)Fk7]K"KXkPtV?rr<&TkQp+*659V406Z%9kl1Vdf');t!7q,4rr<&M`omC&g&HR~>
-JcC<$JcC<$JcC<$o)A[iaR9'.!8IG>!T+gp!<2Bg_ZU(1rpBlc#6:pLmJm7Err<&kmf*7eg[X_3
-!!(d6mf*7eg]$UB_)g>dmJm7Err<&TmKhs:6PT_50mVXCmf*7jg[=J0!8IJ?rr<&R`pNg,g&HR~>
-JcC<$JcC<$JcC<$o)A[iaS5]7!9F(P!TtF$!<2]paohg>rq?Mr#6;-RpAb3Nrr<&kp\t3njRN!E
-!!)*?p\t3njSnlTaZSY"pAb3Nrr<&TpB^2P7MZ+:14JERp\t3sjS/BK!9F+Qrr<&[`qKH5g&HR~>
-JcC<$JcC<$JcC<$o)A[iaQWX(!7q&2"0)A%!<)*eNroA4:+uYKHHG@N!8meV!;,LT!!(U?kl1V_
-f&Puo!!(ULkQ1ecf"gJL!8meV!8coHYoE`Q5#4?L!#)U)kl1Vdf');t!7q,4rr<&M`omC&g&HR~>
-JcC<$JcC<$JcC<$o)A[iaR9'.!8ID="0V_*!<)<kP61e9:b_qNIECmW!8meV!;,^Z!!(dDmf*7e
-gZ.`%!!(dQmK*FigVE4W!8meV!8d,N[2f5V5>aWP!#2g.mf*7jg[=J0!8IJ?rr<&R`pNg,g&HR~>
-JcC<$JcC<$JcC<$o)A[iaS5]7!9F%O"18.0!<)WtQid=@;_nCSK$!`e!8meV!;-$c!!)*Mp\t3n
-jQ$"7!!)*ZpAtBrjM:Ki!8meV!8dGW]H.%_6<$8Z!#3'5p\t3sjS/BK!9F+Qrr<&[`qKH5g&HR~>
-JcC<$JcC<$JcC<$o)A[iaQWX(!7q#1!b;92r9+?r:DO'H9XDh(!!(pV!!)ZTrr<&Mn`]uQ!7p2o
-s24p!roj@^!7nsL!!(pV!!(p?"L/.7IGt1h"P[&Z$cDGss25*&ki`!Hf)=h4_uSo=kPtV9s*t~>
-JcC<$JcC<$JcC<$o)A[iaR9'.!8IA<!bVK5r9ad';&09K9t8:4!!(pV!!)ZZrr<&Rna?DW!8HQ%
-s2b9,rpKdd!8G<W!!(pV!!(pE"LSI<JEQq""Q<Pb$cqf)s2bH1md:&Tg\pR?aT1YHmJm7?s*t~>
-JcC<$JcC<$JcC<$o)A[iaS5]7!9F"N!c%c9r:^E8<#5ZO:qt*G!!(pV!!)Zcrr<&[nb<%`!9E27
-s3Lc<rqHEm!9Cri!!(pV!!(pN"M=sCL%#$8"R07n%+"D:s3LrAp\+XfjSeiQciE^XpAb3Hs*t~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)ZTrr<&Mn`]uQ!7ouirr<&M^utauhu<ZVi91:$)uu?&
-kQC!6!(,u7rr<&M^ZYXtg&HR~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)ZZrr<&Rna?DW!8H>trr<&R_!V1&hu<ZVi9g^0*<;T+
-mK;iC!(6&>rr<&R^[;(%g&HR~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)Zcrr<&[nb<%`!9Du1rr<&[_"Rg/hu<ZVi:d?A*WVo2
-pB1+X!(Q8Jrr<&[^\7^.g&HR~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)ZTrr<&Mroj@^#1ehg#n9,"rTO7]#1%TC"q<i$r9+@%
-<>brT:V?Yirr<DA5m@sMkPtV6kihmD$0^K14q[u+15tDpkl1VeerMHj%6pokkQ\:b'*K+M`Vep(
-_GqHW'i2L4kPtV?rr<&WkQ6\C3r.tA\h.FQr9+@%<>brT:V?Vhrr<5Rki`!Hf)=h4!!(ULkl1Ve
-erMHj%6pokkQm\6"qX\Y.fe/YkPtV9s*t~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)ZZrr<&RrpKdd#2>=r#n9/'rU0[c#1S&L#7Wu*r9ad0
-<uD/V;8N5!rr<DF63e0SmJm7AmdBrP$1@,A58+/-1Q_#&mf*7kgQO>u%7%,pmKU*o'Ef4PbP^c4
-a&a,^'iDg;mJm7Err<&WmK/IM4SeCI^+O$_r9ad0<uD/V;8N1urr<5Wmd:&Tg\pR?!!(dQmf*7k
-gQO>u%7%,pmKfLB#8'qb/-+G_mJm7?s*t~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)Zcrr<&[rqHEm#3;.,$4]G3rV-<l#2Fe[#7a/5r:^E@
-=rIP[<6>+5rr<DM70aK[pAb3Sp\4Ob$2=(X65'J123mn6p\t3tjHq\0%R[]&pBJ<,'Ef7TderhD
-c<;+i(0&EGpAb3Nrr<&WpB$T[55FpT`\2)ur:^E@=rIP[<6>(4rr<5`p\+XfjSeiQ!!)*Zp\t3t
-jHq\0%R[]&pB[ZS#8(%m/catjpAb3Hs*t~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)ZTrr<&Mroj@^#>P@]9HF08UAjBV!!anQ1JJtl"/l.^
-#b;/"1/0>#"do;Qrr<r^)G;3NkPtV6kibqF!)-<ikXPUb7ntK5!-J2'rr<:!"$'$r!!8nokQlV<
-!%gqo!"6=9kQm^`!&@8#!!Sb\kPtV?rr<&WkQ4'NMt-!:SH]'L9e?>KR/Q7K!!Us;kPtV6rTO7]
-!7q/5rr<:!"$'$r!!8nokQuP8"[PEX)&WG*i91.@g&HR~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)ZZrr<&RrpKdd#>bLa:*0H;VZ-#`!!aqR1f#7p"0DLi
-#b_J'1J]V'"e>S[rr<r^)bhKWmJm7Amd='T!)?NomR[Bk8Pgl:!-eD0rr<:#"$97"!!9%smKeCF
-!&%.t!"6L>mKfKk!&ID'!!Sn`mJm7Err<&WmK,cVO7DWDTa(QR:G)VNSGhmU!!V-FmJm7ArU0[c
-!8IM@rr<:#"$97"!!9%smKn:A"[YNZ)&WG/i9gRFg&HR~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)Zcrr<&[rqHEm#?(^f;'5i?XT%to!!b"T2Gt_!"1%q#
-#cIt.2,Z(-"eu"jrr<r`*)@capAb3Sp\.bi!)Zj#pIkQ"9N*JB!.=b>rr<:&"$KL(!!98$pBZNT
-!&.>%!"?gFpB[]&!&[Y-!!T+fpAb3Nrr<&WpB!hbPk"JRW!<;[;D/"RUAaid!!VHXpAb3SrV-<l
-!9F.Rrr<:&"$KL(!!98$pBcEO"[ti`)B&V:i:d3Og&HR~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)ZTrr<&Mroj@^#8k8?kiGS?1]HV<!"BUMkih,'!'09,
-a9W<]roaob"p`03kPtT8i99@ekPtV6roj@^#1i#%TE$S!roaH:!"e>mkl1Vl(r5A!j\Gk4kifJV
-"ekqZ#]Kbokig(n&$c,t".f]%`q/Bo!8meV!9!&B(BD,=kQAm3&$c,t".f]%`r>3%!!Us;kPtV6
-rTO7]!7q/5rr<`M_!("D:B337ke@0,\*3%f%fcU\i91.@g&HR~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)ZZrr<&RrpKdd#8kGJmd!^M2#cqC!"BXSmdBC;!'BW:
-bm4ifrpC>l#7&H?mJm5@k3hX(mJm7ArpKdd#2AS6U]<%,rpBlC!"nVtmf*7r(rbq2lVRX=md@^g
-#,V=e#]ftsmdA=*&%2E)"/6#*bOb-%!8meV!9!8H(BD;BmK:]>&%2E)"/6#*bPpr0!!V-FmJm7A
-rU0[c!8IM@rr<`M`U<0[;#iH@m_f/7]^G4'%fcUai9gRFg&HR~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)Zcrr<&[rqHEm#8tb[p[hDb2ZEIN!"BXZp\4;Y!'U)N
-eHlf"rq?u'#7/fQpAb1Jme?GKpAb3SrqHEm#3>OQWW4^;rq?MQ!"nr(p\t4&)9hjLoMbfKp\2Q+
-#-7at#^68$p\32E&A8#:"/uM2e+<;6!8meV!9!SQ(]_\KpB/qP&A8#:"/uM2e,K+A!!VHXpAb3S
-rV-<l!9F.Rrr<`NbkLl(;ueiNpWEUH_tWoH&-)^ki:d3Og&HR~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)ZTrr<&Mroj@^!0-s@!kSF=roj@^!0$m?#J0sGkicIU
-MYuZCDZF50kPtUGr94.\!7q/5rr<5RkieF*Vu>f]hZ*Z2roj@^!0-s@#J0sBkic%ICAm?$j=E:B
-k[FOLr9+3#!+GK_!!(pV!!(s@!X&MOo&p-a!/g^<!cJ'Iroj@^"kMo$!!(UKkl1V_f)Fn5!!&#W
-kQe^"$0^S[!-J2'"+L:Nf&5`l!87C&~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)ZZrr<&RrpKdd!0R6J!l+dBrpKdd!0I0I#JU6Kmd=Wd
-Nr8;MEWBY<mJm6Qr9jRb!8IM@rr<5Wmd?W<XSqPhjT#;>rpKdd!0R6J#J^<Gmd=3XD>il-l7G$O
-mUZBYr9aW,!+b]h!!(pV!!(sF!X&MUo'QQj!07!F!ce9OrpKdd"l&J5!!(dPmf*7eg]$X@!!&/[
-mK^N-$1@4i!-eD0"+pRRgYhK"!87C&~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)Zcrr<&[rqHEm!1*TX!lt?KrqHEm!1!NW#KHfTp\/A%
-PPk.[FoZ4MpAb2`r:g3k!9F.Rrr<5`p\1FWZMjM"m/R.NrqHEm!1*TX#KQlPp\.nmEW,V:o.E,d
-pLsVkr:^89!,1uu!!(pV!!(sO!X&M]o(N3"!0d?T!d4QWrqHEm"m#FP!!)*Yp\t3njSnoR!!&>`
-pBSb>$MX:+!.4\=",HpWjP]b4!87C&~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)ZTrr<&Mroj@^!6+p#!n72Nroj@^!65!$#Li_Skia5k
-bP^Q/ZiDE9kPtV"r94.\!7q/5rr<&MqWJ+@]8$@dfDb"6!!(":kQfT;!U/_h!4;Ob![@]gr9+3h
-!%%7#!!(pV!!(s@!X8YOo&p-"!6b<(!jhqRroj@^"kMo$!!(UKkl1V_f)Fn5!!(":kQfT;!U/_l
-!4i'l"31BAf&5`l!87C&~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)ZZrr<&RrpKdd!6Y9.!ndPSrpKdd!6b?/#MB(Xmd;>#
-d/<;:\H!uEmJm7-r9jRb!8IM@rr<&RqX+OL^kr*lh#?aA!!(1?mK_DF!Uf@u!4hmm![Icmr9aWs
-!%.=*!!(pV!!(sF!XA_Vo'QQ)!7:Z3!kA:XrpKdd"l&J5!!(dPmf*7eg]$X@!!(1?mK_DF!UfA#
-!58@!"3^`FgYhK"!87C&~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)Zcrr<&[rqHEm!7Cc>!oa1\rqHEm!7Uo@#N>^ap\-!7
-f_kIK^]5eWpAb3=r:g3k!9F.Rrr<&[qY(0]aH$<$jo5#S!!(FFpBT[X!Vc=3!5SC(![[p"r:^9.
-!%@I5!!(pV!!(sO!XA_^o(N24!8.5D!l+darqHEm"m#FP!!)*Yp\t3njSnoR!!(FFpBT[X!Vc=7
-!6+p2"4R;NjP]b4!87C&~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)ZTrr<&Mroj@^!7h&3!nI>Oroj@^!7h&3"kEYRki`<I
-!!N_nkPtV4r94.\!7q/5rr<&Mroa[?GWQ]B!!*'"f)Fn5!!(RJkQfZ=!9iVM!71H(!!r?"!"/>]
-!!(pV!!(s@!Zh?Qo&p&Zp](:$roj@^"kMo$!!(UKkl1V_f)Fn5!!(RJkQfZ=!9iVM!7Cc/"60@]
-f&5`l!87C&~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)ZZrr<&RrpKdd!8@D>!o!\TrpKdd!8@D>"ks"Wmd:AU
-!!N_tmJm7?r9jRb!8IM@rr<&RrpC*JHT`/G!!*'"g]$X@!!(aOmK_JH!:K7Z!7gl4!!r?"!"/>c
-!!(pV!!(sF!ZqEVo'QJ`p](:$rpKdd"l&J5!!(dPmf*7eg]$X@!!(aOmK_JH!:K7Z!8%2;"6]^b
-gYhK"!87C&~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)Zcrr<&[rqHEm!9=%P!os=]rqHEm!9=%P"loX`p\,!h
-!!Nc)pAb3Qr:g3k!9F.Rrr<&[rq?`\J3OkO!!*'"jSnoR!!)'XpBTaZ!;H3l!8[GE!"&E#!"8Dm
-!!(pV!!(sO![%K_o(N+jp](:%rqHEm"m#FP!!)*Yp\t3njSnoR!!)'XpBTaZ!;H3l!8mbL"7Z?k
-jP]b4!87C&~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)ZTrr<&Mroj@^!7q,4!nI>Oroj@^!7q,4#M&kTki`3N
-9_qZk<9WNG!7q)3rr<&Mroj@^%G'b,_%Zk]6>)J,!!(ULkl1V_f)=e;ec5^6kQV%6puhb`!)35f
-!*&RR!!(pV!!(s@!_iZQpuhd%S([f)!X8WuqGRAnroj@^"kMo$!!(UKkl1V_f)Fn5!!(UKkQfZ=
-!9iVN!71W-"6':\f&5`l!87C&~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)ZZrr<&RrpKdd!8IJ?!o!\TrpKdd!8IJ?#MT4Ymd:;[
-:&7in<poAU!8IG>rr<&RrpKdd%GU==`YAId6tqt9!!(dQmf*7eg\pOFgAh6AmKWaCq!J1g!)<;i
-!*8^Z!!(pV!!(sF!`&fWq!J3.TATY9!XA^"qGdMrrpKdd"l&J5!!(dPmf*7eg]$X@!!(dPmK_JH
-!:K7[!7h&9"6TXagYhK"!87C&~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)Zcrr<&[rqHEm!9F+Q!os=]rqHEm!9F+Q#NPjbp\+mm
-;#48t=nhXj!9F(Prr<&[rqHEm%HR9XbnU3k7r=dN!!)*Zp\t3njSefXj8]2SpBL]Tq"Fgp!)WMo
-!*Spf!!(pV!!(sO!`B#_q"Fi<V<@jP!XA^%qH*`#rqHEm"m#FP!!)*Yp\t3njSnoR!!)*YpBTaZ
-!;H3m!8[VJ"7Q9jjP]b4!87C&~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)ZTrr<&Mroj@^!7q,4!nI>Oroj@^!7q,4#M&kTkia&f
-_tWBp!!(UJkl1V_f)Fn5!!_$<kW/]VjSn?Fg].?*roj@^!7q,4#M&kTkia#e[f#=nV3o]p*WX+D
-kPtV?rr<&WkQ7+O3Vhk@^]4AMroaD)!5nNorr<5Rki`!Hf)=h4!!(ULkl1V_f)=e;ec5^6kTBl6
-rTF@*!!(U.kPtV9s*t~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)ZZrr<&RrpKdd!8IJ?!o!\TrpKdd!8IJ?#MT4Ymd;.s
-aS5-&!!(dOmf*7eg]$X@!!_3GmQ:J`lMg2RiW&u5rpKdd!8IJ?#MT4Ymd;+r]DV($WLVW/*rsCJ
-mJm7Err<&WmK/mY48J:H`;fnWrpBh0!6Fm%rr<5Wmd:&Tg\pR?!!(dQmf*7eg\pOFgAh6AmNDSB
-rU'd5!!(d3mJm7?s*t~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)Zcrr<&[rqHEm!9F+Q!os=]rqHEm!9F+Q#NPjbp\,d1
-chI26!!)*Xp\t3njSnoR!!_NYpHARooD\Idl2UhFrqHEm!9F+Q#NPjbp\,a0_Yj-4YG0tL+99aR
-pAb3Nrr<&WpB%&h4o+gSbQ%Xerq?I:!71B5rr<5`p\+XfjSeiQ!!)*Zp\t3njSefXj8]2SpEBUS
-rV$EF!!)*<pAb3Hs*t~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)ZTrr<&Mroj@^!7q,4!nI>Oroj@^!7q,4#M&kTkic+K
-Hi3(4Qn)S.kPtV6r94.\!7q/5rr<5Rki`3Nci*&0ScAc?roj@^!7q,4#M&kTkic%IE;eu*k90i8
-kZ@h3r9+3L.q%u4!!(pV!!(s@"61I'RJZ1Mk!/o-rTF;b!.4Y-!gkKGroj@^"kMo$!!(UKkl1V_
-f)Fn5!!(UKkQfZ=!9iWM!-J2'",6dUf&5`l!87C&~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)ZZrr<&RrpKdd!8IJ?!o!\TrpKdd!8IJ?#MT4Ymd=9Z
-If/U=S1J1<mJm7Ar9jRb!8IM@rr<5Wmd:;[eG\e;U&Y2HrpKdd!8IJ?#MT4Ymd=0WF8bM3m32PD
-mTT[?r9aWV/7\;>!!(pV!!(sF"6gp.SbqgWlp1V6rU'_k!.Ok6!h:fOrpKdd"l&J5!!(dPmf*7e
-g]$X@!!(dPmK_JH!:K8[!-eD0",R!XgYhK"!87C&~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)Zcrr<&[rqHEm!9F+Q!os=]rqHEm!9F+Q#NPjbp\.to
-KDbHKU+U*QpAb3Sr:g3k!9F.Rrr<5`p\+mmh#6sLW;lqXrqHEm!9F+Q#NPjbp\.klGQ%7@p*0RU
-pKdiPr:^8e/naeM!!(pV!!(sO"7dT8U\jcfogAdDrV$A"!/(4D!hq;[rqHEm"m#FP!!)*Yp\t3n
-jSnoR!!)*YpBTaZ!;H4q!.=b>"-*?]jP]b4!87C&~>
-JcC<$JcC<$JcC<$o)A[i^ZY[\\`a"nhu<ZVo]Z;T!7q/5rr<&MrTF=6!!*#^rr<&MrTFO<!!)6H
-^'"_:roaX$'**RHkPtV6r94.\!7q/5#71CJki`laMZ2fBZP<H?cMm&-!!(UKkQo`>!9iXW!XPk+
-kQl81/El<3":1e%kQAL3!.a\)!!(pV!!(p?"K_e1Ic::i"O]mB$Guc*"24mDU]0HZ]b:Brroj@^
-"kMo$!!(UKkl1V_f)Fn5!!(UKkRZ5E!9iXY!XuX'ken,7!8$/m!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[i^[;*h\aBFthu<ZVo^;_Z!8IM@rr<&RrU'aA!!*#drr<&RrU'sG!!)HT
-_ZU7CrpC'/'EEgSmJm7Ar9jRb!8IM@#71COmd:tnNrJGL\.nuDe,Je8!!(dPmKhPI!:K9g!XQ"/
-mKe":/ai&E":1q)mK:<?!/0t3!!(pV!!(pE"L/(6K'3.$"P?BJ$HN,5"2b6IVuH)d_A!!'rpKdd
-"l&J5!!(dPmf*7eg]$X@!!(dPmLS%P!:K9j!Xud1m`?.C!8QN#!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[i^\7a%\b?((hu<ZVo_8@c!9F.Rrr<&[rV$BS!!*#mrr<&[rV$TY!!)cf
-aoi$Qrq?]?'EF!apAb3Sr:g3k!9F.R#7:IWp\,U,PQ(:Z^D6eLg]$sI!!)*YpB]g[!;H6,!XZ=7
-pBZ*G0),+_":;40pB/MO!/^=A!!(pV!!(pN"LnR=L[Y6:"Q3#T$dS_F"3L`QXoA%saV4`3rqHEm
-"m#FP!!)*Yp\t3njSnoR!!)*YpCH<b!;H6/!Y*-CpWsTS!9N/5!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[ik32[B"9Jr\Ct7_4!k^MDg$&G9!7p5p!!(pV!!)ZTrr<&Mroj@^!7q,4
-!nI>Oroj@^!7q,4!nI>OroaiQ"99rJ3Wf@Rjlkn.!7q)3rr<&MroakL!#\O)G5qY&9e??--iggW
-kl1V_f)=e6ec5^LkQlb@!&RFr!"cpEkR!:Q!%Ui+!rtpSoB6/Shu<ZVhWP<>%0-i':H&FW(:*i$
-$',2h.o/2.!(l;Okl1Vdf');t!7q,4rr<&Mroj@^!7q,4!nI>OroaZ/!!PVU#9X!HgYh8q!87C&~>
-JcC<$JcC<$JcC<$o)A[ik3i*H"9Jr]DqaCB!l6qPg$\k?!8HT&!!(pV!!)ZZrr<&RrpKdd!8IJ?
-!o!\TrpKdd!8IJ?!o!\TrpC8["99uM49GRVlgF0@!8IG>rr<&RrpC:S!#\U-H2mt*:G2]3.0.'\
-mf*7eg\pOAgAh6QmKeLI!&[S!!"m0KmKo'[!%^u0!ru![oBlSYhu<ZVhX1`H%0-i(;)e^Z(:X2/
-$'PJl/5\M3!))YWmf*7jg[=J0!8IJ?rr<&RrpKdd!8IJ?!o!\TrpC)8!!PYX#9a'IiSa,(!87C&~>
-JcC<$JcC<$JcC<$o)A[ik4e`Q"9Ju`F5uHX!m*Rcg%YLH!9E58!!(pV!!)Zcrr<&[rqHEm!9F+Q
-!os=]rqHEm!9F+Q!os=]rq?ni"9:&R4p(dZo_8([!9F(Prr<&[rq?p^!#ed3IfKL1;D8)9.fdQf
-p\t3njSefSj8]2ZpBZZX!&mh(!"mERpBd2i!%q57!ru'foCi4bhu<ZVhY.AW%KHu-<&t0_(V]e@
-$((hq/lY":!)<+bp\t3sjS/BK!9F+Qrr<&[rqHEm!9F+Q!os=]rq?_E!!Pb^#U06Kl/;:9!87C&~>
-JcC<$JcC<$JcC<$o)A[ik32gF!)3Aj"]@i)!#j2IkQ1ecf%K9e!!(U2kPtV?rr<&kkl1V_f)Fn5
-!!(UKkQ9<8!<23^!!(UKkQ9<8!<)*d]2KRN$oX..roj@^!7q)3rr<&Mroam771B;/^PaQF$TF./
-@K:NLkl1V_f)=e6ec5^KkQ\7^&d0(WcMZl2]2KRN$oX..o&p&Rhu<ZVh<5-nF>FF0%5W=aq</'q
-;],`I2NHqukl1Vdf');t!7q,4rr<&Mroj@^!7q,4!nI>OrTFNN0*i+ibl@k-i91.@g&HR~>
-JcC<$JcC<$JcC<$o)A[ik3i6L!)EMn"]S&.!#sJPmK*FigY)#p!!(d7mJm7Err<&kmf*7eg]$X@
-!!(dPmK2,C!<2Ed!!(dPmK2,C!<)<j^Ju-T$oa@9rpKdd!8IG>rr<&RrpC<B7h#M1`/cDQ$TO@:
-AH6rRmf*7eg\pOAgAh6PmKU$j'*K1Ze,8V=^Ju-T$oa@9o'QJXhu<ZVh<kR%G;Kg4%5`Lkq<eL&
-<>brK2j3P+mf*7jg[=J0!8IJ?rr<&RrpKdd!8IJ?!o!\TrU'rX0aJ@odJsC8i9gRFg&HR~>
-JcC<$JcC<$JcC<$o)A[ik4elU!)`_t"]nA4!$'hYpAtBrjOs;-!!)*@pAb3Nrr<&kp\t3njSnoR
-!!)*YpB'CU!<2`m!!)*YpB'CU!<)Wsa&j5`%69dJrqHEm!9F(Prr<&[rq?rS8e(n6bEOR_$p'dK
-B`NP[p\t3njSefSj8]2YpBJ6('*K4_g\gdNa&j5`%69dJo(N+ahu<ZVh=h36HSuE;%Q8q&q=b-7
-=;h>P3LBF;p\t3sjS/BK!9F+Qrr<&[rqHEm!9F+Q!os=]rV$Sg1'nOtg&M6Ii:d3Og&HR~>
-JcC<$JcC<$JcC<$o)A[ik32gF!7q)3"5l?C;X!?E!!(U'kl1V_f&Z#p!8meV!.jA-kPtV?rr<%n
-kl8a)jo+BE`;h%<kPtV9s*t~>
-JcC<$JcC<$JcC<$o)A[ik3i6L!8IG>"6MfJ<9WcM!!(d,mf*7egZ7c&!8meV!.jS3mJm7Err<%n
-mf1Q4li$5Qb5`^CmJm7?s*t~>
-JcC<$JcC<$JcC<$o)A[ik4elU!9F(P"7AJU=6TDY!!)*5p\t3njQ-%8!8meV!.jn<pAb3Nrr<%n
-p]&eEo_nLcdJtKKpAb3Hs*t~>
-JcC<$JcC<$JcC<$o)A[ik32gF!7q&2"2b*EkNV41!!(U'kl1V_f&Z#p!8meV!.jA-kPtV?rr<%n
-kQ5i+DZ8i%i^Wu^hrk%?g&HR~>
-JcC<$JcC<$JcC<$o)A[ik3i6L!8ID="3:HJmHO'=!!(d,mf*7egZ7c&!8meV!.jS3mJm7Err<%n
-mK.S4EW5A.k=GYghsLIEg&HR~>
-JcC<$JcC<$JcC<$o)A[ik4elU!9F%O"4$rRp?D>O!!)*5p\t3njQ-%8!8meV!.jn<pAb3Nrr<%n
-pB#[AFoM+;n4Wh"htI*Ng&HR~>
-JcC<$JcC<$JcC<$o)A[ik32gF!7q&2%-%<fh!!r%!5Ll)&q0cC#/!hN"VaY<rTO+Ys6'[";A]QO
-9XXc]#-gf7";b"UrTFHu;A]QO9XXf^rr<&MjQHRDhu<ZVJ`ugk!!(pV!!&bW$-a%^-r3DM!%6IW
-kPtV9s*t~>
-JcC<$JcC<$JcC<$o)A[ik3i6L!8ID=%-[`lipQ47!6%80'7g)M#/O7U"VjbCrU0O_s6^*-<#>cR
-9tL5i#.@5?";b(]rU'm+<#>cR9tL8jrr<&RjR*!Jhu<ZVJaW7"!!(pV!!&b]$.9Fd.8`_R!%?a^
-mJm7?s*t~>
-JcC<$JcC<$JcC<$o)A[ik4elU!9F%O%.XAulM(#Q!6dk:'8?G[#0Bpa"VjkMrV-0hs7Z`><uD/V
-:r3&'#/*eH";k7hrV$N<<uD/V:r3)(rr<&[jS&WShu<ZVJbSm4!!(pV!!&bf$/-!l.o]4Z!%R0h
-pAb3Hs*t~>
-JcC<$JcC<$JcC<$o)A[ik32gF!7q&2!l"^Groj@^%jMuc+K+GeOotb79eHDILApBI;ZHek;cDnC
-"99oG/cYs-rTFoD!<=]H-iaXbkie04!%L\q!!7oRkl1V_f&Z#p!8meV!.jA-kPtV?rr<%mkQf==
-*sDirFPYg;!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[ik3i6L!8ID=!lP'MrpKdd%jN#f+ft,"Plq(;:G;bMM>loR<<*"o<E8IP
-"99rJ0E;02rU(>N!<=cL.0'ahmd?>C!%Ui!!!8#Umf*7egZ7c&!8meV!.jS3mJm7Err<%mmK_-J
-+9_uuGN7QJ!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[ik4elU!9F%O!m:QTrqHEm%j`2k,-pt;Rfi^C;DA.QNrJb`=9&=u=BP<e
-"9:#O0`V98rV$t\!<=fP.f^!rp\1-[!%h)'!!82Zp\t3njQ-%8!8meV!.jn<pAb3Nrr<%mpBTA_
-+U&*#HgBP_!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[ik32gF!7q)3"5#X7@/fBi!!t:9ki_-m_#jb&roaHV"Tl"/kl1Vef')>6
-!s4\ckR!jb!j_%R[fHZ+roaT+!%[9L!s4\ckQ@F\!j_ghrr<&MjQHRDhu<ZVJ`ugk!!(pV!!%T6
-p?2JVg&HR~>
-JcC<$JcC<$JcC<$o)A[ik3i6L!8IG>"5Q'>A,bor!!t@Amd9E0`WH:/rpBl`"p2:5mf*7kg[=LL
-!s4hgmKoWm!k7Uc]E&55rpC#4!%dQX!s4hgmK93g!k80srr<&RjR*!Jhu<ZVJaW7"!!(pV!!%T<
-p?hn\g&HR~>
-JcC<$JcC<$JcC<$o)A[ik4elU!9F(P"6McIBE%Z*!!tCJp\+=Tbl\$<rq?Mp"p2O<p\t3tjS/Dn
-!s5%mpBdi(!l"F'_Z9tBrq?YA!&"#j!s5%mpB.E"!l"[.rr<&[jS&WShu<ZVJbSm4!!(pV!!%TE
-p@eOeg&HR~>
-JcC<$JcC<$JcC<$o)A[ik32gF!)3Aj"].5c!%$=tkl1V_P5OMF=o_t.kQ5c)8,h`P!!Us;kZRso
-r9+B+!(Z8:<WHn5kQ^*!37h=6@/T3iEWAW/kl1V_f&Z#p!8meV!.jA-kPtV?rr<%Mkk=3?!87C&~>
-JcC<$JcC<$JcC<$o)A[ik3i6L!)EMn"]@Gg!%-V&mf*7eQMg.P>QA:3mK.M28cJ/X!!V-FmT]a%
-r9af4!(lVH=TE=;mKVr.3S[j>A,P`rFT>#4mf*7egZ7c&!8meV!.jS3mJm7Err<%Mme6&K!87C&~>
-JcC<$JcC<$JcC<$o)A[ik4elU!)`_t"][_m!%@%0p\t3nSG`*_?iXj;pB#U?9`Fed!!VHXpL!u6
-r:^GA!)3.]>QAdBpBL4A469iMBDhK*GlUP;p\t3njQ-%8!8meV!.jn<pAb3Nrr<%Mp\+=]!87C&~>
-JcC<$JcC<$JcC<$o)A[ik32[B"9K)iH//A^rr<&9r9+2)!3uIc!lP'Iroj@^"kMo$+98\EkQf$+%
--Zms!4;Rc![%KJr9+4#!"Akjrr<&MjQHRDhu<ZVJ`ugk!!(pV!!%T6p?2JVg&HR~>
-JcC<$JcC<$JcC<$o)A[ik3i*H"9K,kI,b+mrr<&>r9aV0!4Mgn!m(ENrpKdd"l&J5+TStKmK^i6%
-.<O+!4hpn![.QPr9aX.!"Akprr<&RjR*!Jhu<ZVJaW7"!!(pV!!%T<p?hn\g&HR~>
-JcC<$JcC<$JcC<$o)A[ik4e`Q"9K,mJa34.rr<&Er:^7:!58=)!mgoVrqHEm"m#FP+oo=SpBT%F%
-JTT?!5SF)![7WXr:^9>!"Jr%rr<&[jS&WShu<ZVJbSm4!!(pV!!%TEp@eOeg&HR~>
-JcC<$JcC<$JcC<$o)A[ik32gF!7pi,rr<&Kr9+1f!71T,%H@Egh<=&&!7pAt#QW3KkQg,J!8ZiB
-!71K)!XJePr9+FH!!(j=kPtV6jQHRDhu<ZVJ`ugk!!(pV!!%T6p?2JVg&HR~>
-JcC<$JcC<$JcC<$o)A[ik3i6L!8I27rr<&Pr9aUl!7h#8%Hmclj6l=8!8Hr0#QWEQmK_qU!9<JO
-!7go5!XJeVr9ajS!!)'ImJm7AjR*!Jhu<ZVJaW7"!!(pV!!%T<p?hn\g&HR~>
-JcC<$JcC<$JcC<$o)A[ik4elU!9EhIrr<&Yr:^7!!8[SI%IjDulhC,R!9EnK#lrfZpBU3g!:0@`
-!8[JF!XSk_r:^Ke!!)?ZpAb3SjS&WShu<ZVJbSm4!!(pV!!%TEp@eOeg&HR~>
-JcC<$JcC<$JcC<$o)A[ik32gF!7pi,rr<&Mr9+1e!71T,%H%3dh<=&&!7pAt#6<*JkQg#G!8ZiC
-!7:Q*!XA_Or9+FE!!(j=kPtV6jQHRDhu<ZVJ`ugk!!(pV!!%T6p?2JVg&HR~>
-JcC<$JcC<$JcC<$o)A[ik3i6L!8I27rr<&Rr9aUk!7h#8%H[Wjj6l=8!8Hr0#6<<PmK_kS!9<JP
-!7pu6!XA_Ur9ajQ!!)'ImJm7AjR*!Jhu<ZVJaW7"!!(pV!!%T<p?hn\g&HR~>
-JcC<$JcC<$JcC<$o)A[ik4elU!9EhIrr<&[r:^6u!8[SI%IO2rlhC,R!9EnK#QW]YpBU*d!:0@a
-!8dPG!XJe^r:^Kb!!)?ZpAb3SjS&WShu<ZVJbSm4!!(pV!!%TEp@eOeg&HR~>
-JcC<$JcC<$JcC<$o)A[ik32gF!7pi,rr<&Mr9+2(!3uIc!l4jFroj@^"kMo$*rrSDkQep(%-Zmq
-!4Mgh"f7U7*rrSDkQ8R#%0#Jj!!(U2kPtV?rr<%Mkk=3?!8meV!.jA-kPtV9s*t~>
-JcC<$JcC<$JcC<$o)A[ik3i6L!8I27rr<&Rr9aV/!4Mgn!lb3KrpKdd"l&J5+98kJmK^`3%.<O)
-!5&0s"f\$E+98kJmK1B.%0#\p!!(d7mJm7Err<%Mme6&K!8meV!.jS3mJm7?s*t~>
-JcC<$JcC<$JcC<$o)A[ik4elU!9EhIrr<&[r:^79!58=)!mL]SrqHEm"m#FP+TT4RpBSqC%JTT=
-!5e[."g=ZY+TT4RpB&S>%K?,%!!)*@pAb3Nrr<%Mp\+=]!8meV!.jn<pAb3Hs*t~>
-JcC<$JcC<$JcC<$o)A[ik32gF!7pi,rr<&Mr9+2b!+Pli!c\3,roj@^"kMo$=TDq/kQc)-6KmW6
-!-%o##3R-0\6/f@r9+3%!(-\Krr<&MjQHRDhu<ZVJ`ugk!!(pV!!%T6p?2JVg&HR~>
-JcC<$JcC<$JcC<$o)A[ik3i6L!8I27rr<&Rr9aVj!+l)r!d"E0rpKdd"l&J5>6&74mK[h66gjAE
-!-A,,#43T7]itJJr9aW.!(6bRrr<&RjR*!Jhu<ZVJaW7"!!(pV!!%T<p?hn\g&HR~>
-JcC<$JcC<$JcC<$o)A[ik4elU!9EhIrr<&[r:^8"!,;B*!dF]7rqHEm"m#FP?N=g<pBPpC7ecX]
-!-eD9#508A`*WLYr:^8;!(Qt^rr<&[jS&WShu<ZVJbSm4!!(pV!!%TEp@eOeg&HR~>
-JcC<$JcC<$JcC<$o)A[ik32gF!7pi,rr<&Mr9+6s"9XthkQ@O`!3,t]#RLLKkif_`".&rM$).V(
-WT`QV!XPk+kQc20/EjeN".&rM"/5u"WW),]!!(U2kPtV?rr<&6kQ'eVkPtV?rr<&6kQ'eVkPtV9
-s*t~>
-JcC<$JcC<$JcC<$o)A[ik3i6L!8I27rr<&Rr9a[)"9Y+lmK9<k!3Z=h#RLLPmd@sq".K5W$)Rq-
-Y3t_k!XQ"/mK[q9/agLZ".K5W"/Z;'Y5[kh!!(d7mJm7Err<&6mJuXbmJm7Err<&6mJuXbmJm7?
-s*t~>
-JcC<$JcC<$JcC<$o)A[ik4elU!9EhIrr<&[r:^<9"9Y=rpB.K%!4;b"#RURXp\2f5"/,Yf$*4@3
-[.j=6!XZ=7pBQ$F0)*Kk"/,Yf"0;_-[/Th"!!)*@pAb3Nrr<&6pAjotpAb3Nrr<&6pAjotpAb3H
-s*t~>
-JcC<$JcC<$JcC<$o)A[ik32gF!7pi,rr<&Mqre<H!rsiH0E;-"rTF_J!#\O)hN%a=.o%bu!IF_.
-'7p5b1eo:r&ARGmNroA4:+uYKHN!(-!!(U2kPtV?rr<&]kkb>_!XgJoe`Z,t]K"Krkl1V_f&Pro
-!8meV!9WMB!!E?2.W!YukQ8CVf%T?f!!(U1kPtV9s*t~>
-JcC<$JcC<$JcC<$o)A[ik3i6L!8I27rr<&RqsF`R!rslK0`V6&rU(.Q!#\U-jHBZG/5S&$!Iaq7
-'86Ge2,GS!&]F,*P61e9:b_qNIJrU6!!(d7mJm7Err<&]meZte!XgMsg?7l*_)g?)mf*7egZ.]%
-!8meV!9W_H!!E?2.rX/)mK13cgY2)q!!(d6mJm7?s*t~>
-JcC<$JcC<$JcC<$o)A[ik4elU!9EhIrr<&[qtCA`!rsrP1B7H-rV$d\!#ed3m$IkT/lOP+!J::E
-'8lkk2cD((&^0qCQid=@;_nCSK)PHD!!)*@pAb3Nrr<&]p\Opn!XpZ%j6-.<aZSY<p\t3njQ#t7
-!8meV!9X%Q!!E?3/T]t8pB&H!jP'A.!!)*?pAb3Hs*t~>
-JcC<$JcC<$JcC<$o)A[ik32gF!7pi,rr<&MqWJ-p:DO'H9XFZ\%EV$J!Y<'0\ka(E'25b0kQ\7^
-&d0(WcMcr2\ka(E'25b1kl1V_f&Z#p!8meV!9WMF!!#^l;[$&h'EB&tki`'L!7olfrr<&Mj6-IC
-hu<ZVk32gF!)3Aj"]@i)!#j2IkQ1ecf%T?f!!(U1kPtV9s*t~>
-JcC<$JcC<$JcC<$o)A[ik3i6L!8I27rr<&RqX+R%;&09K9t:,h%F.HQ!Y<6;^/5XK'MZ+7mKU$j
-'*K1Ze,A\=^/5XK'MZ+8mf*7egZ7c&!8meV!9W_L!!#dn<<Z>n'`]3'kjAKR!8H5qrr<&Rj6cmI
-hu<ZVk3i6L!)EMn"]S&.!#sJPmK*FigY2)q!!(d6mJm7?s*t~>
-JcC<$JcC<$JcC<$o)A[ik4elU!9EhIrr<&[qY(36<#5ZO:qur&%G",]!YEQL``*`W'MuRApBJ6(
-'*K4_g\pjN``*`W'MuRBp\t3njQ-%8!8meV!9X%U!!#mq=9Vc"'`]60kk>,[!9Dl.rr<&[j7`NR
-hu<ZVk4elU!)`_t"]nA4!$'hYpAtBrjP'A.!!)*?pAb3Hs*t~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)0Frr<&Mr9+7@4oeLEkl1V_f%T?f!!(U1kPtV?rr<&]
-kl1V_f)4_6i'%-=kii$H!7olfrr<&Mj6-ICg&HR~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)0Lrr<&Rr9a[L56+[Hmf*7egY2)q!!(d6mJm7Err<&]
-mf*7eg\gIAk!&iFkjJHN!8H5qrr<&Rj6cmIg&HR~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)0Urr<&[r:^<]63(*Np\t3njP'A.!!)*?pAb3Nrr<&]
-p\t3njS\`SmQpnTkkG)W!9Dl.rr<&[j7`NRg&HR~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)0Frr<&Mqre."!!qcPkl1V_f%T?f!!(U1kPtV?rr<&]
-kl1V_f)+Y5_Z0u*l0/-I!7olfrr<&Mj6-ICg&HR~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)0Lrr<&RqsFR-!!quVmf*7egY2)q!!(d6mJm7Err<&]
-mf*7eg\^C@a8cM5l0eQO!8H5qrr<&Rj6cmIg&HR~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)0Urr<&[qtC3=!"&A`p\t3njP'A.!!)*?pAb3Nrr<&]
-p\t3njSSZRcN":Fl1b2X!9Dl.rr<&[j7`NRg&HR~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)0Frr<&MqreIK!!(g<kPtUu5m@sMroaR!;A]QO9XXi_
-qZ-Z[#/!hN"VaY<qre6h9+qFE;oS_!#/!hN"VaY<rTO7]!7p2o!!(pV!!)0Frr<&MqreIK!!(g<
-kPtUu5m@sMroaR!;A]QO9XXi_qZ$lb]M]RM'MPq2kQ\:b'*K+M`Vo!)]M]RM'MPq5kl1V_f&Pro
-!87C&~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)0Lrr<&RqsFmW!!)$HmJm7+63e0SrpC!,<#>cR9tL;k
-qZ-Za#/O7U"VjbCqsFZs9b[^H<Qk@/#/O7U"VjbCrU0[c!8HQ%!!(pV!!)0Lrr<&RqsFmW!!)$H
-mJm7+63e0SrpC!,<#>cR9tL;kqZ$lh_,M6T'hu:9mKU*o'Ef4PbPgi5_,M6T'hu:<mf*7egZ.]%
-!87C&~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)0Urr<&[qtCNi!!)<YpAb3;70aK[rq?W=<uD/V:r3,)
-qZ-Zj#0Bpa"VjkMqtC<.:D<pK=OR0B#0Bpa"VjkMrV-<l!9E27!!(pV!!)0Urr<&[qtCNi!!)<Y
-pAb3;70aK[rq?W=<uD/V:r3,)qZ$lqa]B>`'i;aCpBJ<,'Ef7Tdf&nEa]B>`'i;aFp\t3njQ#t7
-!87C&~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)0Frr<&Mqre*r!"](mrr<QS)G;3Nkie04!%L\q!!7oS
-kRUSl!)-<ik`Q&K.SVMq!f$[;'7Kr^/P[\o$b5EaOotb79eHDILApE:!!(U1kPtV?rr<&]kl1V_
-f)+Y4^AnfDkl1Vn,8s2tVs*?-"99oG/cYs-roahj!!#\k;j%7`.SVMq!f$X:'7Kr^/P[\o$b5Ea
-Ootb79eHDILApE:!!(U1kPtV9s*t~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)0Lrr<&RqsFO(!"f.trr<QS)bhKWmd?>C!%Ui!!!8#V
-mLN:t!)?NomZdnT.o.i!!f?mD'7p5b02O(t$bburPlq(;:G;bMM>lrC!!(d6mJm7Err<&]mf*7e
-g\^C?_uLAJmf*7t,9'?#XR>MA"99rJ0E;02rpC7r!!#bo<L![e.o.i!!f?jC'7p5b02O(t$bbur
-Plq(;:G;bMM>lrC!!(d6mJm7?s*t~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)0Urr<&[qtC08!"f/(rr<QU*)@cap\1-[!%h)'!!82[
-pCC@+!)Zj#pR;9c/Q+;'!fm6R'8HSg0N0J%%)ho7Rfi^C;DA.QNrJeQ!!)*?pAb3Nrr<&]p\t3n
-jSSZQb5`+Qp\t4(,of])ZM4*_"9:#O0`V98rq?n)!!#ku=ITEn/Q+;'!fm3Q'8HSg0N0J%%)ho7
-Rfi^C;DA.QNrJeQ!!)*?pAb3Hs*t~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)0Frr<&Mr9+783WNRekl1Vh0&YsVkNK_a!gEWI".o_u
-ZMs(f!!_$<keR?&PQ'bPT*5;%kifJV"ekqZ#B0YnkeR?&PQ'bOT*5;%ki`!Hf&Pro!8meV!9WMF
-!!(UJkQBHu!+>firr<?Xi99@ekeR?&PQ'bJT*5;%roj@^"kMnR!s4\ckQ@F\!j_gh"1J:7U&O6\
-Du_EP_#jb&roaW["Tl!nkPtV6j6-ICg&HR~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)0Lrr<&Rr9a[C49/mjmf*7n0]qfjmI%sr!gioS"/?&%
-\,Pgq!!_3Gm`#>1Qi?CZUBUe/md@^g#,V=e#BKkrm`#>1Qi?CYUBUe/md:&TgZ.]%!8meV!9W_L
-!!(dOmK;9-!+Z#rrr<?Zk3hX(m`#>1Qi?CTUBUe/rpKdd"l&Ib!s4hgmK93g!k80s"2"X=V>flf
-Er[cZ`WH:/rpC&e"p2:%mJm7Aj6cmIg&HR~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)0Urr<&[r:^<U4of6pp\t4"1%+f0p@lf6!hK>b"0)P,
-^Adm,!!_NYpWWdASc8?iWWiO=p\2Q+#-7at#Bp/#pWWdASc8?hWWiO=p\+XfjQ#t7!8meV!9X%U
-!!)*XpB0PA!,)<*rr<?[me?GKpWWdASc8?cWWiO=rqHEm"m#F&!s5%mpB.E"!l"[."2b-DX8_hu
-G5s8ibl\$<rq?\u"p2O5pAb3Sj7`NRg&HR~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)0Frr<$mr_its3X>^3g&C48!!&2[kQ4of@/T3iEWAW/
-kl1Vdf')=$!+>`g#BBf7kic%ICAm?#j=E:B=o_t.kQc,.8*K.:!7p2o!!(pV!!)0Frr<$mr_its
-3X>^3g&C48!!&2[kQ4of@/T3iEWAW/kl1Vcf'$9;@/T3iEWAW/kQ4cbCAm?#j=E:B=o_t.kQc,.
-8*K.:!7p2o!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)0Lrr<$or`',"49tp6hu<'D!!&>_mK-VnA,P`rFT>#4
-mf*7jg[=K7!+Yrp#B^#<md=3XD>il,l7G$O>QA:3mK[k78ac!H!8HQ%!!(pV!!)0Lrr<$or`',"
-49tp6hu<'D!!&>_mK-VnA,P`rFT>#4mf*7ig[8;HA,P`rFT>#4mK-MkD>il,l7G$O>QA:3mK[k7
-8ac!H!8HQ%!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)0Urr<$rr`B>(4p_3;kPk5U!!&PepB"_&BDhK*GlUP;
-p\t3sjS/CV!,)6(#C-;Cp\.nmEW,V9o.E,d?iXj;pBPsD9_\8]!9E27!!(pV!!)0Urr<$rr`B>(
-4p_3;kPk5U!!&PepB"_&BDhK*GlUP;p\t3rjS*$^BDhK*GlUP;pB"S"EW,V9o.E,d?iXj;pBPsD
-9_\8]!9E27!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)0FqZ$a#%l8LdrTO7]!5eZt![%KJr9+4#!"Akjrr<5R
-kia,hZ2Eej_uL50kT9f3q<.l&!3uIc#K-TNki`!Hf&Pro!8meV!9WMB!!E?61O7dSkl1V__YiU!
-+98\EkQ8[&%0#Jj!!Lm:+98\EkQ8[&%0#Gl*rr\DkQ2k,Z2Eej_uL50kPtV6j6-ICg&HR~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)0LqZ$a#&2\dorU0[c!6>$*![.QPr9aX.!"Akprr<5W
-md;4u[f#OuaT)b;mN;M?q<e;-!4Mgn#KZrSmd:&TgZ.]%!8meV!9W_H!!E?71jn<]mf*7ea8G?,
-+TStKmK1K1%0#\p!!M'E+TStKmK1K1%0#Yr+98tJmK+O3[f#OuaT)b;mJm7Aj6cmIg&HR~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)0UqZ$a#&2o+)rV-<l!7(N:![7WXr:^9>!"Jr%rr<5`
-p\,j3^&7U0ci=OLpE9OPq=aq7!58=)#LEG[p\+XfjQ#t7!8meV!9X%Q!!E?72M(/lp\t3ncM[D<
-+oo=SpB&\A%K?,%!!MBW+oo=SpB&\A%K?)'+TT=RpAuN=^&7U0ci=OLpAb3Sj7`NRg&HR~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)0Frr<&Mp#uDU!7^r1!XJePr9+UM!!(j=kPtV6ki`9P
-chuu3irB)8kQLt4q<.kc!71T,#NGdah<4h=f&Pro!8meV!9WMF!!(UCkl1V_eGSM3#QW3KkR?JO
-!8Zl&!!(U6#QW3KkQp2K!8Zl&"TZmEkQ2"ichuu3irB)8kPtV6j6-ICg&HR~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)0Lrr<&Rp$Vh[!87;<!XJeVr9b$X!!)'ImJm7Amd:>\
-ebnh?kPtVCmKN[Aq<e:i!7h#8#Nu-fj6cmIgZ.]%!8meV!9W_L!!(dHmf*7eg&17>#QWEQmL8:Z
-!9<M8!!(dA#QWEQmKi"V!9<M8"p!3LmK*Xoebnh?kPtVCmJm7Aj6cmIg&HR~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)0Urr<&[p%SId!93qN!XSk_r:^Zj!!)?ZpAb3Sp\+so
-h>I!PnGiRTpBCWRq=aps!8[SI#Oqcolh:AZjQ#t7!8meV!9X%U!!)*Qp\t3nir&NP#lrfZpC-Ql
-!:0CR!!)*S#lrfZpB^9h!:0CR"p!KTpAtX$h>I!PnGiRTpAb3Sj7`NRg&HR~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)0Frr<&Mp#uDU!7q)3!XA_Or9+UJ!!(j=kPtV6ki`6O
-chuu3huEc5kQV%6q<.kb!71T,#N,R^h<4h=f&Pro!8meV!9WMF!!(UCkl1V_f)4_5#6<*JkR?AL
-!8Zl&!!(U6#6<*JkQp)H!8Zl&"p!$GkQ1thchuu3huEc5kPtV6j6-ICg&HR~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)0Lrr<&Rp$Vh[!8IG>!XA_Ur9b$V!!)'ImJm7Amd:;[
-ebnh?jo>DAmKWaCq<e:h!7h#8#Nc!dj6cmIgZ.]%!8meV!9W_L!!(dHmf*7eg\gI@#6<<PmL84X
-!9<M8!!(dA#6<<PmKhqT!9<M8#6<?NmK*Unebnh?jo>DAmJm7Aj6cmIg&HR~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)0Urr<&[p%SId!9F(P!XJe^r:^Zg!!)?ZpAb3Sp\+pn
-h>I!PmJm7QpBL]Tq=apr!8[SI#OVQllh:AZjQ#t7!8meV!9X%U!!)*Qp\t3njS\`R#QW]YpC-Hi
-!:0CR!!)*S#QW]YpB^0e!:0CR#6<WVpAtU#h>I!PmJm7QpAb3Sj7`NRg&HR~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)0Frr<&Mp#uDU!7q)3!ZqEIr9+3u!"Akjrr<5Rkia)g
-Z2Eej_#Oo-kT'Z3r9+<\R*m&VZ2Eej_#Oo-kPtV6j6-IChu<ZVk32gF!7pi,rr<&Mr9+2(!3uIc
-!l4jFroj@^"P2cY!3uIc!l4jFroaD(!4Mgh"f7U7*rrSDkQep(%-ZmT!7p2o!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)0Lrr<&Rp$Vh[!8IG>![%KOr9aX+!"Akprr<5Wmd;1t
-[f#Ou`W-G8mN)A?r9a`fSCeqa[f#Ou`W-G8mJm7Aj6cmIhu<ZVk3i6L!8I27rr<&Rr9aV/!4Mgn
-!lb3KrpKdd"P`>e!4Mgn!lb3KrpBh/!5&0s"f\$E+98kJmK^`3%.<N`!8HQ%!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)0Urr<&[p%SId!9F(P![.QWr:^9;!"Jr%rr<5`p\,g2
-^&7U0blA4IpE'CPr:^AuU>R0p^&7U0blA4IpAb3Sj7`NRhu<ZVk4elU!9EhIrr<&[r:^79!58=)
-!mL]SrqHEm"Q];#!58=)!mL]Srq?I9!5e[."g=ZY+TT4RpBSqC%JTSs!9E27!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)0Frr<&Mp#uDU!7q)3!a,M4r9+3%!(-\Krr<5Rkic.L
-@f5EpE<&>hkZ.\&rTFIK+TT#T!+Pli#B9`1ki`!Hf&Pro!8meV!9WMF!!(UCkl1V_f)4_5=TDq/
-kQ5`(6N63K!!Lm:=TDq/kQ5`(6N60M<WI+;kQ^2n!4Z/3@f5EpE<&>hkPtV6j6-ICg&HR~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)0Lrr<&Rp$Vh[!8IG>!a>Y9r9aW.!(6bRrr<5Wmd=9Z
-Ac1s$F9"\rmT9I1rU'mW+oo;\!+l)r#BTr5md:&TgZ.]%!8meV!9W_L!!(dHmf*7eg\gI@>6&74
-mK.J16iQNR!!M'E>6&74mK.J16iQKT=9*F@mKW&&!52S:Ac1s$F9"\rmJm7Aj6cmIg&HR~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)0Urr<&[p%SId!9F(P!abqAr:^8;!(Qt^rr<5`p\/"p
-C&I]1GQ:5-pKIWArV$Ni,65Yh!,;B*#C$5<p\+XfjQ#t7!8meV!9X%U!!)*Qp\t3njS\`R?N=g<
-pB#R>7fN/^!!MBW?N=g<pB#R>7fN,`>6&mGpBL=9!5r4EC&I]1GQ:5-pAb3Sj7`NRg&HR~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)0Frr<&Mp#uDU!7q)3"24m?QN$(MU':UsroaUo!5n$a
-^'"P(roaZ_"otXdkd^a#X8_;fF9!lU^'"P(roaW^"otXdkPtV6j6-IChu<ZVk32gF!7pi,rr<&M
-r9+6s"9XthkQ@O`!3,t]#71CJke70%QN$(MU':UsroaHp!XPk+kQc20/EjeN".&rM#bhM'WT`OG
-!7p2o!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)0Lrr<&Rp$Vh[!8IG>"2b6DRf;^WV?[+(rpC$u!6FTr
-_ZU(1rpC)i#6:ppm_&Z-YQ!qpG5s5__ZU(1rpC&h#6:ppmJm7Aj6cmIhu<ZVk3i6L!8I27rr<&R
-r9a[)"9Y+lmK9<k!3Z=h#71COm_]/0Rf;^WV?[+(rpBm%!XQ"/mK[q9/agLZ".K5W#c7h,Y3t]X
-!8HQ%!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)0Urr<&[p%SId!9F(P"3L`KT`4ZfX9Sa4rq?[*!71E6
-aohg>rq?`##6;.*pVd1?[f6"+HN5\maohg>rq?]"#6;.*pAb3Sj7`NRhu<ZVk4elU!9EhIrr<&[
-r:^<9"9Y=rpB.K%!4;b"#7:IWpW<U@T`4ZfX9Sa4rq?N6!XZ=7pBQ$F0)*Kk"/,Yf#cn72[.j:p
-!9E27!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)0Frr<&Mp#uDU!7q&2#`f&f.o%bu!IF_.%Q"/':.sH)
-!rsiH0E;-"rTFoH!<=rO,QJCjkie'0!%Ueu!!.EFkl1V_f&Pro!8meV!9WMF!!(UCkl1V_f)+Y:
-NroA4:+uYKHN!%:1]SCg98*HJ.o%bu!IF\-'7p5b1eo:r&ARGmNroA4:+uYKHN*..!!(U1kPtV9
-s*t~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)0Lrr<&Rp$Vh[!8ID=#a5>j/5S&$!Iaq7%Q+5(:eg#7
-!rslK0`V6&rU(>Q!<=uR,leOqmd?8@!%^r$!!.NImf*7egZ.]%!8meV!9W_L!!(dHmf*7eg\^CE
-P61e9:b_qNIJrRC2#nLj9o&lO/5S&$!Ian6'86Ge2,GS!&]F,*P61e9:b_qNIK&[7!!(d6mJm7?
-s*t~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)0Urr<&[p%SId!9F%O#ab\o/lOP+!J::E%Q=A+;bubI
-!rsrP1B7H-rV$t`!<>&W-NFb%p\1$W!%q2+!!.]Np\t3njQ#t7!8meV!9X%U!!)*Qp\t3njSSZW
-Qid=@;_nCSK)PEQ2ZOap:Q5GV/lOP+!J:7D'8lkk2cD((&^0qCQid=@;_nCSK)YNE!!)*?pAb3H
-s*t~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)0Frr<&Mp#uDU!7q#1#.dSG";=J8r9+U371B;/^Z`7)
-('G:EZhrqjYXfB0)-kJckQ\Uo('G:EZi0+f!!(U1kPtV?rr<&]kl1V_f(J8,!!(UHkQ\Uo('G:E
-Zi'"qa[HX?&&5\O('G:EZhikiYXfB0)-kJckQ\Uo('G:EZi0+f!!(U1kPtV9s*t~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)0Lrr<&Rp$Vh[!8IA<#/3qM";FS?r9b$>7h#M1`9t?:
-('G=G\GP[uZq:u7).(ejmKUC&('G=G\Gbjq!!(d6mJm7Err<&]mf*7eg\("7!!(dMmKUC&('G=G
-\GYb'c:8<F&&c1Z('G=G\GGUtZq:u7).(ejmKUC&('G=G\Gbjq!!(d6mJm7?s*t~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)0Urr<&[p%SId!9F"N#0'UY";F\Ir:^ZO8e(n6bP0"U
-(BbFK^\da0]1iqA)IhJ"pBJW:(BbFK^]!p,!!)*?pAb3Nrr<&]p\t3njRr9I!!)*VpBJW:(BbFK
-^\mg7ek-DR&Bi'm(BbFK^\[[/]1iqA)IhJ"pBJW:(BbFK^]!p,!!)*?pAb3Hs*t~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu<ZVJ`ugk!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T<p?hn\hu<ZVJaW7"!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu<ZVJbSm4!!(^PJ,~>
-JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pVJH5<BhuA6-oDmSEJ,~>
-JcC<$JcC<$JcC<$o)A[iJaW7"!!(pVJH5<BhuA6-oDmSEJ,~>
-JcC<$JcC<$JcC<$o)A[iJbSm4!!(pVJH5<BhuA6-oDmSEJ,~>
-JcC<$JcC<$JcC<$o)F7@oDjIBJcC<$qu;0~>
-JcC<$JcC<$JcC<$o)F7@oDjIBJcC<$qu;0~>
-JcC<$JcC<$JcC<$o)F7@oDjIBJcC<$qu;0~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-JcC<$JcC<$JcC<$JcC<$JcC<$huA3~>
-%%EndData
-showpage
-%%Trailer
-end
-%%EOF
diff --git a/doc/user/semaphore_attributes.png b/doc/user/semaphore_attributes.png
deleted file mode 100644
index 7a12ead8e3..0000000000
--- a/doc/user/semaphore_attributes.png
+++ /dev/null
Binary files differ
diff --git a/doc/user/signal.t b/doc/user/signal.t
deleted file mode 100644
index cca162b1e3..0000000000
--- a/doc/user/signal.t
+++ /dev/null
@@ -1,387 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Signal Manager
-
-@cindex signals
-
-@section Introduction
-
-The signal manager provides the capabilities required
-for asynchronous communication. The directives provided by the
-signal manager are:
-
-@itemize @bullet
-@item @code{@value{DIRPREFIX}signal_catch} - Establish an ASR
-@item @code{@value{DIRPREFIX}signal_send} - Send signal set to a task
-@end itemize
-
-@section Background
-
-@subsection Signal Manager Definitions
-
-@cindex asynchronous signal routine
-@cindex ASR
-
-The signal manager allows a task to optionally define
-an asynchronous signal routine (ASR). An ASR is to a task what
-an ISR is to an application's set of tasks. When the processor
-is interrupted, the execution of an application is also
-interrupted and an ISR is given control. Similarly, when a
-signal is sent to a task, that task's execution path will be
-"interrupted" by the ASR. Sending a signal to a task has no
-effect on the receiving task's current execution state.
-
-@findex rtems_signal_set
-
-A signal flag is used by a task (or ISR) to inform
-another task of the occurrence of a significant situation.
-Thirty-two signal flags are associated with each task. A
-collection of one or more signals is referred to as a signal
-set. The data type @code{@value{DIRPREFIX}signal_set}
-is used to manipulate signal sets.
-
-A signal set is posted when it is directed (or sent) to a
-task. A pending signal is a signal that has been sent to a task
-with a valid ASR, but has not been processed by that task's ASR.
-
-
-@subsection A Comparison of ASRs and ISRs
-
-@cindex ASR vs. ISR
-@cindex ISR vs. ASR
-
-The format of an ASR is similar to that of an ISR
-with the following exceptions:
-
-@itemize @bullet
-@item ISRs are scheduled by the processor hardware. ASRs are
-scheduled by RTEMS.
-
-@item ISRs do not execute in the context of a task and may
-invoke only a subset of directives. ASRs execute in the context
-of a task and may execute any directive.
-
-@item When an ISR is invoked, it is passed the vector number
-as its argument. When an ASR is invoked, it is passed the
-signal set as its argument.
-
-@item An ASR has a task mode which can be different from that
-of the task. An ISR does not execute as a task and, as a
-result, does not have a task mode.
-@end itemize
-
-@subsection Building a Signal Set
-
-@cindex signal set, building
-
-A signal set is built by a bitwise OR of the desired
-signals. The set of valid signals is @code{@value{RPREFIX}SIGNAL_0} through
-@code{@value{RPREFIX}SIGNAL_31}. If a signal is not explicitly specified in the
-signal set, then it is not present. Signal values are
-specifically designed to be mutually exclusive, therefore
-bitwise OR and addition operations are equivalent as long as
-each signal appears exactly once in the component list.
-
-This example demonstrates the signal parameter used
-when sending the signal set consisting of
-@code{@value{RPREFIX}SIGNAL_6},
-@code{@value{RPREFIX}SIGNAL_15}, and
-@code{@value{RPREFIX}SIGNAL_31}. The signal parameter provided
-to the @code{@value{DIRPREFIX}signal_send} directive should be
-@code{@value{RPREFIX}SIGNAL_6 @value{OR}
-@value{RPREFIX}SIGNAL_15 @value{OR} @value{RPREFIX}SIGNAL_31}.
-
-@subsection Building an ASR Mode
-
-@cindex ASR mode, building
-
-In general, an ASR's mode is built by a bitwise OR of
-the desired mode components. The set of valid mode components
-is the same as those allowed with the task_create and task_mode
-directives. A complete list of mode options is provided in the
-following table:
-
-@itemize @bullet
-@item @code{@value{RPREFIX}PREEMPT} is masked by
-@code{@value{RPREFIX}PREEMPT_MASK} and enables preemption
-
-@item @code{@value{RPREFIX}NO_PREEMPT} is masked by
-@code{@value{RPREFIX}PREEMPT_MASK} and disables preemption
-
-@item @code{@value{RPREFIX}NO_TIMESLICE} is masked by
-@code{@value{RPREFIX}TIMESLICE_MASK} and disables timeslicing
-
-@item @code{@value{RPREFIX}TIMESLICE} is masked by
-@code{@value{RPREFIX}TIMESLICE_MASK} and enables timeslicing
-
-@item @code{@value{RPREFIX}ASR} is masked by
-@code{@value{RPREFIX}ASR_MASK} and enables ASR processing
-
-@item @code{@value{RPREFIX}NO_ASR} is masked by
-@code{@value{RPREFIX}ASR_MASK} and disables ASR processing
-
-@item @code{@value{RPREFIX}INTERRUPT_LEVEL(0)} is masked by
-@code{@value{RPREFIX}INTERRUPT_MASK} and enables all interrupts
-
-@item @code{@value{RPREFIX}INTERRUPT_LEVEL(n)} is masked by
-@code{@value{RPREFIX}INTERRUPT_MASK} and sets interrupts level n
-@end itemize
-
-Mode values are specifically designed to be mutually
-exclusive, therefore bitwise OR and addition operations are
-equivalent as long as each mode appears exactly once in the
-component list. A mode component listed as a default is not
-required to appear in the mode list, although it is a good
-programming practice to specify default components. If all
-defaults are desired, the mode DEFAULT_MODES should be specified
-on this call.
-
-This example demonstrates the mode parameter used
-with the @code{@value{DIRPREFIX}signal_catch}
-to establish an ASR which executes at
-interrupt level three and is non-preemptible. The mode should
-be set to
-@code{@value{RPREFIX}INTERRUPT_LEVEL(3) @value{OR} @value{RPREFIX}NO_PREEMPT}
-to indicate the
-desired processor mode and interrupt level.
-
-@section Operations
-
-@subsection Establishing an ASR
-
-The @code{@value{DIRPREFIX}signal_catch} directive establishes an ASR for the
-calling task. The address of the ASR and its execution mode are
-specified to this directive. The ASR's mode is distinct from
-the task's mode. For example, the task may allow preemption,
-while that task's ASR may have preemption disabled. Until a
-task calls @code{@value{DIRPREFIX}signal_catch} the first time,
-its ASR is invalid, and no signal sets can be sent to the task.
-
-A task may invalidate its ASR and discard all pending
-signals by calling @code{@value{DIRPREFIX}signal_catch}
-with a value of NULL for the ASR's address. When a task's
-ASR is invalid, new signal sets sent to this task are discarded.
-
-A task may disable ASR processing (@code{@value{RPREFIX}NO_ASR}) via the
-task_mode directive. When a task's ASR is disabled, the signals
-sent to it are left pending to be processed later when the ASR
-is enabled.
-
-Any directive that can be called from a task can also
-be called from an ASR. A task is only allowed one active ASR.
-Thus, each call to @code{@value{DIRPREFIX}signal_catch}
-replaces the previous one.
-
-Normally, signal processing is disabled for the ASR's
-execution mode, but if signal processing is enabled for the ASR,
-the ASR must be reentrant.
-
-@subsection Sending a Signal Set
-
-The @code{@value{DIRPREFIX}signal_send} directive allows both
-tasks and ISRs to send signals to a target task. The target task and
-a set of signals are specified to the
-@code{@value{DIRPREFIX}signal_send} directive. The sending
-of a signal to a task has no effect on the execution state of
-that task. If the task is not the currently running task, then
-the signals are left pending and processed by the task's ASR the
-next time the task is dispatched to run. The ASR is executed
-immediately before the task is dispatched. If the currently
-running task sends a signal to itself or is sent a signal from
-an ISR, its ASR is immediately dispatched to run provided signal
-processing is enabled.
-
-If an ASR with signals enabled is preempted by
-another task or an ISR and a new signal set is sent, then a new
-copy of the ASR will be invoked, nesting the preempted ASR.
-Upon completion of processing the new signal set, control will
-return to the preempted ASR. In this situation, the ASR must be
-reentrant.
-
-Like events, identical signals sent to a task are not
-queued. In other words, sending the same signal multiple times
-to a task (without any intermediate signal processing occurring
-for the task), has the same result as sending that signal to
-that task once.
-
-@subsection Processing an ASR
-
-Asynchronous signals were designed to provide the
-capability to generate software interrupts. The processing of
-software interrupts parallels that of hardware interrupts. As a
-result, the differences between the formats of ASRs and ISRs is
-limited to the meaning of the single argument passed to an ASR.
-The ASR should have the following calling sequence and adhere to
-@value{LANGUAGE} calling conventions:
-
-@ifset is-C
-@findex rtems_asr
-@example
-rtems_asr user_routine(
- rtems_signal_set signals
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure User_Routine (
- Signals : in RTEMS.Signal_Set
-);
-@end example
-@end ifset
-
-When the ASR returns to RTEMS the mode and execution
-path of the interrupted task (or ASR) is restored to the context
-prior to entering the ASR.
-
-@section Directives
-
-This section details the signal manager's directives.
-A subsection is dedicated to each of this manager's directives
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-@c
-@c
-@c
-@page
-@subsection SIGNAL_CATCH - Establish an ASR
-
-@cindex establish an ASR
-@cindex install an ASR
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_signal_catch
-@example
-rtems_status_code rtems_signal_catch(
- rtems_asr_entry asr_handler,
- rtems_mode mode
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Signal_Catch (
- ASR_Handler : in RTEMS.ASR_Handler;
- Mode_Set : in RTEMS.Mode;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - always successful
-
-@subheading DESCRIPTION:
-
-This directive establishes an asynchronous signal
-routine (ASR) for the calling task. The asr_handler parameter
-specifies the entry point of the ASR. If asr_handler is NULL,
-the ASR for the calling task is invalidated and all pending
-signals are cleared. Any signals sent to a task with an invalid
-ASR are discarded. The mode parameter specifies the execution
-mode for the ASR. This execution mode supersedes the task's
-execution mode while the ASR is executing.
-
-@subheading NOTES:
-
-This directive will not cause the calling task to be
-preempted.
-
-The following task mode constants are defined by RTEMS:
-
-@itemize @bullet
-@item @code{@value{RPREFIX}PREEMPT} is masked by
-@code{@value{RPREFIX}PREEMPT_MASK} and enables preemption
-
-@item @code{@value{RPREFIX}NO_PREEMPT} is masked by
-@code{@value{RPREFIX}PREEMPT_MASK} and disables preemption
-
-@item @code{@value{RPREFIX}NO_TIMESLICE} is masked by
-@code{@value{RPREFIX}TIMESLICE_MASK} and disables timeslicing
-
-@item @code{@value{RPREFIX}TIMESLICE} is masked by
-@code{@value{RPREFIX}TIMESLICE_MASK} and enables timeslicing
-
-@item @code{@value{RPREFIX}ASR} is masked by
-@code{@value{RPREFIX}ASR_MASK} and enables ASR processing
-
-@item @code{@value{RPREFIX}NO_ASR} is masked by
-@code{@value{RPREFIX}ASR_MASK} and disables ASR processing
-
-@item @code{@value{RPREFIX}INTERRUPT_LEVEL(0)} is masked by
-@code{@value{RPREFIX}INTERRUPT_MASK} and enables all interrupts
-
-@item @code{@value{RPREFIX}INTERRUPT_LEVEL(n)} is masked by
-@code{@value{RPREFIX}INTERRUPT_MASK} and sets interrupts level n
-@end itemize
-
-@c
-@c
-@c
-@page
-@subsection SIGNAL_SEND - Send signal set to a task
-
-@cindex send signal set
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_signal_send
-@example
-rtems_status_code rtems_signal_send(
- rtems_id id,
- rtems_signal_set signal_set
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Signal_Send (
- ID : in RTEMS.ID;
- Signal_Set : in RTEMS.Signal_Set;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - signal sent successfully@*
-@code{@value{RPREFIX}INVALID_ID} - task id invalid@*
-@code{@value{RPREFIX}INVALID_NUMBER} - empty signal set@*
-@code{@value{RPREFIX}NOT_DEFINED} - ASR invalid
-
-@subheading DESCRIPTION:
-
-This directive sends a signal set to the task
-specified in id. The signal_set parameter contains the signal
-set to be sent to the task.
-
-If a caller sends a signal set to a task with an
-invalid ASR, then an error code is returned to the caller. If a
-caller sends a signal set to a task whose ASR is valid but
-disabled, then the signal set will be caught and left pending
-for the ASR to process when it is enabled. If a caller sends a
-signal set to a task with an ASR that is both valid and enabled,
-then the signal set is caught and the ASR will execute the next
-time the task is dispatched to run.
-
-@subheading NOTES:
-
-Sending a signal set to a task has no effect on that
-task's state. If a signal set is sent to a blocked task, then
-the task will remain blocked and the signals will be processed
-when the task becomes the running task.
-
-Sending a signal set to a global task which does not
-reside on the local node will generate a request telling the
-remote node to send the signal set to the specified task.
-
diff --git a/doc/user/smp.t b/doc/user/smp.t
deleted file mode 100644
index c15b7ebdcc..0000000000
--- a/doc/user/smp.t
+++ /dev/null
@@ -1,1016 +0,0 @@
-@c
-@c COPYRIGHT (c) 2014.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-@c
-
-@chapter Symmetric Multiprocessing Services
-
-@section Introduction
-
-The Symmetric Multiprocessing (SMP) support of the RTEMS @value{VERSION} is
-available on
-
-@itemize @bullet
-@item ARM,
-@item PowerPC, and
-@item SPARC.
-@end itemize
-
-It must be explicitly enabled via the @code{--enable-smp} configure command
-line option. To enable SMP in the application configuration see
-@ref{Configuring a System Enable SMP Support for Applications}. The default
-scheduler for SMP applications supports up to 32 processors and is a global
-fixed priority scheduler, see also @ref{Configuring a System Configuring
-Clustered Schedulers}. For example applications see
-@file{testsuites/smptests}.
-
-@strong{WARNING: The SMP support in RTEMS is work in progress. Before you
-start using this RTEMS version for SMP ask on the RTEMS mailing list.}
-
-This chapter describes the services related to Symmetric Multiprocessing
-provided by RTEMS.
-
-The application level services currently provided are:
-
-@itemize @bullet
-@item @code{rtems_get_processor_count} - Get processor count
-@item @code{rtems_get_current_processor} - Get current processor index
-@item @code{rtems_scheduler_ident} - Get ID of a scheduler
-@item @code{rtems_scheduler_get_processor_set} - Get processor set of a scheduler
-@item @code{rtems_task_get_scheduler} - Get scheduler of a task
-@item @code{rtems_task_set_scheduler} - Set scheduler of a task
-@item @code{rtems_task_get_affinity} - Get task processor affinity
-@item @code{rtems_task_set_affinity} - Set task processor affinity
-@end itemize
-
-@c
-@c
-@c
-@section Background
-
-@subsection Uniprocessor versus SMP Parallelism
-
-Uniprocessor systems have long been used in embedded systems. In this hardware
-model, there are some system execution characteristics which have long been
-taken for granted:
-
-@itemize @bullet
-@item one task executes at a time
-@item hardware events result in interrupts
-@end itemize
-
-There is no true parallelism. Even when interrupts appear to occur
-at the same time, they are processed in largely a serial fashion.
-This is true even when the interupt service routines are allowed to
-nest. From a tasking viewpoint, it is the responsibility of the real-time
-operatimg system to simulate parallelism by switching between tasks.
-These task switches occur in response to hardware interrupt events and explicit
-application events such as blocking for a resource or delaying.
-
-With symmetric multiprocessing, the presence of multiple processors
-allows for true concurrency and provides for cost-effective performance
-improvements. Uniprocessors tend to increase performance by increasing
-clock speed and complexity. This tends to lead to hot, power hungry
-microprocessors which are poorly suited for many embedded applications.
-
-The true concurrency is in sharp contrast to the single task and
-interrupt model of uniprocessor systems. This results in a fundamental
-change to uniprocessor system characteristics listed above. Developers
-are faced with a different set of characteristics which, in turn, break
-some existing assumptions and result in new challenges. In an SMP system
-with N processors, these are the new execution characteristics.
-
-@itemize @bullet
-@item N tasks execute in parallel
-@item hardware events result in interrupts
-@end itemize
-
-There is true parallelism with a task executing on each processor and
-the possibility of interrupts occurring on each processor. Thus in contrast
-to their being one task and one interrupt to consider on a uniprocessor,
-there are N tasks and potentially N simultaneous interrupts to consider
-on an SMP system.
-
-This increase in hardware complexity and presence of true parallelism
-results in the application developer needing to be even more cautious
-about mutual exclusion and shared data access than in a uniprocessor
-embedded system. Race conditions that never or rarely happened when an
-application executed on a uniprocessor system, become much more likely
-due to multiple threads executing in parallel. On a uniprocessor system,
-these race conditions would only happen when a task switch occurred at
-just the wrong moment. Now there are N-1 tasks executing in parallel
-all the time and this results in many more opportunities for small
-windows in critical sections to be hit.
-
-@subsection Task Affinity
-
-@cindex task affinity
-@cindex thread affinity
-
-RTEMS provides services to manipulate the affinity of a task. Affinity
-is used to specify the subset of processors in an SMP system on which
-a particular task can execute.
-
-By default, tasks have an affinity which allows them to execute on any
-available processor.
-
-Task affinity is a possible feature to be supported by SMP-aware
-schedulers. However, only a subset of the available schedulers support
-affinity. Although the behavior is scheduler specific, if the scheduler
-does not support affinity, it is likely to ignore all attempts to set
-affinity.
-
-The scheduler with support for arbitary processor affinities uses a proof of
-concept implementation. See @url{https://devel.rtems.org/ticket/2510}.
-
-@subsection Task Migration
-
-@cindex task migration
-@cindex thread migration
-
-With more than one processor in the system tasks can migrate from one processor
-to another. There are three reasons why tasks migrate in RTEMS.
-
-@itemize @bullet
-@item The scheduler changes explicitly via @code{rtems_task_set_scheduler()} or
-similar directives.
-@item The task resumes execution after a blocking operation. On a priority
-based scheduler it will evict the lowest priority task currently assigned to a
-processor in the processor set managed by the scheduler instance.
-@item The task moves temporarily to another scheduler instance due to locking
-protocols like @cite{Migratory Priority Inheritance} or the
-@cite{Multiprocessor Resource Sharing Protocol}.
-@end itemize
-
-Task migration should be avoided so that the working set of a task can stay on
-the most local cache level.
-
-The current implementation of task migration in RTEMS has some implications
-with respect to the interrupt latency. It is crucial to preserve the system
-invariant that a task can execute on at most one processor in the system at a
-time. This is accomplished with a boolean indicator in the task context. The
-processor architecture specific low-level task context switch code will mark
-that a task context is no longer executing and waits that the heir context
-stopped execution before it restores the heir context and resumes execution of
-the heir task. So there is one point in time in which a processor is without a
-task. This is essential to avoid cyclic dependencies in case multiple tasks
-migrate at once. Otherwise some supervising entity is necessary to prevent
-life-locks. Such a global supervisor would lead to scalability problems so
-this approach is not used. Currently the thread dispatch is performed with
-interrupts disabled. So in case the heir task is currently executing on
-another processor then this prolongs the time of disabled interrupts since one
-processor has to wait for another processor to make progress.
-
-It is difficult to avoid this issue with the interrupt latency since interrupts
-normally store the context of the interrupted task on its stack. In case a
-task is marked as not executing we must not use its task stack to store such an
-interrupt context. We cannot use the heir stack before it stopped execution on
-another processor. So if we enable interrupts during this transition we have
-to provide an alternative task independent stack for this time frame. This
-issue needs further investigation.
-
-@subsection Clustered Scheduling
-
-We have clustered scheduling in case the set of processors of a system is
-partitioned into non-empty pairwise-disjoint subsets. These subsets are called
-clusters. Clusters with a cardinality of one are partitions. Each cluster is
-owned by exactly one scheduler instance.
-
-Clustered scheduling helps to control the worst-case latencies in
-multi-processor systems, see @cite{Brandenburg, Björn B.: Scheduling and
-Locking in Multiprocessor Real-Time Operating Systems. PhD thesis, 2011.
-@uref{http://www.cs.unc.edu/~bbb/diss/brandenburg-diss.pdf}}. The goal is to
-reduce the amount of shared state in the system and thus prevention of lock
-contention. Modern multi-processor systems tend to have several layers of data
-and instruction caches. With clustered scheduling it is possible to honour the
-cache topology of a system and thus avoid expensive cache synchronization
-traffic. It is easy to implement. The problem is to provide synchronization
-primitives for inter-cluster synchronization (more than one cluster is involved
-in the synchronization process). In RTEMS there are currently four means
-available
-
-@itemize @bullet
-@item events,
-@item message queues,
-@item semaphores using the @ref{Semaphore Manager Priority Inheritance}
-protocol (priority boosting), and
-@item semaphores using the @ref{Semaphore Manager Multiprocessor Resource
-Sharing Protocol} (MrsP).
-@end itemize
-
-The clustered scheduling approach enables separation of functions with
-real-time requirements and functions that profit from fairness and high
-throughput provided the scheduler instances are fully decoupled and adequate
-inter-cluster synchronization primitives are used. This is work in progress.
-
-For the configuration of clustered schedulers see @ref{Configuring a System
-Configuring Clustered Schedulers}.
-
-To set the scheduler of a task see @ref{Symmetric Multiprocessing Services
-SCHEDULER_IDENT - Get ID of a scheduler} and @ref{Symmetric Multiprocessing
-Services TASK_SET_SCHEDULER - Set scheduler of a task}.
-
-@subsection Task Priority Queues
-
-Due to the support for clustered scheduling the task priority queues need
-special attention. It makes no sense to compare the priority values of two
-different scheduler instances. Thus, it is not possible to simply use one
-plain priority queue for tasks of different scheduler instances.
-
-One solution to this problem is to use two levels of queues. The top level
-queue provides FIFO ordering and contains priority queues. Each priority queue
-is associated with a scheduler instance and contains only tasks of this
-scheduler instance. Tasks are enqueued in the priority queue corresponding to
-their scheduler instance. In case this priority queue was empty, then it is
-appended to the FIFO. To dequeue a task the highest priority task of the first
-priority queue in the FIFO is selected. Then the first priority queue is
-removed from the FIFO. In case the previously first priority queue is not
-empty, then it is appended to the FIFO. So there is FIFO fairness with respect
-to the highest priority task of each scheduler instances. See also @cite{
-Brandenburg, Björn B.: A fully preemptive multiprocessor semaphore protocol for
-latency-sensitive real-time applications. In Proceedings of the 25th Euromicro
-Conference on Real-Time Systems (ECRTS 2013), pages 292–302, 2013.
-@uref{http://www.mpi-sws.org/~bbb/papers/pdf/ecrts13b.pdf}}.
-
-Such a two level queue may need a considerable amount of memory if fast enqueue
-and dequeue operations are desired (depends on the scheduler instance count).
-To mitigate this problem an approch of the FreeBSD kernel was implemented in
-RTEMS. We have the invariant that a task can be enqueued on at most one task
-queue. Thus, we need only as many queues as we have tasks. Each task is
-equipped with spare task queue which it can give to an object on demand. The
-task queue uses a dedicated memory space independent of the other memory used
-for the task itself. In case a task needs to block, then there are two options
-
-@itemize @bullet
-@item the object already has task queue, then the task enqueues itself to this
-already present queue and the spare task queue of the task is added to a list
-of free queues for this object, or
-@item otherwise, then the queue of the task is given to the object and the task
-enqueues itself to this queue.
-@end itemize
-
-In case the task is dequeued, then there are two options
-
-@itemize @bullet
-@item the task is the last task on the queue, then it removes this queue from
-the object and reclaims it for its own purpose, or
-@item otherwise, then the task removes one queue from the free list of the
-object and reclaims it for its own purpose.
-@end itemize
-
-Since there are usually more objects than tasks, this actually reduces the
-memory demands. In addition the objects contain only a pointer to the task
-queue structure. This helps to hide implementation details and makes it
-possible to use self-contained synchronization objects in Newlib and GCC (C++
-and OpenMP run-time support).
-
-@subsection Scheduler Helping Protocol
-
-The scheduler provides a helping protocol to support locking protocols like
-@cite{Migratory Priority Inheritance} or the @cite{Multiprocessor Resource
-Sharing Protocol}. Each ready task can use at least one scheduler node at a
-time to gain access to a processor. Each scheduler node has an owner, a user
-and an optional idle task. The owner of a scheduler node is determined a task
-creation and never changes during the life time of a scheduler node. The user
-of a scheduler node may change due to the scheduler helping protocol. A
-scheduler node is in one of the four scheduler help states:
-
-@table @dfn
-
-@item help yourself
-
-This scheduler node is solely used by the owner task. This task owns no
-resources using a helping protocol and thus does not take part in the scheduler
-helping protocol. No help will be provided for other tasks.
-
-@item help active owner
-
-This scheduler node is owned by a task actively owning a resource and can be
-used to help out tasks.
-
-In case this scheduler node changes its state from ready to scheduled and the
-task executes using another node, then an idle task will be provided as a user
-of this node to temporarily execute on behalf of the owner task. Thus lower
-priority tasks are denied access to the processors of this scheduler instance.
-
-In case a task actively owning a resource performs a blocking operation, then
-an idle task will be used also in case this node is in the scheduled state.
-
-@item help active rival
-
-This scheduler node is owned by a task actively obtaining a resource currently
-owned by another task and can be used to help out tasks.
-
-The task owning this node is ready and will give away its processor in case the
-task owning the resource asks for help.
-
-@item help passive
-
-This scheduler node is owned by a task obtaining a resource currently owned by
-another task and can be used to help out tasks.
-
-The task owning this node is blocked.
-
-@end table
-
-The following scheduler operations return a task in need for help
-
-@itemize @bullet
-@item unblock,
-@item change priority,
-@item yield, and
-@item ask for help.
-@end itemize
-
-A task in need for help is a task that encounters a scheduler state change from
-scheduled to ready (this is a pre-emption by a higher priority task) or a task
-that cannot be scheduled in an unblock operation. Such a task can ask tasks
-which depend on resources owned by this task for help.
-
-In case it is not possible to schedule a task in need for help, then the
-scheduler nodes available for the task will be placed into the set of ready
-scheduler nodes of the corresponding scheduler instances. Once a state change
-from ready to scheduled happens for one of scheduler nodes it will be used to
-schedule the task in need for help.
-
-The ask for help scheduler operation is used to help tasks in need for help
-returned by the operations mentioned above. This operation is also used in
-case the root of a resource sub-tree owned by a task changes.
-
-The run-time of the ask for help procedures depend on the size of the resource
-tree of the task needing help and other resource trees in case tasks in need
-for help are produced during this operation. Thus the worst-case latency in
-the system depends on the maximum resource tree size of the application.
-
-@subsection Critical Section Techniques and SMP
-
-As discussed earlier, SMP systems have opportunities for true parallelism
-which was not possible on uniprocessor systems. Consequently, multiple
-techniques that provided adequate critical sections on uniprocessor
-systems are unsafe on SMP systems. In this section, some of these
-unsafe techniques will be discussed.
-
-In general, applications must use proper operating system provided mutual
-exclusion mechanisms to ensure correct behavior. This primarily means
-the use of binary semaphores or mutexes to implement critical sections.
-
-@subsubsection Disable Interrupts and Interrupt Locks
-
-A low overhead means to ensure mutual exclusion in uni-processor configurations
-is to disable interrupts around a critical section. This is commonly used in
-device driver code and throughout the operating system core. On SMP
-configurations, however, disabling the interrupts on one processor has no
-effect on other processors. So, this is insufficient to ensure system wide
-mutual exclusion. The macros
-@itemize @bullet
-@item @code{rtems_interrupt_disable()},
-@item @code{rtems_interrupt_enable()}, and
-@item @code{rtems_interrupt_flush()}
-@end itemize
-are disabled on SMP configurations and its use will lead to compiler warnings
-and linker errors. In the unlikely case that interrupts must be disabled on
-the current processor, then the
-@itemize @bullet
-@item @code{rtems_interrupt_local_disable()}, and
-@item @code{rtems_interrupt_local_enable()}
-@end itemize
-macros are now available in all configurations.
-
-Since disabling of interrupts is not enough to ensure system wide mutual
-exclusion on SMP, a new low-level synchronization primitive was added - the
-interrupt locks. They are a simple API layer on top of the SMP locks used for
-low-level synchronization in the operating system core. Currently they are
-implemented as a ticket lock. On uni-processor configurations they degenerate
-to simple interrupt disable/enable sequences. It is disallowed to acquire a
-single interrupt lock in a nested way. This will result in an infinite loop
-with interrupts disabled. While converting legacy code to interrupt locks care
-must be taken to avoid this situation.
-
-@example
-@group
-void legacy_code_with_interrupt_disable_enable( void )
-@{
- rtems_interrupt_level level;
-
- rtems_interrupt_disable( level );
- /* Some critical stuff */
- rtems_interrupt_enable( level );
-@}
-
-RTEMS_INTERRUPT_LOCK_DEFINE( static, lock, "Name" )
-
-void smp_ready_code_with_interrupt_lock( void )
-@{
- rtems_interrupt_lock_context lock_context;
-
- rtems_interrupt_lock_acquire( &lock, &lock_context );
- /* Some critical stuff */
- rtems_interrupt_lock_release( &lock, &lock_context );
-@}
-@end group
-@end example
-
-The @code{rtems_interrupt_lock} structure is empty on uni-processor
-configurations. Empty structures have a different size in C
-(implementation-defined, zero in case of GCC) and C++ (implementation-defined
-non-zero value, one in case of GCC). Thus the
-@code{RTEMS_INTERRUPT_LOCK_DECLARE()}, @code{RTEMS_INTERRUPT_LOCK_DEFINE()},
-@code{RTEMS_INTERRUPT_LOCK_MEMBER()}, and
-@code{RTEMS_INTERRUPT_LOCK_REFERENCE()} macros are provided to ensure ABI
-compatibility.
-
-@subsubsection Highest Priority Task Assumption
-
-On a uniprocessor system, it is safe to assume that when the highest
-priority task in an application executes, it will execute without being
-preempted until it voluntarily blocks. Interrupts may occur while it is
-executing, but there will be no context switch to another task unless
-the highest priority task voluntarily initiates it.
-
-Given the assumption that no other tasks will have their execution
-interleaved with the highest priority task, it is possible for this
-task to be constructed such that it does not need to acquire a binary
-semaphore or mutex for protected access to shared data.
-
-In an SMP system, it cannot be assumed there will never be a single task
-executing. It should be assumed that every processor is executing another
-application task. Further, those tasks will be ones which would not have
-been executed in a uniprocessor configuration and should be assumed to
-have data synchronization conflicts with what was formerly the highest
-priority task which executed without conflict.
-
-@subsubsection Disable Preemption
-
-On a uniprocessor system, disabling preemption in a task is very similar
-to making the highest priority task assumption. While preemption is
-disabled, no task context switches will occur unless the task initiates
-them voluntarily. And, just as with the highest priority task assumption,
-there are N-1 processors also running tasks. Thus the assumption that no
-other tasks will run while the task has preemption disabled is violated.
-
-@subsection Task Unique Data and SMP
-
-Per task variables are a service commonly provided by real-time operating
-systems for application use. They work by allowing the application
-to specify a location in memory (typically a @code{void *}) which is
-logically added to the context of a task. On each task switch, the
-location in memory is stored and each task can have a unique value in
-the same memory location. This memory location is directly accessed as a
-variable in a program.
-
-This works well in a uniprocessor environment because there is one task
-executing and one memory location containing a task-specific value. But
-it is fundamentally broken on an SMP system because there are always N
-tasks executing. With only one location in memory, N-1 tasks will not
-have the correct value.
-
-This paradigm for providing task unique data values is fundamentally
-broken on SMP systems.
-
-@subsubsection Classic API Per Task Variables
-
-The Classic API provides three directives to support per task variables. These are:
-
-@itemize @bullet
-@item @code{@value{DIRPREFIX}task_variable_add} - Associate per task variable
-@item @code{@value{DIRPREFIX}task_variable_get} - Obtain value of a a per task variable
-@item @code{@value{DIRPREFIX}task_variable_delete} - Remove per task variable
-@end itemize
-
-As task variables are unsafe for use on SMP systems, the use of these services
-must be eliminated in all software that is to be used in an SMP environment.
-The task variables API is disabled on SMP. Its use will lead to compile-time
-and link-time errors. It is recommended that the application developer consider
-the use of POSIX Keys or Thread Local Storage (TLS). POSIX Keys are available
-in all RTEMS configurations. For the availablity of TLS on a particular
-architecture please consult the @cite{RTEMS CPU Architecture Supplement}.
-
-The only remaining user of task variables in the RTEMS code base is the Ada
-support. So basically Ada is not available on RTEMS SMP.
-
-@subsection OpenMP
-
-OpenMP support for RTEMS is available via the GCC provided libgomp. There is
-libgomp support for RTEMS in the POSIX configuration of libgomp since GCC 4.9
-(requires a Newlib snapshot after 2015-03-12). In GCC 6.1 or later (requires a
-Newlib snapshot after 2015-07-30 for <sys/lock.h> provided self-contained
-synchronization objects) there is a specialized libgomp configuration for RTEMS
-which offers a significantly better performance compared to the POSIX
-configuration of libgomp. In addition application configurable thread pools
-for each scheduler instance are available in GCC 6.1 or later.
-
-The run-time configuration of libgomp is done via environment variables
-documented in the @uref{https://gcc.gnu.org/onlinedocs/libgomp/, libgomp
-manual}. The environment variables are evaluated in a constructor function
-which executes in the context of the first initialization task before the
-actual initialization task function is called (just like a global C++
-constructor). To set application specific values, a higher priority
-constructor function must be used to set up the environment variables.
-
-@example
-@group
-#include <stdlib.h>
-
-void __attribute__((constructor(1000))) config_libgomp( void )
-@{
- setenv( "OMP_DISPLAY_ENV", "VERBOSE", 1 );
- setenv( "GOMP_SPINCOUNT", "30000", 1 );
- setenv( "GOMP_RTEMS_THREAD_POOLS", "1$2@@SCHD", 1 );
-@}
-@end group
-@end example
-
-The environment variable @env{GOMP_RTEMS_THREAD_POOLS} is RTEMS-specific. It
-determines the thread pools for each scheduler instance. The format for
-@env{GOMP_RTEMS_THREAD_POOLS} is a list of optional
-@code{<thread-pool-count>[$<priority>]@@<scheduler-name>} configurations
-separated by @code{:} where:
-
-@itemize @bullet
-@item @code{<thread-pool-count>} is the thread pool count for this scheduler
-instance.
-@item @code{$<priority>} is an optional priority for the worker threads of a
-thread pool according to @code{pthread_setschedparam}. In case a priority
-value is omitted, then a worker thread will inherit the priority of the OpenMP
-master thread that created it. The priority of the worker thread is not
-changed by libgomp after creation, even if a new OpenMP master thread using the
-worker has a different priority.
-@item @code{@@<scheduler-name>} is the scheduler instance name according to the
-RTEMS application configuration.
-@end itemize
-
-In case no thread pool configuration is specified for a scheduler instance,
-then each OpenMP master thread of this scheduler instance will use its own
-dynamically allocated thread pool. To limit the worker thread count of the
-thread pools, each OpenMP master thread must call @code{omp_set_num_threads}.
-
-Lets suppose we have three scheduler instances @code{IO}, @code{WRK0}, and
-@code{WRK1} with @env{GOMP_RTEMS_THREAD_POOLS} set to
-@code{"1@@WRK0:3$4@@WRK1"}. Then there are no thread pool restrictions for
-scheduler instance @code{IO}. In the scheduler instance @code{WRK0} there is
-one thread pool available. Since no priority is specified for this scheduler
-instance, the worker thread inherits the priority of the OpenMP master thread
-that created it. In the scheduler instance @code{WRK1} there are three thread
-pools available and their worker threads run at priority four.
-
-@subsection Thread Dispatch Details
-
-This section gives background information to developers interested in the
-interrupt latencies introduced by thread dispatching. A thread dispatch
-consists of all work which must be done to stop the currently executing thread
-on a processor and hand over this processor to an heir thread.
-
-On SMP systems, scheduling decisions on one processor must be propagated to
-other processors through inter-processor interrupts. So, a thread dispatch
-which must be carried out on another processor happens not instantaneous. Thus
-several thread dispatch requests might be in the air and it is possible that
-some of them may be out of date before the corresponding processor has time to
-deal with them. The thread dispatch mechanism uses three per-processor
-variables,
-@itemize @bullet
-@item the executing thread,
-@item the heir thread, and
-@item an boolean flag indicating if a thread dispatch is necessary or not.
-@end itemize
-Updates of the heir thread and the thread dispatch necessary indicator are
-synchronized via explicit memory barriers without the use of locks. A thread
-can be an heir thread on at most one processor in the system. The thread context
-is protected by a TTAS lock embedded in the context to ensure that it is used
-on at most one processor at a time. The thread post-switch actions use a
-per-processor lock. This implementation turned out to be quite efficient and
-no lock contention was observed in the test suite.
-
-The current implementation of thread dispatching has some implications with
-respect to the interrupt latency. It is crucial to preserve the system
-invariant that a thread can execute on at most one processor in the system at a
-time. This is accomplished with a boolean indicator in the thread context.
-The processor architecture specific context switch code will mark that a thread
-context is no longer executing and waits that the heir context stopped
-execution before it restores the heir context and resumes execution of the heir
-thread (the boolean indicator is basically a TTAS lock). So, there is one
-point in time in which a processor is without a thread. This is essential to
-avoid cyclic dependencies in case multiple threads migrate at once. Otherwise
-some supervising entity is necessary to prevent deadlocks. Such a global
-supervisor would lead to scalability problems so this approach is not used.
-Currently the context switch is performed with interrupts disabled. Thus in
-case the heir thread is currently executing on another processor, the time of
-disabled interrupts is prolonged since one processor has to wait for another
-processor to make progress.
-
-It is difficult to avoid this issue with the interrupt latency since interrupts
-normally store the context of the interrupted thread on its stack. In case a
-thread is marked as not executing, we must not use its thread stack to store
-such an interrupt context. We cannot use the heir stack before it stopped
-execution on another processor. If we enable interrupts during this
-transition, then we have to provide an alternative thread independent stack for
-interrupts in this time frame. This issue needs further investigation.
-
-The problematic situation occurs in case we have a thread which executes with
-thread dispatching disabled and should execute on another processor (e.g. it is
-an heir thread on another processor). In this case the interrupts on this
-other processor are disabled until the thread enables thread dispatching and
-starts the thread dispatch sequence. The scheduler (an exception is the
-scheduler with thread processor affinity support) tries to avoid such a
-situation and checks if a new scheduled thread already executes on a processor.
-In case the assigned processor differs from the processor on which the thread
-already executes and this processor is a member of the processor set managed by
-this scheduler instance, it will reassign the processors to keep the already
-executing thread in place. Therefore normal scheduler requests will not lead
-to such a situation. Explicit thread migration requests, however, can lead to
-this situation. Explicit thread migrations may occur due to the scheduler
-helping protocol or explicit scheduler instance changes. The situation can
-also be provoked by interrupts which suspend and resume threads multiple times
-and produce stale asynchronous thread dispatch requests in the system.
-
-@c
-@c
-@c
-@section Operations
-
-@subsection Setting Affinity to a Single Processor
-
-On some embedded applications targeting SMP systems, it may be beneficial to
-lock individual tasks to specific processors. In this way, one can designate a
-processor for I/O tasks, another for computation, etc.. The following
-illustrates the code sequence necessary to assign a task an affinity for
-processor with index @code{processor_index}.
-
-@example
-@group
-#include <rtems.h>
-#include <assert.h>
-
-void pin_to_processor(rtems_id task_id, int processor_index)
-@{
- rtems_status_code sc;
- cpu_set_t cpuset;
-
- CPU_ZERO(&cpuset);
- CPU_SET(processor_index, &cpuset);
-
- sc = rtems_task_set_affinity(task_id, sizeof(cpuset), &cpuset);
- assert(sc == RTEMS_SUCCESSFUL);
-@}
-@end group
-@end example
-
-It is important to note that the @code{cpuset} is not validated until the
-@code{@value{DIRPREFIX}task_set_affinity} call is made. At that point,
-it is validated against the current system configuration.
-
-@c
-@c
-@c
-@section Directives
-
-This section details the symmetric multiprocessing services. A subsection
-is dedicated to each of these services and describes the calling sequence,
-related constants, usage, and status codes.
-
-@c
-@c rtems_get_processor_count
-@c
-@page
-@subsection GET_PROCESSOR_COUNT - Get processor count
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-uint32_t rtems_get_processor_count(void);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-The count of processors in the system.
-
-@subheading DESCRIPTION:
-
-On uni-processor configurations a value of one will be returned.
-
-On SMP configurations this returns the value of a global variable set during
-system initialization to indicate the count of utilized processors. The
-processor count depends on the physically or virtually available processors and
-application configuration. The value will always be less than or equal to the
-maximum count of application configured processors.
-
-@subheading NOTES:
-
-None.
-
-@c
-@c rtems_get_current_processor
-@c
-@page
-@subsection GET_CURRENT_PROCESSOR - Get current processor index
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-uint32_t rtems_get_current_processor(void);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-The index of the current processor.
-
-@subheading DESCRIPTION:
-
-On uni-processor configurations a value of zero will be returned.
-
-On SMP configurations an architecture specific method is used to obtain the
-index of the current processor in the system. The set of processor indices is
-the range of integers starting with zero up to the processor count minus one.
-
-Outside of sections with disabled thread dispatching the current processor
-index may change after every instruction since the thread may migrate from one
-processor to another. Sections with disabled interrupts are sections with
-thread dispatching disabled.
-
-@subheading NOTES:
-
-None.
-
-@c
-@c rtems_scheduler_ident
-@c
-@page
-@subsection SCHEDULER_IDENT - Get ID of a scheduler
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-rtems_status_code rtems_scheduler_ident(
- rtems_name name,
- rtems_id *id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-@code{@value{RPREFIX}SUCCESSFUL} - successful operation@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{id} is NULL@*
-@code{@value{RPREFIX}INVALID_NAME} - invalid scheduler name@*
-@code{@value{RPREFIX}UNSATISFIED} - - a scheduler with this name exists, but
-the processor set of this scheduler is empty
-
-@subheading DESCRIPTION:
-
-Identifies a scheduler by its name. The scheduler name is determined by the
-scheduler configuration. @xref{Configuring a System Configuring Clustered
-Schedulers}.
-
-@subheading NOTES:
-
-None.
-
-@c
-@c rtems_scheduler_get_processor_set
-@c
-@page
-@subsection SCHEDULER_GET_PROCESSOR_SET - Get processor set of a scheduler
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-rtems_status_code rtems_scheduler_get_processor_set(
- rtems_id scheduler_id,
- size_t cpusetsize,
- cpu_set_t *cpuset
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-@code{@value{RPREFIX}SUCCESSFUL} - successful operation@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{cpuset} is NULL@*
-@code{@value{RPREFIX}INVALID_ID} - invalid scheduler id@*
-@code{@value{RPREFIX}INVALID_NUMBER} - the affinity set buffer is too small for
-set of processors owned by the scheduler
-
-@subheading DESCRIPTION:
-
-Returns the processor set owned by the scheduler in @code{cpuset}. A set bit
-in the processor set means that this processor is owned by the scheduler and a
-cleared bit means the opposite.
-
-@subheading NOTES:
-
-None.
-
-@c
-@c rtems_task_get_scheduler
-@c
-@page
-@subsection TASK_GET_SCHEDULER - Get scheduler of a task
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-rtems_status_code rtems_task_get_scheduler(
- rtems_id task_id,
- rtems_id *scheduler_id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-@code{@value{RPREFIX}SUCCESSFUL} - successful operation@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{scheduler_id} is NULL@*
-@code{@value{RPREFIX}INVALID_ID} - invalid task id
-
-@subheading DESCRIPTION:
-
-Returns the scheduler identifier of a task identified by @code{task_id} in
-@code{scheduler_id}.
-
-@subheading NOTES:
-
-None.
-
-@c
-@c rtems_task_set_scheduler
-@c
-@page
-@subsection TASK_SET_SCHEDULER - Set scheduler of a task
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-rtems_status_code rtems_task_set_scheduler(
- rtems_id task_id,
- rtems_id scheduler_id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-@code{@value{RPREFIX}SUCCESSFUL} - successful operation@*
-@code{@value{RPREFIX}INVALID_ID} - invalid task or scheduler id@*
-@code{@value{RPREFIX}INCORRECT_STATE} - the task is in the wrong state to
-perform a scheduler change
-
-@subheading DESCRIPTION:
-
-Sets the scheduler of a task identified by @code{task_id} to the scheduler
-identified by @code{scheduler_id}. The scheduler of a task is initialized to
-the scheduler of the task that created it.
-
-@subheading NOTES:
-
-None.
-
-@subheading EXAMPLE:
-
-@example
-@group
-#include <rtems.h>
-#include <assert.h>
-
-void task(rtems_task_argument arg);
-
-void example(void)
-@{
- rtems_status_code sc;
- rtems_id task_id;
- rtems_id scheduler_id;
- rtems_name scheduler_name;
-
- scheduler_name = rtems_build_name('W', 'O', 'R', 'K');
-
- sc = rtems_scheduler_ident(scheduler_name, &scheduler_id);
- assert(sc == RTEMS_SUCCESSFUL);
-
- sc = rtems_task_create(
- rtems_build_name('T', 'A', 'S', 'K'),
- 1,
- RTEMS_MINIMUM_STACK_SIZE,
- RTEMS_DEFAULT_MODES,
- RTEMS_DEFAULT_ATTRIBUTES,
- &task_id
- );
- assert(sc == RTEMS_SUCCESSFUL);
-
- sc = rtems_task_set_scheduler(task_id, scheduler_id);
- assert(sc == RTEMS_SUCCESSFUL);
-
- sc = rtems_task_start(task_id, task, 0);
- assert(sc == RTEMS_SUCCESSFUL);
-@}
-@end group
-@end example
-
-@c
-@c rtems_task_get_affinity
-@c
-@page
-@subsection TASK_GET_AFFINITY - Get task processor affinity
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-rtems_status_code rtems_task_get_affinity(
- rtems_id id,
- size_t cpusetsize,
- cpu_set_t *cpuset
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-@code{@value{RPREFIX}SUCCESSFUL} - successful operation@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{cpuset} is NULL@*
-@code{@value{RPREFIX}INVALID_ID} - invalid task id@*
-@code{@value{RPREFIX}INVALID_NUMBER} - the affinity set buffer is too small for
-the current processor affinity set of the task
-
-@subheading DESCRIPTION:
-
-Returns the current processor affinity set of the task in @code{cpuset}. A set
-bit in the affinity set means that the task can execute on this processor and a
-cleared bit means the opposite.
-
-@subheading NOTES:
-
-None.
-
-@c
-@c rtems_task_set_affinity
-@c
-@page
-@subsection TASK_SET_AFFINITY - Set task processor affinity
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-rtems_status_code rtems_task_set_affinity(
- rtems_id id,
- size_t cpusetsize,
- const cpu_set_t *cpuset
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-
-@code{@value{RPREFIX}SUCCESSFUL} - successful operation@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{cpuset} is NULL@*
-@code{@value{RPREFIX}INVALID_ID} - invalid task id@*
-@code{@value{RPREFIX}INVALID_NUMBER} - invalid processor affinity set
-
-@subheading DESCRIPTION:
-
-Sets the processor affinity set for the task specified by @code{cpuset}. A set
-bit in the affinity set means that the task can execute on this processor and a
-cleared bit means the opposite.
-
-@subheading NOTES:
-
-This function will not change the scheduler of the task. The intersection of
-the processor affinity set and the set of processors owned by the scheduler of
-the task must be non-empty. It is not an error if the processor affinity set
-contains processors that are not part of the set of processors owned by the
-scheduler instance of the task. A task will simply not run under normal
-circumstances on these processors since the scheduler ignores them. Some
-locking protocols may temporarily use processors that are not included in the
-processor affinity set of the task. It is also not an error if the processor
-affinity set contains processors that are not part of the system.
diff --git a/doc/user/stackchk.t b/doc/user/stackchk.t
deleted file mode 100644
index 30973567e1..0000000000
--- a/doc/user/stackchk.t
+++ /dev/null
@@ -1,220 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2007.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Stack Bounds Checker
-
-@section Introduction
-
-The stack bounds checker is an RTEMS support component that determines
-if a task has overrun its run-time stack. The routines provided
-by the stack bounds checker manager are:
-
-@itemize @bullet
-@item @code{@value{DIRPREFIX}stack_checker_is_blown} - Has the Current Task Blown its Stack
-@item @code{@value{DIRPREFIX}stack_checker_report_usage} - Report Task Stack Usage
-@end itemize
-
-@section Background
-
-@subsection Task Stack
-
-Each task in a system has a fixed size stack associated with it. This
-stack is allocated when the task is created. As the task executes, the
-stack is used to contain parameters, return addresses, saved registers,
-and local variables. The amount of stack space required by a task
-is dependent on the exact set of routines used. The peak stack usage
-reflects the worst case of subroutine pushing information on the stack.
-For example, if a subroutine allocates a local buffer of 1024 bytes, then
-this data must be accounted for in the stack of every task that invokes that
-routine.
-
-Recursive routines make calculating peak stack usage difficult, if not
-impossible. Each call to the recursive routine consumes @i{n} bytes
-of stack space. If the routine recursives 1000 times, then
-@code{1000 * @i{n}} bytes of stack space are required.
-
-@subsection Execution
-
-The stack bounds checker operates as a set of task extensions. At
-task creation time, the task's stack is filled with a pattern to
-indicate the stack is unused. As the task executes, it will overwrite
-this pattern in memory. At each task switch, the stack bounds checker's
-task switch extension is executed. This extension checks that:
-
-@itemize @bullet
-
-@item the last @code{n} bytes of the task's stack have
-not been overwritten. If this pattern has been damaged, it
-indicates that at some point since this task was context
-switch to the CPU, it has used too much stack space.
-
-@item the current stack pointer of the task is not within
-the address range allocated for use as the task's stack.
-
-@end itemize
-
-If either of these conditions is detected, then a blown stack
-error is reported using the @code{printk} routine.
-
-The number of bytes checked for an overwrite is processor family dependent.
-The minimum stack frame per subroutine call varies widely between processor
-families. On CISC families like the Motorola MC68xxx and Intel ix86, all
-that is needed is a return address. On more complex RISC processors,
-the minimum stack frame per subroutine call may include space to save
-a significant number of registers.
-
-Another processor dependent feature that must be taken into account by
-the stack bounds checker is the direction that the stack grows. On some
-processor families, the stack grows up or to higher addresses as the
-task executes. On other families, it grows down to lower addresses. The
-stack bounds checker implementation uses the stack description definitions
-provided by every RTEMS port to get for this information.
-
-@section Operations
-
-@subsection Initializing the Stack Bounds Checker
-
-The stack checker is initialized automatically when its task
-create extension runs for the first time.
-
-The application must include the stack bounds checker extension set
-in its set of Initial Extensions. This set of extensions is
-defined as @code{STACK_CHECKER_EXTENSION}. If using @code{<rtems/confdefs.h>}
-for Configuration Table generation, then all that is necessary is
-to define the macro @code{CONFIGURE_STACK_CHECKER_ENABLED} before including
-@code{<rtems/confdefs.h>} as shown below:
-
-@example
-@group
-#define CONFIGURE_STACK_CHECKER_ENABLED
- ...
-#include <rtems/confdefs.h>
-@end group
-@end example
-
-@subsection Checking for Blown Task Stack
-
-The application may check whether the stack pointer of currently
-executing task is within proper bounds at any time by calling
-the @code{@value{DIRPREFIX}stack_checker_is_blown} method. This
-method return @code{FALSE} if the task is operating within its
-stack bounds and has not damaged its pattern area.
-
-@subsection Reporting Task Stack Usage
-
-The application may dynamically report the stack usage for every task
-in the system by calling the
-@code{@value{DIRPREFIX}stack_checker_report_usage} routine.
-This routine prints a table with the peak usage and stack size of
-every task in the system. The following is an example of the
-report generated:
-
-@example
-@group
- ID NAME LOW HIGH AVAILABLE USED
-0x04010001 IDLE 0x003e8a60 0x003e9667 2952 200
-0x08010002 TA1 0x003e5750 0x003e7b57 9096 1168
-0x08010003 TA2 0x003e31c8 0x003e55cf 9096 1168
-0x08010004 TA3 0x003e0c40 0x003e3047 9096 1104
-0xffffffff INTR 0x003ecfc0 0x003effbf 12160 128
-@end group
-@end example
-
-Notice the last time. The task id is 0xffffffff and its name is "INTR".
-This is not actually a task, it is the interrupt stack.
-
-@subsection When a Task Overflows the Stack
-
-When the stack bounds checker determines that a stack overflow has occurred,
-it will attempt to print a message using @code{printk} identifying the
-task and then shut the system down. If the stack overflow has caused
-corruption, then it is possible that the message cannot be printed.
-
-The following is an example of the output generated:
-
-@example
-@group
-BLOWN STACK!!! Offending task(0x3eb360): id=0x08010002; name=0x54413120
- stack covers range 0x003e5750 - 0x003e7b57 (9224 bytes)
- Damaged pattern begins at 0x003e5758 and is 128 bytes long
-@end group
-@end example
-
-The above includes the task id and a pointer to the task control block as
-well as enough information so one can look at the task's stack and
-see what was happening.
-
-@section Routines
-
-This section details the stack bounds checker's routines.
-A subsection is dedicated to each of routines
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-
-@c
-@c rtems_stack_checker_is_blown
-@c
-@page
-@subsection STACK_CHECKER_IS_BLOWN - Has Current Task Blown Its Stack
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-bool rtems_stack_checker_is_blown( void );
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-function Stack_Checker_Is_Blown return RTEMS.Boolean;
-@end example
-@end ifset
-
-@subheading STATUS CODES:
-@code{TRUE} - Stack is operating within its stack limits@*
-@code{FALSE} - Current stack pointer is outside allocated area
-
-
-@subheading DESCRIPTION:
-
-This method is used to determine if the current stack pointer
-of the currently executing task is within bounds.
-
-@subheading NOTES:
-
-This method checks the current stack pointer against
-the high and low addresses of the stack memory allocated when
-the task was created and it looks for damage to the high water
-mark pattern for the worst case usage of the task being called.
-
-@page
-@subsection STACK_CHECKER_REPORT_USAGE - Report Task Stack Usage
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-void rtems_stack_checker_report_usage( void );
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Stack_Checker_Report_Usage;
-@end example
-@end ifset
-
-@subheading STATUS CODES: NONE
-
-@subheading DESCRIPTION:
-
-This routine prints a table with the peak stack usage and stack space
-allocation of every task in the system.
-
-@subheading NOTES:
-
-NONE
diff --git a/doc/user/stamp-vti b/doc/user/stamp-vti
deleted file mode 100644
index 5634951ec8..0000000000
--- a/doc/user/stamp-vti
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 24 February 2013
-@set UPDATED-MONTH February 2013
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0
diff --git a/doc/user/states.eps b/doc/user/states.eps
deleted file mode 100644
index cea4e7f344..0000000000
--- a/doc/user/states.eps
+++ /dev/null
@@ -1,13822 +0,0 @@
-%!PS-Adobe-3.0 EPSF-3.0
-%%Creator: (ImageMagick)
-%%Title: (states.eps)
-%%CreationDate: (Wed Oct 6 11:08:51 1999)
-%%BoundingBox: 0 109 495 573
-%%DocumentData: Clean7Bit
-%%LanguageLevel: 1
-%%Pages: 0
-%%EndComments
-
-%%BeginDefaults
-%%PageOrientation: Portrait
-%%EndDefaults
-
-%%BeginProlog
-%
-% Display a color image. The image is displayed in color on
-% Postscript viewers or printers that support color, otherwise
-% it is displayed as grayscale.
-%
-/buffer 512 string def
-/byte 1 string def
-/color_packet 3 string def
-/pixels 768 string def
-
-/DirectClassPacket
-{
- %
- % Get a DirectClass packet.
- %
- % Parameters:
- % red.
- % green.
- % blue.
- % length: number of pixels minus one of this color (optional).
- %
- currentfile color_packet readhexstring pop pop
- compression 0 gt
- {
- /number_pixels 3 def
- }
- {
- currentfile byte readhexstring pop 0 get
- /number_pixels exch 1 add 3 mul def
- } ifelse
- 0 3 number_pixels 1 sub
- {
- pixels exch color_packet putinterval
- } for
- pixels 0 number_pixels getinterval
-} bind def
-
-/DirectClassImage
-{
- %
- % Display a DirectClass image.
- %
- systemdict /colorimage known
- {
- columns rows 8
- [
- columns 0 0
- rows neg 0 rows
- ]
- { DirectClassPacket } false 3 colorimage
- }
- {
- %
- % No colorimage operator; convert to grayscale.
- %
- columns rows 8
- [
- columns 0 0
- rows neg 0 rows
- ]
- { GrayDirectClassPacket } image
- } ifelse
-} bind def
-
-/GrayDirectClassPacket
-{
- %
- % Get a DirectClass packet; convert to grayscale.
- %
- % Parameters:
- % red
- % green
- % blue
- % length: number of pixels minus one of this color (optional).
- %
- currentfile color_packet readhexstring pop pop
- color_packet 0 get 0.299 mul
- color_packet 1 get 0.587 mul add
- color_packet 2 get 0.114 mul add
- cvi
- /gray_packet exch def
- compression 0 gt
- {
- /number_pixels 1 def
- }
- {
- currentfile byte readhexstring pop 0 get
- /number_pixels exch 1 add def
- } ifelse
- 0 1 number_pixels 1 sub
- {
- pixels exch gray_packet put
- } for
- pixels 0 number_pixels getinterval
-} bind def
-
-/GrayPseudoClassPacket
-{
- %
- % Get a PseudoClass packet; convert to grayscale.
- %
- % Parameters:
- % index: index into the colormap.
- % length: number of pixels minus one of this color (optional).
- %
- currentfile byte readhexstring pop 0 get
- /offset exch 3 mul def
- /color_packet colormap offset 3 getinterval def
- color_packet 0 get 0.299 mul
- color_packet 1 get 0.587 mul add
- color_packet 2 get 0.114 mul add
- cvi
- /gray_packet exch def
- compression 0 gt
- {
- /number_pixels 1 def
- }
- {
- currentfile byte readhexstring pop 0 get
- /number_pixels exch 1 add def
- } ifelse
- 0 1 number_pixels 1 sub
- {
- pixels exch gray_packet put
- } for
- pixels 0 number_pixels getinterval
-} bind def
-
-/PseudoClassPacket
-{
- %
- % Get a PseudoClass packet.
- %
- % Parameters:
- % index: index into the colormap.
- % length: number of pixels minus one of this color (optional).
- %
- currentfile byte readhexstring pop 0 get
- /offset exch 3 mul def
- /color_packet colormap offset 3 getinterval def
- compression 0 gt
- {
- /number_pixels 3 def
- }
- {
- currentfile byte readhexstring pop 0 get
- /number_pixels exch 1 add 3 mul def
- } ifelse
- 0 3 number_pixels 1 sub
- {
- pixels exch color_packet putinterval
- } for
- pixels 0 number_pixels getinterval
-} bind def
-
-/PseudoClassImage
-{
- %
- % Display a PseudoClass image.
- %
- % Parameters:
- % class: 0-PseudoClass or 1-Grayscale.
- %
- currentfile buffer readline pop
- token pop /class exch def pop
- class 0 gt
- {
- currentfile buffer readline pop
- token pop /depth exch def pop
- /grays columns 8 add depth sub depth mul 8 idiv string def
- columns rows depth
- [
- columns 0 0
- rows neg 0 rows
- ]
- { currentfile grays readhexstring pop } image
- }
- {
- %
- % Parameters:
- % colors: number of colors in the colormap.
- % colormap: red, green, blue color packets.
- %
- currentfile buffer readline pop
- token pop /colors exch def pop
- /colors colors 3 mul def
- /colormap colors string def
- currentfile colormap readhexstring pop pop
- systemdict /colorimage known
- {
- columns rows 8
- [
- columns 0 0
- rows neg 0 rows
- ]
- { PseudoClassPacket } false 3 colorimage
- }
- {
- %
- % No colorimage operator; convert to grayscale.
- %
- columns rows 8
- [
- columns 0 0
- rows neg 0 rows
- ]
- { GrayPseudoClassPacket } image
- } ifelse
- } ifelse
-} bind def
-
-/DisplayImage
-{
- %
- % Display a DirectClass or PseudoClass image.
- %
- % Parameters:
- % x & y translation.
- % x & y scale.
- % label pointsize.
- % image label.
- % image columns & rows.
- % class: 0-DirectClass or 1-PseudoClass.
- % compression: 0-RunlengthEncodedCompression or 1-NoCompression.
- % hex color packets.
- %
- gsave
- currentfile buffer readline pop
- token pop /x exch def
- token pop /y exch def pop
- x y translate
- currentfile buffer readline pop
- token pop /x exch def
- token pop /y exch def pop
- currentfile buffer readline pop
- token pop /pointsize exch def pop
- /Helvetica findfont pointsize scalefont setfont
- x y scale
- currentfile buffer readline pop
- token pop /columns exch def
- token pop /rows exch def pop
- currentfile buffer readline pop
- token pop /class exch def pop
- currentfile buffer readline pop
- token pop /compression exch def pop
- class 0 gt { PseudoClassImage } { DirectClassImage } ifelse
- grestore
-} bind def
-%%EndProlog
-%%Page: 1 1
-%%PageBoundingBox: 0 109 495 573
-userdict begin
-%%BeginData:
-DisplayImage
-0 109
-495.101124 464.359551
-12
-721 676
-1
-1
-1
-8
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff87ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff8787ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff8787ffffffff6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6effff8787ffffffff876e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6effffff8787ffffffff8787a07762636363636363636363636363636363636363636363
-636363636363636363636363636363636363636363636363636363636363636363636363
-636363636363636363636363636363636363636363636363636363636363636363636363
-636363636363636363636363636363636363636363636363636363636363636363636363
-636363636363636363636363636363636363636363636363636363636363636363636363
-636363636363636363636363636363636363636363636363636363636363636363636363
-636363636363636363636363636363636363636363636363636363636363636363636363
-636363636363636363636363636363636363636363636363636363636363636363636363
-636363636363636363636363636363636363636363636363636363636363636363636363
-636363636363636363636363636363636363636363636363636363636363636363636363
-636363636363636363636363636363636363636363636363636363636363636363636363
-636363636363636363636363636363636363636363636363636363636363636363636363
-636363636363636363636363636363636363636363636363636363636363636363636363
-636363636363636363636363636363636363636363636363636363636363636363636363
-636363636363636363636363636363636363636363636363636363636363636363636363
-636363636363636363636363636363636363636363636363636363636363636363636363
-636363636363636363636363636363636363636363636363636363636363636363636363
-636363636363636363636363636363636363636363636363636363636363636363636363
-636363636363636363636363636363636363636363636363636363636363636363636363
-636363636363636363636363636363636363636363636363636363636363636363636362
-75ffffffff8787ffffffff87877731111a19191919191919191919191919191919191919
-191919191919191919191919191919191919191919191919191919191919191919191919
-191919191919191919191919191919191919191919191919191919191919191919191919
-191919191919191919191919191919191919191919191919191919191919191919191919
-191919191919191919191919191919191919191919191919191919191919191919191919
-191919191919191919191919191919191919191919191919191919191919191919191919
-191919191919191919191919191919191919191919191919191919191919191919191919
-191919191919191919191919191919191919191919191919191919191919191919191919
-191919191919191919191919191919191919191919191919191919191919191919191919
-191919191919191919191919191919191919191919191919191919191919191919191919
-191919191919191919191919191919191919191919191919191919191919191919191919
-191919191919191919191919191919191919191919191919191919191919191919191919
-191919191919191919191919191919191919191919191919191919191919191919191919
-191919191919191919191919191919191919191919191919191919191919191919191919
-191919191919191919191919191919191919191919191919191919191919191919191919
-191919191919191919191919191919191919191919191919191919191919191919191919
-191919191919191919191919191919191919191919191919191919191919191919191919
-191919191919191919191919191919191919191919191919191919191919191919191919
-191919191919191919191919191919191919191919191919191919191919191919191919
-19191919191919191919191919191919191919191919191919191919191919191919191a
-123affffffff8787ffffffff878763140000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-00001effffffff8787ffffffff8787631900000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-0000001effffffff8787ffffffff87876319000000050000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000003
-000000001effffffff8787ffffffff87876319000005ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff820000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff810000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7a747effffffffffffffffffbe687affffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7a68beff
-fffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffd000000b3ffffffffffffffff730000fdffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb000070
-ffffffffffffffffffffffffffffffffffffff5e82ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff5e82ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff00000000f8ffffffffffffff7f0000ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0400
-7effffffffffffffffffffffffffffffffffff3c0077ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff3c0077ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0000000080ffffffffffffff7f0000ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd
-fdffffffffffffffffffffffffffffffffffffff00007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff00007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0000080000c3ffffffffffff7f0000ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000081ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000081ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00007a230037ffffffffffff7f0000ffff
-fffffffffffff5827872bcfffffffffffffffff8f9ffffb9727881f6ffffffffffffffff
-ffffffffffffffffffffffbd727b72baffffffffffffeefbfcfffffffffffffffffbf3f8
-fff7f8fffffffffffff481787882f4fffffffffffefa050080fff7ffffffffffffbd727b
-72bafffffffffffffff8f8fffff4827872bafffffffffffefa050080fff7ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763190000
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00009b9d00007affffffffff7f0000ff
-ffffffffffc23100000000000176ffffffffff7c000cff44000000000077ffffffffffff
-ffffffffffffffffffffb100000000000034c2ffffffff460000b1ffffffffffff3b0000
-c2ff00007cffffffffb20000000000003efffffffa00000000000000faffffffb1000000
-00000034c2fffffffffa000096cb000000000030cafffffa00000000000000faffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787631900
-0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000089ff3c0003feffffffff7f0000
-ffffffffffb30000000003000000003effffffff7d00043b00000003000000bfffffffff
-ffffffffffffffffffff41000000020001000000b3ffffffff380000c1ffffffff410000
-b8ffff00007dffffffc0000000030200000041fffffb00000000000000fbffff41000000
-020001000000b3ffffffff0000380000000300000035fffffb00000000000000fbffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319
-000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff00007fffc8000045ffffffff7f00
-00fffffffff70000003fcdffff850b000079ffffff7f0000004bffffff4e000035ffffff
-ffffffffffffffffffffb200003dceffffff88000000f7ffffffc8000037ffffffb60000
-49ffffff00007fffffff350000c6ffffcf400000afffff85830000419182ffffb200003d
-ceffffff88000000f7ffffff00000000c2ffffc3000000bcffff85830000419182ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763
-19000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff00007fffff850000b3ffffff7f
-0000ffffffff8a000087fffffffffffd0c0004ffffff7f00003fffffffffff450000ffff
-ffffffffffffffffffffff000055ffffffffffffca00008affffffff8100007fffc40000
-3effffffff00007fffffff00007affffffffff002ac3ffffffff02008bffffffff000055
-ffffffffffffca00008affffff000000bfffffffffc300007affffffff02008bffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787
-6319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff00007ffffffb000000f8ffff
-7f0000ffffffff3a0006feffffffffffff830000bfffff7f0000caffffffffff850000ff
-ffffffffffffffffffffffbf0005ffffffffffffffff7f003affffffffff4b0000c24800
-00c6ffffffff00007fffffff030000beffffffffffffffffffffff00007fffffffbf0005
-ffffffffffffffff7f003affffff000043ffffffffffff00007fffffffff00007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87
-876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00007fffffffba00007fff
-ff7f0000ffffffff00007bffffffffffffffff00007affff7f0000ffffffffffff7f0000
-fffffff6fffffffffffff5ff7c00000300000000000000000000ffffffffffff03000000
-00bdffffffffff00007fffffff7e000000003689f6ffffffffffffff00007fffffff7a00
-000300000000000000000000ffffff000084ffffffffffff00007fffffffff00007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff
-87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00007fffffffff4d0000
-c3ff800000ffffffff000080ffffffffffffffff00007fffff7f0000ffffffffffff7f00
-00fffffa0000000000000000ff8500000000000000000000000000fdffffffffffca0000
-0058ffffffffffff00007fffffffff4700000000000031c0ffffffffff00007fffffff7f
-00000000000000000000000000fdffff00007fffffffffffff00007fffffffff00007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffff
-ff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff00007fffffffffff07
-0036ff8a0000ffffffff000080ffffffffffffffff00007fffff7f0000ffffffffffff7f
-0000fffffb0000000000000000ff850000898a868686868686868282ffffffffffffc100
-0000bdffffffffffff00007fffffffffffca3c0000000000003fffffffff00007fffffff
-7f0000898a868686868686868282ffffff00007fffffffffffff00007fffffffff00007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffff
-ffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00007fffffffffff
-800000989b0000ffffffff000077fffffffffffffffc000079ffff7f0000ffffffffffff
-7f0000ffffff8483878787878383ff7c0003fffffffffffffffffffffffffffffffffc00
-00000000c0ffffffffff00007ffffffffffffffffc907d0c000000baffffff00007fffff
-ff790003ffffffffffffffffffffffffffff00007fffffffffffff00007fffffffff0000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ff
-ffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00007fffffffff
-ffff3e001f780000ffffffff400004faffffffffffff7d0000c5ffff7f0000ffffffffff
-ff7f0000ffffffffffffffffffffffffc5000080ffffffffffffffaeb0f6ffffffffff41
-000684020038ffffffffff00007fffffffb073ffffffffffffcb000078ffffff00007fff
-ffffc5000080ffffffffffffffaeb0f6ffffff00007fffffffffffff00007fffffffff00
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787
-ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00007fffffff
-ffffffc80000050000ffffffff8e000080fffffffffff5080007ffffff7f0000ffffffff
-ffff7f0000ffffffffffffffffffffffffff070000b8ffffffffffb600003fffffffff7c
-000085ffc2000040ffffffff00007fffff870000b6ffffffffffff030089ffffff000086
-ffffffff070000b8ffffffffffb600003fffffff00007fffffffffffff00007fffffffff
-000086ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff87
-87ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00007fffff
-ffffffffff8600000000fffffffff901000036c4fffb7a0500007fffffff7f0000ffffff
-ffffff7f0000ffffffffffffffffffffffffff7f0000007dfbfffb7d000000c2ffffffb3
-00004cffffff4d0000b2ffffff00007ffffffa0100007dfbffffc6390005fbffffff0000
-43fff9ffff7f0000007dfbfffb7d000000c2ffffff00007fffffffffffff00007fffffff
-ff000043fff9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff
-8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00007fff
-fffffffffffffa02000000ffffffffffbb00000000000000000047ffffffff7f0000ffff
-ffffffff7f0000ffffffffffffffffffffffffffff4700000000000000000047fffffffd
-000002fffffffffe020000fdffff00007fffffff800000000000000000007dffffffff00
-00000000f2ffff4700000000000000000047ffffffff00007fffffffffffff00007fffff
-ffff0000000000f2ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffff
-ff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc000072
-ffffffffffffffffb9000000fcffffffffffcb3a00000000000982ffffffffff720000fc
-ffffffffff720000fcffffffffffffffffffffffffffff820900000000000981fffffff2
-240000bcffffffffffbc000024f9ff000072ffffffffb90300000000000880ffffffffff
-b80000000074ffffff820900000000000981fffffffffc000072fffffffffffc000072ff
-ffffffb80000000074ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effff
-ffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8575
-c3ffffffffffffffffff8a8185fffffffffffffffffe908680c7ffffffffffffffc37585
-ffffffffffffc37585ffffffffffffffffffffffffffffffffffc7808980c7ffffffffff
-c46d7cc3ffffffffffffffc37c6dc8ff8575c3ffffffffffffc7808980c7ffffffffffff
-fffffc8e8678c3ffffffffffc7808980c7ffffffffffffff8575c3ffffffffffff8575c3
-fffffffffffc8e8678c3ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001eff
-ffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001e
-ffffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f000000
-1effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000
-001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00
-00001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f
-0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff726f74747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-74747463baffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000074ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-0000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000000000
-0a0101010101010101010101010101010101010101010101010101010101010101010101
-010101010101010101010101010101010101010101010101010101010101010101010101
-010101010101010101010101010101010101010101010101010101010101010101010101
-010101010101010101010101010101010101010101010101010101010101010101010101
-010101010101010101010101010101010101010101010101010101010101010101010101
-010101010101010101010101010101010101010101010101010101010101010101010101
-010101010101010101010101010101010101010101010101010101010101010101010101
-010101010101010101010101010101010101010101010101010101010101010101010101
-0101010101010101010101010101020a1a22222011040101010101010101010101010101
-010101010101010101010101010101010101010101010101010101010101010101010101
-010101010101010101010101010101010101010101010101010101010101010101010101
-010101010101010101010101010101010101010101010101010101010101010101010101
-010101010101010101010101010101010101010101010101010101010101010101010101
-010101010101010101010101010101010101010101010101010101010101010101010101
-010101010101010101010101010101010101010101010101010101010101010101010101
-010101010101010101010101010101010101010101010101010101010101010101010101
-010101010101010101010101010101010101010101010101010101010101010101010101
-0101030a000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-84ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7c797e6cc4ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff040000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-0081ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0000000078ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763190000
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787631900
-0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319
-000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763
-19000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787
-6319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-fffffffffffffffffffffffff8fdfbffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffafffffffdecffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87
-876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-fffffffffffffffffffffb751c0000006af0ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff8f77ffffff6300f3ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff
-87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffff2a003d9091420000a7ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff006effffffc179ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffff
-ff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffff2c00c4ffffffffc60000efffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0087ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffff
-ffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffb900c3ffffffffffffbc0086ffffb36cfc7051aeffffffac60
-60acffffffffffffed6f656572efffffb75d003066b3ffb35dffffb36affb06060aeffff
-ffffffffae615fb6ff67b3ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ff
-ffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffff2500ffffffffffffffffc6ffffff7200200000b2ffff2900
-00000029ffffffffa6000000000000a6ff770000000073ff6f00feff7200230000000033
-ffffffff2c000000005f0072ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787
-ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffff0072ffffffffffffffffffffffff7e0042ffffffff2900
-c6ffffc6002cffffa40044ffffffcd0000ffffff0080ffffff7900ffff7e0000c7ffff52
-00b6ffff2c0090ffff8e00007effffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff87
-87ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffff007affffffffffffffffffffffff7b00d0fffffff100
-daffffffffdc00b3ffbd7effffffffff8600ffffff007bffffff7900ffff7b00cbffffff
-ff0075fff30084ffffffff8e007effffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff
-8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffff007affffffffffffffffffffffff7a00ffffffff80
-00736c66666c720076fffffffffff7ffc22400ffffff0079ffffff7900ffff7a00ffffff
-ffff0079ff7d00ffffffffffff007affffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffff
-ff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffff0067fffffffffffffffffcffffff7900ffffffff
-7d000000000000000081fffffb731a0000000000ffffff0079ffffff7900ffff7900ffff
-ffffff0079ff7800ffffffffffff0079ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effff
-ffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffff6a00ffffffffffffffff6e4cfeff7900ffffff
-ff7500fffffffffffffffffffe29003e9384e68900ffffff0079ffffff7900ffff7900ff
-ffffffff0079ff7400ffffffffffff007affffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001eff
-ffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffc100abfffffffffffffb0026ffff7900ffff
-ffffc500c1ffffffffffeef6ff7c00d0ffffffff7600ffffff007affffff7900ffff7900
-ffffffffff0079ffc500bdffffffffc2007dffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001e
-ffffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffff4400a8fffffffffa2f00caffff7900ff
-ffffffff0026fdffffffa200bbff7300fdffffffa80000ffffff0074ffffff7900ffff79
-00ffffffffff0079ffff0026fdfffffb34007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f000000
-1effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffff45001e6a66590000c2ffffff7600
-ffffffffffbf00005c6f240041ffffc400005d6d18002a00ffffff000053b4ff7600ffff
-7600ffffffffff0076ffffbf00005f5d0000007effffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000
-001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffff983a00000078caffffffff7d
-00fbffffffffffd13900000088ffffffffd139000033ded300baffffbc000075ff7d00fb
-ff7d00fbfffffffb007dffffffd83a000050ff0079ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00
-00001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-fffdfffffffffffffffffffffffffffffffffffffffffffffffcfefffffffffffffffffd
-fffffffdfffffffffffdffffaf61ffffffffffff0085ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f
-0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7a00aaffffffff2d00feffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffa0600226b6a1c0081ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff8b00000035d0ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff030000008cffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffad566b6b6b6b707000000000357a6b6b6b6b6a57c0ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffb900000000000000000000000000000000000000f2ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff45000000000000000000000000000000000089ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffcb000000000000000000000000000000000affffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff440000000000000000000000000000008affffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffcb00000000000000000000000000000affffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff44000000000000000000000000008affffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffcb0000000000000000000000000affffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff4400000000000000000000008affffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffcc0000000000000000000005ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763190000
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff44000000000000000000c5ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787631900
-0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffcc000000000000000045ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319
-000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff4400000000000000ccffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763
-19000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffcc00000000000044ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787
-6319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff440000000000ccffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87
-876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffcc0000000044ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff
-87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff44000000ccffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffff
-ff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc000044ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffff
-ffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3c00cbff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ff
-ffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc656ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787
-ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4f6fafffb
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff87
-87ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffff1f9ed6f6366696000000000
-002a6e6666636fedf9f1ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff
-8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffcac662a0000000000000000000000
-00000000000000000000002a66acfcffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffff
-ff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffff8b0570000000000000000000000000000
-0000000000000000000000000000000057b0f8ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effff
-ffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffeb752900000000000000000000000000000000
-00000000000000000000000000000000000000002975ebffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001eff
-ffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffed67000000000000000000000c0b0a0a0151a39a
-9a9a9a9a9a9a9d9113070a0a0f000000000000000000000067edffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001e
-ffffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffeb680000000000000000000351a9ffffffffffffff
-ffffffffffffffffffffffffffffd78b170000000000000000000068ebffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f000000
-1effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffa300000000000000000351a9ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffd49b54030000000000000000a3ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000
-001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffaf250000000000000056a9ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffa9560000000000000025afffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00
-00001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffb2220000000000000050daffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffda500000000000000022
-b2ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f
-0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffa30000000000000052dbffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdb520000000000
-0000a3ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff2f00000000000052dbffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcb0d0000
-000000002fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffff137000000000052dbffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff99
-16000000000037f1ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffa3000000000000d0ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff5a000000000000a3ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffa400000000000ec8ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff9b040000000000a4ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff2f00000000005dffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffce0000000000002fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffc2f000000000059ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffdb5000000000002ffcffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7300000000005bffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff58000000000073ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffa70000000000d1ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff9d0500000000a7ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffb70000000000cfffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffd00000000000b7ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff605757
-57575750a2ffffffffffffffffffffffffffffffffff50acffffffffffffffffffffffff
-ffe5b3ffffffa748fdffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff2f00000000cdffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffcd000000002fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0000
-00000000000014adffffffffffffffffffffffffffffff006fffffffffffffffffffffff
-ffff1065ffffff7300f5ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff310000000057ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff570000000031ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-82ffffffffff9d0000b4ffffffffffffffffffffffffffff0079ffffffffffffffffffff
-ffffff007bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff32000000005bffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff5b0000000032ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-007affffffffffffd20020ffffffffffffeeeeffffffffffff0079ffffffffffeeeeffff
-ffffffe70074fff9fff9e5fffff8e6ffffeeeeffffffffffffffffeeedffffe4f8ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffa6000000005fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff5f00000000a6ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff0079ffffffffffffff8a00efffffffa909000009a9ffffffff0079ffffffa909000009
-a9ffff680000000066ff7100fbff72009f0f000011a8ffffffffab0d000025e10072ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffb50000000008ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff0800000000b5ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff0079ffffffffffffffff007affff990045a2a245009affffff0079ffff990045a2a2
-45009affd48f0049a0cdff7800ffff7c000048a5960000eeffff9a000594930700007dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff3000000000ccffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffcc0000000030ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff0079ffffffffffffffff0078ffff005affffffff5d00eeffff0079ffff005affff
-ffff5d00f1ffff0084ffffff7900ffff7e0061ffffffd4007dffff003fffffffff4c007e
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763190000
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffa300000000ceffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffce00000000a3ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff0079ffffffffffffffff0079ffaf00f3fff2f2fff4007bffff0079ffaf00f3ff
-f2f2fff4007bffff0079ffffff7900ffff7a00ffffffffff0079ffaf00d1ffffffffd500
-7bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787631900
-0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffef0000000047ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4900000000ef
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff0079ffffffffffffffff0078ff7900000000000000006fffff0079ff790000
-0000000000006fffff0079ffffff7900ffff7900ffffffffff0079ff7500ffffffffffff
-007affffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319
-000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7100000001d3ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd000000000
-71ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff0079ffffffffffffffb5008eff7900a2a19c9c9c9d91d0ffff0079ff7900
-a2a19c9c9c9d91d0ffff0079ffffff7900ffff7900ffffffffff0079ff7700ffffffffff
-ff0079ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763
-19000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffff6000000008dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff470000
-0000f6ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff0079ffffffffffffff6700feff8b00ffffffffffffffffffff0079ff8b
-00ffffffffffffffffffff0079ffffff7900ffff7900ffffffffff0079ff8b00f5ffffff
-fff6007bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787
-6319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff3300000049ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd301
-00000033ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff007dffffffffffffa50053fffffd006dfffffffff94dbbffff0079ff
-fd006dfffffffff94dbbffff0082ffffff7900ffff7900ffffffffff0079fffd006effff
-ffff78007effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87
-876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffb600000000d0ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-9100000000b6ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0071fff2f2f5eb5e0000ffffffff4f005eebfdae0900f2ffff0079
-ffff4f005eebfdae0900f2ffff002deefbff7900ffff7900ffffffffff0079ffff4e005d
-eeed5d00007effffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff
-87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff2f0000005effffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff0e0000002fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffc00000000000000004bd8ffffffffff570000000000c7fffffc00
-6bffffff570000000000c7ffffff51000067ff6b00fcff6b00fcfffffffc006bffffff59
-0000000096007bffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffff
-ff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffb20000000fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff8e00000000b0ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff9c9d9e9e9e9e96d7ffffffffffffffffd6969ca4ffffffffff
-8fceffffffffd6969ca4ffffffffffffa28ecfffce8fffffce8fffffffffff8fcefff7ea
-ffd99696e0ff0074ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffff
-ffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff6a00000091ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff1000000081ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff69
-00faffffffffa400c9ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ff
-ffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00000000ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7a00000030ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-c60013adf9fb9d0038ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787
-ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffb50000000cffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffd000000000f1ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff97050000000048deffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff87
-87ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff6b0000007effffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0e00000086ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffa49d97d6ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff
-8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffff00000000091ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff790000002effffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffff
-ff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff8500000000ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffd000000000ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effff
-ffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff2f0000004effffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff0e000000b4ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001eff
-ffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffff1000000007cffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff790000006affffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001e
-ffffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7f00000000d1ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffd100000000ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f000000
-1effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7e00000000ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff00000000ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000
-001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff8500000000ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff00000000b2ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffa58effffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00
-00001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff2d0000000bffffffffff
-ffffffffffffffe6edefefeff0eaffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffff3ffffffffffffffffffffffff0b0000007bffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff73001fa7ffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f
-0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff0000000080ffffffff
-fffffffffffffffb000000000000000ca4ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7d71ffffffffffffffffffffffff8000000080ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7f0000001ea7ffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffff0048b3a0a1a3980c0021f7ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff0070ffffffffffffffffffffffff7f0000006effffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7f0000000000246ae5ffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffff0083ffffffffffff600066ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff0089ffffffffffffffffffffffff7f00000000ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7f00000000000000005ee8ffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007dff
-ffffffffffffffffffffff0079ffffffffffffff4100ffffffffff9c47479cffffffffff
-4ec0ac3d4cffac4fffa0444ba0ffff99474b9fffffffffffe1584b4c5de2ffffffff4ebb
-f257495de1ffffab4400244ba7ffffffffffffffffffff7d00000000ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7f000000000000000000005ee8ffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb20000000091
-ffffffffffffffffffffffff0079ffffffffffffffd400acfffffb1a000000001afbffff
-ff000d000042ff74008800000000b42800000000b0ffffff9600000000000095ffffff00
-110000000000adff7f000000007cffffffffffffffffffff9100000000ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff8d0000000000000000000000004da0ffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7b00000000
-ffffffffffffffffffffffffff0079ffffffffffffffff0075ffff2200a7ffffa70022ff
-ffff0000d5ffffff7e0000d1ffdd000846e5ffdd001dffff9a0055ffffffdd0000feffff
-000060ffffdd001dffffff0084ffffffffffffffffffffffffff00000000b2ffac475a5a
-5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a
-5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a
-5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a
-5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a
-5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a
-5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a
-5a5a5a5a5a5a5a5a5a5a59682d00000000000000000000000000001da5ffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f000000
-00ffffffffffffffffffffffffff0079ffffffffffffffff0079ffac0091ffffffff9100
-acffff004bffffffff7b00d6ffffff7e00d8ffffff7a00ffffc994ffffffffff8900ffff
-ff004dffffffff7a00ffffff007affffffffffffffffffffffffff000000007bff750000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000001da5ffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000
-0000ffffffffffffffffffffffffff0079ffffffffffffffff0079ff7600ffffffffffff
-0076ffff007dffffffff7a00ffffffff7a00ffffffff7a00ffffffffffffe8f6ad1700ff
-ffff007effffffff7a00ffffff0079ffffffffffffffffffffffffff000000007dff7f00
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-00000000000000000000000000000000000000000000000000000000000000000001beff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d00
-000000ffffffffffffffffffffffffff0079fffffffffffffff20074ff7900ffffffffff
-ff0079ffff0079ffffffff7900ffffffff7900ffffffff7900fffffff55c0a0000000000
-ffffff0079ffffffff7900ffffff0079ffffffffffffffffffffffffff0000000091ff7b
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000001692fc
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff91
-00000000b2ffffffffffffffffffffffff0079ffffffffffffff8100d1ff7300ffffffff
-ffff0078ffff0079ffffffff7900ffffffff7900ffffffff7900fffff6190053aa9bf98e
-00ffffff0079ffffffff7900ffffff0079ffffffffffffffffffffffffb200000000ffff
-880012111111111111111111111111111111111111111111111111111111111111111111
-111111111111111111111111111111111111111111111111111111111111111111111111
-111111111111111111111111111111111111111111111111111111111111111111111111
-111111111111111111111111111111111111111111111111111111111111111111111111
-111111111111111111111111111111111111111111111111111111111111111111111111
-111111111111111111111111111111111111111111111111111111111111111111111111
-1111111111111111111111111111111a0800000000000000000000000000000019a3ffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007bffffffffffffffffffffffff0079ffffffffffffff1c00ffffcf00b5ffff
-ffffb8008effff0079ffffffff7900ffffffff7900ffffffff7900ffff7700dfffffffff
-7000ffffff0079ffffffff7900ffffff007bffffffffffffffffffffffff7b00000000ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff8a0000000000000000000000000019a4ffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffff0088ffffffffffeb2400cbffffff001bee
-ffffee1c00ffffff0079ffffffff7900ffffffff7900ffffffff7900ffff7300f0ffffff
-950000ffffff0079ffffffff7900ffffff006dffffffffffffffffffffffff7f00000000
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff8000000000000000000000001aa4ffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffff001a5a4c4c4f4600005effffffffcd00
-0047470000ceffffff0075ffffffff7500ffffffff7500ffffffff7500ffffce00004653
-06003600ffffff0075ffffffff7500ffffff00003ba8ffffffffffffffffffff7f000000
-4fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7f0000000000000000001aa4ffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff0000000085fffffffffffffffffffffffb160000000000004fe2ffffffffffff
-df4c00004cdffffffffb0183ffffffff8301fbffffff8301fbffffff8301fbffffde4c00
-0046eddc04b8fffb0183ffffffff8301fbffffcc0c007cffffffffffffffffffff850000
-0083ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7f000000000000001aa4ffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff0d0000002bffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2b00
-00007dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7f00000000001aa4ffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff8000000000ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-00000092ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7f0000001aa4ffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763190000
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7f00000000ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff74001ba6ffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787631900
-0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7800000000b0ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-b200000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff908dffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319
-000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffd20000000081ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff690000004dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763
-19000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff100000002bffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff0000000096ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787
-6319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff9300000000ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffb200000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87
-876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00000000b2ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff690000004fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff
-87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff4f00000069ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007cffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffff
-ff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff9500000000ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffb000000000d2ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffff
-ffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff12000000f2ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff6a00000011ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ff
-ffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7b0000006cffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffef000000007bffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787
-ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffcf00000000efffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff6c00000000cfffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff87
-87ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff4c0000006fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffef000000004cffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff
-8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffd400000000b2ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff6c00000000d4ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffff
-ff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff4c0000002affffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffef000000004cffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effff
-ffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffd400000000b4ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff6c00000000d4ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001eff
-ffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff6500000026f9ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffef0000000065ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001e
-ffffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1200000069ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff6c00000012ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f000000
-1effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9300000000
-f5ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffff50000000093ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000
-001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff120000
-0029fbffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffb2900000012ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00
-00001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9100
-0000002affffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff2a0000000091ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f
-0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-64000000009dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff9d0000000064ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff4f000000009bffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff9b000000004fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffd7000000000096ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff960000000000d7ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffd90300000000f2ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffff20000000003d9ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffda0400000028fdffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffe2800000004daffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffd50000000026ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffe52b00000000d5ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff64000000001aa1ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff97000000000064ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff66000000000099ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff95000000000066ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff6400000000009bffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffb24000000000064ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffae0b0000000051f4ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffe42b000000000baeffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffdb040000000025ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff97000000000004dbffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffd903000000001b9effffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffdf57000000000003d9ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffd41b0000000000179dffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffde540000000000001bd4ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff6a000000000000179dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff91000000000000006affffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff6b00000000000000
-179dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff9d17000000000000006bffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe96300000000
-00000015a2e8ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffe8a2150000000000000063e9ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763190000
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeb5d00
-000000000000001b4d98efffffffffffffffffffffffffffffffffffffffffffffffffff
-ffe9994d1b00000000000000005debffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787631900
-0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-aa2100000000000000000000475adde9e0ffffffffffffffffffffffffffffffe7e5ef99
-4d1b0000000000000000000021aaffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319
-000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffac21000000000000000000000000001b574e4f4699efe6e9dd574c4e514a000000
-000000000000000000000021acffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763
-19000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffab2217000000000000000000000000000000000000000000000000000000
-0000000000000000001722abffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787
-6319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffbe64100000000000000000000000000000000000000000000000
-000000000000001064beffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87
-876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffb9a62900000000000000000000000000000000000000
-000000000029a6b9ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff
-87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffe3aab5a924181b1b1a000000000000201a1b
-1824a9b5aae3ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffff
-ff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffb6afb2b2aae4ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffff
-ffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ff
-ffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdde3e5db
-f1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787
-ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa000000
-0073ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff87
-87ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff
-8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffff
-ff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effff
-ffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001eff
-ffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001e
-ffffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f000000
-1effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000
-001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00
-00001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f
-0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763190000
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787631900
-0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319
-000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763
-19000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787
-6319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87
-876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff
-87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffbcb43333445d4ffffffffffdb
-a5ffffffffffffffffffffffffffffffffffffffffffdba5ffffff9628fbffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffff
-ff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffed0600050b10000044ffffffff
-0067ffffffffffffffffffffffffffffffffffffffffff0067ffffff8000f7ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffff
-ffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff5500bcfffffff6630087ffff
-ff007dffffffffffffffffffffffffffffffffffffffffff007dffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ff
-ffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff0081ffffffffffff4000fe
-fad1006aebeffffffffcd8ded8fcffffffffedd4ffdfdadfdb006aebefffeeccffffffce
-f9ffdedbdefffffffffffffdd9d8fbffcfedffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787
-ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff0065ffffffffffffdea9
-ff670000000062ffff91000000000095ffffff6e00730000000000000062ff6b00fbfffa
-00524e0000003be9ffffff930000000fcc006effffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff87
-87ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff47004bd5e2ffffffff
-ffffe2ad0059c1deff78005fc3bbb50400a0ffff7d000bb0c6ebb40059c1dbff7800ffff
-ff000001b0c56c0059ffff83001eb2b11e00007dffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff
-8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffd91a000000364ecd
-f9ffffffff0081fffff90f63ffffffffef0078ffff7e00a1ffffffff0081ffffff7900ff
-ffff000ae7ffffff5300ffff004cffffffff59007effffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffff
-ff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc76b1a0000
-000df4ffffff0079ffffffffffffffffffe2007bffff7a00ffffffffff0079ffffff7900
-ffffff007fffffffff7d00ffaa00deffffffffe0007bffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effff
-ffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffea
-bd73000cedffff0079fffffffffac941332c00007dffff7900ffffffffff0079ffffff79
-00ffffff0079ffffffff7900ff7c00ffffffffffff007affffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001eff
-ffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9a35ffffffff
-ffffffe50075ffff0079fffffff20800070a1fad007bffff7900ffffffffff0079ffffff
-7900ffffff0079ffffffff7900ff7d00ffffffffffff0079ffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001e
-ffffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8a00aaffff
-ffffffffff0073ffff0079ffffff0f00bdffffffff007affff7900ffffffffff0079ffff
-ff7900ffffff0079ffffffff7900ff9b00ecffffffffee007bffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f000000
-1effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0711fe
-ffffffffff8e00d4ffff0083ffffff008cffffffff92007effff7900ffffffffff0083ff
-ffff7900ffffff0079ffffffff7900ffff005fffffffff6b007effffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000
-001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9300
-0094e5e0d4400064fffffe001fd6f6ff000099e8d23500007fffff7900fffffffffe001f
-d6f0ff7900ffffff0079ffffffff7900ffff630041d7d63f00007effffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00
-00001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-b21c000000000070ffffffff66000063ffd91600000012d80244ffff6900fbffffffff66
-000063ff6900fbfffb0069ffffffff6900fdffff7500000000b4007bffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f
-0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffbfb9bcb6e8ffffffffffffbdafddffffffbfb9bfffffdeaaffffdcaaffffffffff
-ffbdafddffdcaaffffffaadcffffffffdcaaffefd3ffebb6b4f3ff0073ffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff6600f2ffffffff8e00d5ffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffd3000093e4e6830044ffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffb11b0000000064ebffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffc0bbb7eaffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763190000
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787631900
-0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319
-000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763
-19000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787
-6319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87
-876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff
-87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffff
-ff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffff
-ffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ff
-ffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787
-ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff87
-87ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff
-8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffff
-ff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-0500000090ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effff
-ffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb726393b3b3b3f
-43000000001e473b3b3b3b3926b7ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001eff
-ffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0900000000
-0000000000000000000000000009ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001e
-ffffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0000000
-0000000000000000000000000000a0ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f000000
-1effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1900
-000000000000000000000000000019ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000
-001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0
-0000000000000000000000000000009cffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00
-00001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff1b0000000000000000000000000059ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f
-0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff9f00000000000000000000000000deffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff1b000000000000000000000057ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff9f0000000000000000000000ddffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff1c0000000000000000007bffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffc3000000000000000000ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffdc000000000000000055ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff5700000000000000dfffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffdf00000000000057ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff570000000000dfffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffdf0000000057ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff57000000dfffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffdf000059ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff4f00ddffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffe285ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffd4d1d5dedbffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffff8ccd5c94035373a3400000000000c3e37373540c9d5ccf8ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763190000
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffdd83350c000000000000000000000000000000000000000000000c
-3583ddffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787631900
-0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffff7d5872a0000000000000000000000000000000000000000000000000000
-000000002a87d5f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319
-000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffc9440900000000000000000000000000000000000000000000000000000000
-00000000000000000944c9ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763
-19000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffca3b000000000000000000002c2f2e2e257bd2c9c9c9c9c9c9c9ccc0372b2e2e
-3408000000000000000000003bcaffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787
-6319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffc83c000000000000000000247bd5ffffffffffffffffffffffffffffffffffffff
-fffff6b83f040000000000000000003cc8ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87
-876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7b0000000000000000247bd5ffffffffffffffffffffffffffffffffffffffffff
-fffffffffffff2cb7d2400000000000000007bffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff
-87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffe84060000000000000180d5ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffd580010000000000000684feffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffff
-ff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff8802000000000000017cfaffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffa7c010000000000000288ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffff
-ffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fc7b000000000000017cfaffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffa7d050000000000007bfcffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ff
-ffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ef100000000000017cfaffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffea3100000000000010efffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787
-ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-cc1900000000067dfaffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffc539000000000019ccffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff87
-87ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7f000000000010f0ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7e0000000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff
-8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa
-7c000000000033e6ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffc81700000000007c
-faffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffff
-ff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee
-10000000000080ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeb0c00000000
-0010eeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effff
-ffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe8
-1000000000007dffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8760000
-00000010e8ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001eff
-ffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-5e000000000585ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7d
-00000000005effffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001e
-ffffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-800000000013efffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffc8180000000080ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f000000
-1effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-a20000000014ecffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffee1400000000a2ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000
-001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-f01900000000e5ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffe50000000019f0ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00
-00001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-eb13000000007affffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7a0000000013ebffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f
-0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffd3324212020201a75fcffffffff
-fffffffffffffffffffffffd2194ffffffffffffffffffffffffffcf9bffffff8c13faff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff19000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7f0000000019ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff0001291e1e1f1a000084ffff
-ffffffffffffffffffffffffff0073ffffffffffffffffffffffffff0068ffffff8a12f8
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff840000000084ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff840000000084ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff0088ffffffffffcc0c009d
-ffffffffffffffffffffffffffff0079ffffffffffffffffffffffffff007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff9f0000000019ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff19000000009fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff0079fffffffffffff007
-0bfffffffffff3c7c7f3ffffffffff0079fffffffff3c7c7f3ffffffecc00062d6e5ffe4
-baffffffbcf1ffcec9cefffffffffffff3c7c6f3ffbee4ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff1d00000015eaffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffea150000001dffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff0079ffffffffffffff
-a300e0ffffff7e000000007effffffff0079ffffff7e000000007effff620000000060ff
-6a00fcfffc00463a00000028e2ffffff8200000003ba006dffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffa400000000e7ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffe700000000a4ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff0079ffffffffffff
-ffff0074ffff700073d6d6730073ffffff0079ffff700073d6d6730072ffefc00062d6e5
-ff7900ffffff00000ac6da7d0050ffff72002fc6c53000007effffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff1f00000059ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff5b0000001fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0079ffffffffff
-ffffff0079ffff008bffffffff8c00dbffff0079ffff008bffffffff8c00ddffff0080ff
-ffff7900ffffff0014f2ffffff5a00ffff0057ffffffff63007effffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7f00000015eaffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffe2000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0079ffffffff
-ffffffff0079ff9c00d3d8cdcdd8d40075ffff0079ff9c00d3d8cdcdd8d40075ffff0079
-ffffff7900ffffff0080ffffffff7c00ffa100e5ffffffffe8007bffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffe100000000a6ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff5b00000000e1ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0079ffffff
-ffffffffff0077ff7a000000000000000070ffff0079ff7a000000000000000070ffff00
-79ffffff7900ffffff0079ffffffff7900ff7c00ffffffffffff0079ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff5b0000001dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffe2000000005bffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0079ffff
-ffffffffffa0009eff7800d1d4cecececec4e7ffff0079ff7800d1d4cecececec4e7ffff
-0079ffffff7900ffffff0079ffffffff7900ff7c00ffffffffffff0079ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffe000000000a2ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff5b00000000e0ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0079ff
-ffffffffffff5600ffff9c00f0ffffffffffffffffff0079ff9c00f0ffffffffffffffff
-ff0079ffffff7900ffffff0079ffffffff7900ffa300e5ffffffffe7007bffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff5a0000005fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffe2000000005affffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0080
-ffffffffffff7e0079ffffff0055ffffffffe61eb3ffff0079ffff0055ffffffffe61eb3
-ffff0081ffffff7900ffffff0079ffffffff7900ffff0055ffffffff61007effffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffde00000000e2ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff5b00000000deffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-5edfcbcbcec22f000dffffffff74002ec2d6800000ffffff0079ffff74002ec2d6800000
-fffffe0014c3e8ff7900ffffff0079ffffffff7900ffff74002dc5c42d00007effffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7f0000005bffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffe2000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb
-00000000000000007cf5ffffffffff830000000026e5fffffc0069ffffff830000000026
-e5ffffff76000061ff6900fcfffc0069ffffffff6900fdffff8700000006c5007bffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff20000000e7ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5f0000001cff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffc9ccd0cfcfd0c9f4fffffffffffffffff4cacfd1ffffffffffbde5fffffffff4cacfd1
-ffffffffffffcfc3e7ffe5bdffffffbde5ffffffffe5bdffe6c3fff9cac9ffff0074ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff9f00000000ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa400000000
-e1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff6500e7ffffffff7d00ddff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff5b00000061ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763190000
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffdc00007fd2d471004dff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007dffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5e00
-00005effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787631900
-0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffc22d0000000079f4
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffa400000000e2ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa4
-00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319
-000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd1cfc9f4ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff1a0000001effffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00000000a1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763
-19000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffe10000000083ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff5e0000005bffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787
-6319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7900000000a1ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffa400000000feffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87
-876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffc6ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7f00000001ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff01000000ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff
-87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffc42d00f9ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff8500000000ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000009effffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffff
-ff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffc435000000ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff190000001dffffffffffffffffffffffffffffffffff
-ffffffffc2c5c9c8c8c8c9c2f0ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffe1b7ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff1d0000007cffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffff
-ffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffc4350000000000ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff0000000086ffffffffffffffffffffffffffffffff
-fffffffffa0000000000000000007effffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff6a00fbffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff8600000082ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ff
-ffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffc43500000000000000
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffff0061e6d0d1d1d3ce10009cffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7900ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7f0000005effffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787
-ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffc4350000000000000000
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffff007ffffffffffffff40b09ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7d00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7f00000000feffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff87
-87ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffc433000000000000000000
-0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007cffffffffffffffffffffffffff
-ffffffffffffffff0079ffffffffffffff8500fffffffff46a13136af4ffffffffffbb25
-18192cbdffffffffffbb25162bdc8700ffbe1bd8ffffffff931af8ffffffffffffffffff
-ffffffffffffffffffffff7c00000000ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff
-8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffc23300000000000000000000
-000004ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff9e00000000a3ffffffffffffffffffffffff
-ffffffffffffffffff0079ffffffffffffff5900ffffffe4000029290000e5ffffff6e00
-1f252b000071ffffff6e001e2c00000600ffff0072ffffffff0045ffffffffffffffffff
-ffffffffffffffffffffffffa300000000ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffff
-ff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffc2330000000000000000000000
-00000000352e2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d
-2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d
-2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d
-2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d
-2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d
-2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d
-2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d282ffdff7c00000001ffffffffffffffffffffffff
-ffffffffffffffffffff0088fffffffffffc710053ffffff0000f7fffff70003ffff8600
-7cfffffffc1200fdff960084ffffff810000ffff5003ffffffdd00a0ffffffffffffffff
-ffffffffffffffffffffffffffff010000009effffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effff
-ffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff0000000083ffb532000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000ffff7f00000000ffffffffffffffffffffff
-ffffffffffffffffffffff000424181d283000002fe4ffffdc00ffffffffffff0097ffe1
-c4ffffffffff8d00ffff4a0cffffffffff1d00ffffa000ddffff7500ffffffffffffffff
-ffffffffffffffffffffffffffffff000000007cffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001eff
-ffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0000000089d700000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-00000000000000000000000000000000000000ffff7f00000000ffffffffffffffffffff
-ffffffffffffffffffffffff000c322823000022daffffffff7800291b18181b260074ff
-fffffff2c1ce7c0000ffff007cffffffffff7f00ffffff0075ffff0250ffffffffffffff
-ffffffffffffffffffffffffffffffff000000007cffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001e
-ffffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0000000083fffa8606000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000ffff7c00000000ffffffffffffffffff
-ffffffffffffffffffffffffff0089ffffffcc001fffffffffff7d00312a26262629209b
-ffffe127000000010f00ffff0079ffffffffff7900ffffff5002ffe400a0ffffffffffff
-ffffffffffffffffffffffffffffffffff00000000a3ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f000000
-1effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffff8606000000000000
-00000000000000003e3b3737373737373737373737373737373737373737373737373737
-373737373737373737373737373737373737373737373737373737373737373737373737
-373737373737373737373737373737373737373737373737373737373737373737373737
-373737373737373737373737373737373737373737373737373737373737373737373737
-373737373737373737373737373737373737373737373737373737373737373737373737
-373737373737373737373737373737373737373737373737373737373737373737373737
-37373737373737373737373737373737373737323afcffa3000000009effffffffffffff
-ffffffffffffffffffffffffffff0079ffffffff7f0077ffffffff7400ffffffffffffff
-ffffe0000084d9cbff9300ffff007affffffffff7e00ffffffa000ff8400ffffffffffff
-ffffffffffffffffffffffffffffffffff9e00000001ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000
-001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff8707000000
-000000000000000005ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff010000007cffffffffffff
-ffffffffffffffffffffffffffffff0079ffffffffff5a009dffffffe3009fffffffffff
-b6dbff7100feffffffff5c00ffff5006ffffffffff1700ffffffff007c2150ffffffffff
-ffffffffffffffffffffffffffffffffffff7c00000000ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00
-00001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff8707
-00000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffff0079ffffffffffed0a03e7ffffff0903c8fffffd
-6400cfff7400cbfffffb690000ffff9b006ffefffd750000ffffffff570000a2ffffffff
-ffffffffffffffffffffffffffffffffffffff7f00000000ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f
-0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ff87070000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffff0072ffffffffffffa30043ffffffed01001420
-000077ffffe60400141e000f5100ffffff7b00002300000500ffffffffa50000ffffffff
-ffffffffffffffffffffffffffffffffffffffff7f00000063ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffff8707000000000000ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000000085ffffff
-fffffffffffffffffffffffffffffffffffd2797ffffffffffffff7e18b4fffffffc7c22
-2638c8fffffffffb7c222075fff029b7ffffffc8382438daa72efdffffffff0059ffffff
-ffffffffffffffffffffffffffffffffffffffffff8500000081ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffff870700000000ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1f00000019ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1009fffff
-ffffffffffffffffffffffffffffffffffffffffffff190000007cffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffff87070000ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8600000000ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4e07ffff
-ffffffffffffffffffffffffffffffffffffffffffffff00000000a3ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffff8009f3ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00000000
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8c02009eff
-ffffffffffffffffffffffffffffffffffffffffffffffff00000001ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-fffffffffffffffffffffffffffffff0ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7a000000
-009dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff940e82ff
-ffffffffffffffffffffffffffffffffffffffffffffffffa000000000ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe50000
-000083ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff580000005fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1e
-00000017ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00000000a7ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-aa00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffa000000000ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff00000000a0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff5800000062ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff5f00000058ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007cffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffa400000000ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffa000000000e5ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff24000000e3ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5b00000021ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff8100000056ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffde0000000081ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffe300000000deffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5600000000e3
-ffffafecffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff5f00000059ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffde000000005f
-fffffe00002c32bbc4c7ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763190000
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffe6000000009cffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5600000000
-e6ffffffa8000000000000272176cbc7ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787631900
-0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff5f00000019ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdc00000000
-5fffffffffff2300000000000000000000272176cbbcf0ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319
-000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffe400000000a1ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff56000000
-00e4ffffffffffa9000000000000000000000000000000042b2ea2dcffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763
-19000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff890000000fe4ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdc000000
-0089ffffffffffffff23000000000000000000000000000000000003ddffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787
-6319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffefabdbffffffffffff2400000054ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff560000
-0024ffffffffffffffffa90000000000000000000000000000000000a8ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87
-876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffefbcc5b930242e0000d4ffffffffffffa900000000e1ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe10000
-0000a9ffffffffffffffffff2300000000000000000000000000000089ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff
-87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc6c0cb
-741f272e04000000000000005fffffffffffffffff230000000ee3ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe30e00
-000023ffffffffffffffffffffa9000000000000000000000000000063ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffff
-ff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffdbba731f29260000
-00000000000000000000000000e5ffffffffffffffffa60000000014ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1400
-000000a6ffffffffffffffffffffff260000000000000000000000001aedffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffff
-ffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd2000000000000
-000000000000000000000000005effffffffffffffffffff8c000000007affffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7a00
-0000008cffffffffffffffffffffffff81000000000000000000000002fdffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ff
-ffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8a00000000
-000000000000000000000000001bf0ffffffffffffffffffffff1f0000000075ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7500
-0000001fffffffffffffffffffffffffffe500000000000000000000000079f3ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787
-ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff220000
-0000000000000000000000000000adfffffffffffffffffffffffff21b0000000070ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7000
-0000001bf2ffffffffffffffffffffffffffff6200000000000000000000000008e8ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff87
-87ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeb00
-000000000000000000000000000023ffffffffffffffffffffffffffffed0000000000e0
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe000
-00000000edffffffffffffffffffffffffffffffe700000000000000000000000000007b
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff
-8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-860000000000000000000000000000abffffffffffffffffffffffffffffff8500000000
-0de6ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe70d
-0000000085ffffffffffffffffffffffffffffffffff620000000000002b880000000000
-0078ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffff
-ff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7200000000000000000000000022ffffffffffffffffffffffffffffffffff8b0000
-00000ce9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf12
-000000008bffffffffffffffffffffffffffffffffffffe700000000001dfcffd71e0000
-00000029e1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effff
-ffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffa9000000000000000000000000a8ffffffffffffffffffffffffffffffffffff64
-00000000007affffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7200
-0000000064ffffffffffffffffffffffffffffffffffffffff6200000000a9ffffffee42
-000000000011bdffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001eff
-ffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffff36c00000000000000000000000066ffffffffffffffffffffffffffffffffffffff
-ed18000000000074ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff16d00
-0000000027f9ffffffffffffffffffffffffffffffffffffffffe70000008bffffffffff
-ff8d00000000000072ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001e
-ffffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffbd0c00000000000000000000000000e7ffffffffffffffffffffffffffffffffffff
-fffff418000000000076ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe50500
-000000002969edffffffffffffffffffffffffffffffffffffffffff600063ffffffffff
-ffffff940d00000000006bf2ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f000000
-1effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff74000000000000190000000000000062ffffffffffffffffffffffffffffffffffff
-ffffffffff85000000000028deffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbd1000
-00000000a79c00007affffffffffffffffffffffffffffffffffffffffd915e8ffffffff
-fffffffffff918000000000006e7ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000
-001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffe32800000000001bebb200000000000000e6ffffffffffffffffffffffffffffffffff
-ffffffffffffff8900000000000ae8ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff740000
-0000000098fe1c0000006bf2fffffffffffffffffffffffffffffffffffffff0ffffffff
-ffffffffffffffff850000000000007affffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00
-00001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7c00000000000083ffffff6300000000008affffffffffffffffffffffffffffffffff
-ffffffffffffffffffd721000000000072f4ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffba2e0000
-00000021daff31000000000006e7ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff8900000000000076ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f
-0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-e22800000000001fd8ffffffffef1b00000025ffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffff51700000000000071f3ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb62c000000
-00000017f5ffffe74200000000000078ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffd81f000000000027e0ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7b00000000000043f0ffffffffffffec000000acffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff880000000000000071f3ffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff46a00000000
-00000087ffffffffffff8b0000000000006bf0ffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffff04300000000000fbcffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0
-2700000000000e96ffffffffffffffffff8c001fffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffff3ff940b0000000000000071f3ffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3710000000000
-00000b93ffffffffffffffffd81f000000000006e5ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff8d00000000000072ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbc
-0f000000000043f3ffffffffffffffffffffff0e98ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffe21a09ffffff8f0c0000000000000075caffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffca75000000000000
-000c8ffffffffffffffffffffffff043000000000010bcffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff950f00000000006af0ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffdfb1bebdbdbdbdbbc0ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffacdbff
-ffffffffffffffffffffdbabffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffabb1ffffffffff
-ffffffe19dd9ffabdbffffffffffffffffffffffffffacdbffffffffffffffffdbacffff
-ffabdbffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff267
-00000000000d98fffffffffffffffffffffffffff3ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7b00000073ffffffff8500000000000000001970caffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffecc0731900000000000000
-0085ffffffffffffffffffffffffffffff8c00000000000073ffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffff918000000000006e7ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff6e0000000000000000
-1cdcfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb0069
-ffffffffffffffffffffff5c00f2ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6f00d7ffffff
-ffffffff3e00e5fa005cfffffffffffffffffffffffffb0069ffffffffffffffff6900fb
-fff2005cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbc0c
-000000000044f3ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffe2260000000000ceffffffffd34600000000000000000019
-70cafffffffffffffffffffffffffffffffffffffffffff0ad3300000000000000000000
-46d3ffffffffffffffffffffffffffffffffffd921000000000026e0ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff8700000000000078ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7b00dae1dbdcdbe7
-8a0007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-79ffffffffffffffffffffffecc9ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1300deff
-ffffffff6900a6ffffc9ecffffffffffffffffffffffffff0079ffffffffffffffff7900
-ffffffc9ecffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff06700
-00000000008cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff790000000000003cdeffffffffffffd54800000000000000
-00000021242324212db4c0bdbdbdbdbdbdc6701b2423232a020000000000000000000048
-d5fffffffffffffffffffffffffffffffffffffffff51900000000000fbaffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff8a00000000000075ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7900ffffffffff
-ffff910095ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-0079ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeb0049
-ffffffffd9005cffffffffffffffffffffffffffffffffffff0079ffffffffffffffff7e
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffba0c00
-000000001fd8ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffe02700000000000f97ffffffffffffffffffffd24b3c000000
-0000000000000000000000000000000000000000000000000000000000000000003c4bd2
-ffffffffffffffffffffffffffffffffffffffffffffffff8800000000000071ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffd921000000000026
-deffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7900ffffffff
-ffffffff0078ffffffffae190919aeffffffffffec5d070e0964edffffffffec5d07096b
-f0007aff425dffffffffff1188ff8c12fdff8d22e761070964ebffffffffed64090873ff
-1d8dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff87
-0097ffffff030af0fffffd128cffffffec5d07075decffffffff0079ffffffae190a1fd0
-8500fffffd128cfffd1898c2190a20b1ffffffffffb2200b1af0a417fdffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffef680000
-0000000086ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7900000000000045f3ffffffffffffffffffffffffffffe68f
-37000000000000000000000000000000000000000000000000000000000000378fe6ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff951000000000006aefff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffef4500000000
-0010baffffffffffffffffffffffffffffffffffffffffffffffffffffffff7900ffffff
-ffffffffe40077ffffff65002b352b0065ffffffdd00003735300000daffffdd0000392d
-0000007eff6d00ffffffff9400dfff7400ffff7800000039300003ffffffdd00002e2d00
-180078ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff1400e4ff6a00a6ffffffff0074ffffdd000037370000deffffff0079ffff65002b3a00
-000100ffffff0074ffff0000002a3b030093ffffff6800004000000400ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe6070000
-0000001fd8ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffe02700000000000f97ffffffffffffffffffffffffffffffffff
-ffffdfd05310000000000000000000000000000000000000000000001053d0dfffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffff819000000000007
-e6ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8e0000
-0000000073ffffffffffffffffffffffffffffffffffffffffffffffffffffff7a00ffff
-ffffffffbc0300e4ffff90008cffffff8c0092fffb0000faffffff970075ffff000afeff
-ffde23007fffe60097ffffff450cffff7900ffff7e001cfcffff940095ffff000fddffff
-db1f007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffff60354ec0087ffffffffff0079ffff0007fefffffe0800ffffff0079ff92008dffff
-ff8b0000ffffff0079ffff000090ffffff1303ffff920087ffffff870000ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff79000000
-00000086ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7900000000000045f4ffffffffffffffffffffffffffffffffff
-fffffffffffffdd7e0d44b3f42453f0000000000134942423f4bd4e0d7fdffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8800000000
-000077ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff95
-10000000000025ddffffffffffffffffffffffffffffffffffffffffffffffffff7e001b
-100f18231a00008effffff4463ffffffffff6901ffffcaf5ffffffffff007bffd800abff
-ffffffb2007effff0c45ffffff0079ffff7900ffff7b00f5ffffffff0077ffd800acffff
-ffffb2007effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffa5000017ffffffffffff0079ffd600ffffffffffff0093ffff007aff4511ffff
-ffffff2100ffffff0079ffff0066ffffffff8100ffff4511ffffffffff2100ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe025000000
-00001fdaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffdf2400000000000f97ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffdddcddddd7feffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8c0000
-000000006aefffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffa19000000000009e6ffffffffffffffffffffffffffffffffffffffffffffffff7d00
-3c363807000092ffffffffff00001b0c0c0c190000feffffffffbebab027007eff7300ff
-ffffffffff007affff7900ffff9600e7ffff7900ffff7900ffffffffff0079ff7300ffff
-ffffffff007affffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff6500f2ffffffffffff0079ff76001e0f0c0c0e1a0074ffff007eff007dff
-ffffffff8000ffffff0079ffff007bffffffff7900ffff007dffffffffff8000ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7800000000
-000089ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffb90e000000000046f4ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffda
-22000000000005e4ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff8900000000000076ffffffffffffffffffffffffffffffffffffffffffffff7a
-00ffffffff6000abffffffffff001242333434353744fdffff6b0000000034007dff7900
-ffffffffffff0079ffffe70099ff450effffff7900ffff7900ffffffffff0079ff7900ff
-ffffffffff0079ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7c00ffffffffffffff0079ff7d003d38343434362da2ffff007fff0079
-ffffffffff7900ffffff0079ffff0079ffffffff7900ffff0079ffffffffff7900ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe02500000000
-000f97ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffff06600000000000f99ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fff14600000000000075ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff9710000000000068efffffffffffffffffffffffffffffffffffffffffff
-7900fffffffff21000e1ffffffff0089ffffffffffffffffff64003dd2dde6ff007aff75
-00ffffffffffff007affffff0d50ff0079ffffff7900ffff7900ffffffffff0079ff7500
-ffffffffffff007affffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7900ffffffffffffff0079ff7600ffffffffffffffffffff007eff00
-79ffffffffff7d00ffffff0079ffff0079ffffffff7900ffff0079ffffffffff7d00ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff760000000000
-0046f4ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffb90b000000000047f4ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff8e00000000000073ffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffb1d000000000004e2ffffffffffffffffffffffffffffffffffffff
-ff7900ffffffffffec0005ffffffff5501ffffffffffdfa8ffff006cffffffffe8007bff
-e7009affffffffa2007effffff78009600e7ffffff7900ffff7900ffffffffff0079ffe7
-009affffffffa2007effffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7900ffffffffffffff0079ffe7009affffffffffacd7ffff007aff
-5401ffffffffff1300ffffff0079ffff0079ffffffff7900ffff5401ffffffffff1400ff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0680000000000
-0f99ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffff0660000000000008effffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffda22000000000025ddffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffff04600000000000fb9ffffffffffffffffffffffffffffffffff
-ffff7900ffffffffffff8b006dffffffa10064f6ffffba003fffff004dffffffb607007e
-ffff0f00bcffffbd12007fffffffe600001cffffffff7900ffff7900ffffffffff0079ff
-ff0f00bcffffbb0c007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763190000
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7900ffffffffffffff0079ffff0f00bcfffff65a00d4ffff0079
-ffa10064f6fff66b0000ffffff0079ffff0079ffffffff7900ffffa10064f6fff5650000
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb90b0000000000
-46f4ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffb90b00000000001edaffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffff14600000000000eb9ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff8d00000000000072ffffffffffffffffffffffffffffff
-ffffff7100ffffffffffffff1700c8ffffff85000012090008edffff8100001204007400
-6dfffff20a000a0a000a0076ffffffff230082ffffffff7100ffff7100ffffffffff0071
-fffff30a000a09003b007dffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787631900
-0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7100ffffffffffffff0071fffff20a000912000082ffffff00
-71ffff8500001600000900ffffff0071ffff0071ffffffff7100ffffff86000016000b1c
-00fffffffffffffffffffffffffffffffffffffffffffffffffffffff066000000000010
-99ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffff06600000000000087ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff9100000000000072ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffdc23000000000023dcffffffffffffffffffffffff
-ffffffff9c32feffffffffffffed3455fdffffffd244322e87ffffffffffd2442f3ed2ff
-8353ffffffff872e2e8bff409dffffffff8400eaffffffff9c32feff9c32fefffffffe32
-9cffffffff882e2d97ff0077ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319
-000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff9e33fefffffffffffe339effffffff872f3445d2fffffffe
-339effffffd2453245e4af39fdfffe339efffe339effffffff9e33ffffffffd7453240ff
-9400ffffffffffffffffffffffffffffffffffffffffffffffffffffb70b00000000001b
-faffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffb70b000000000020dbffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff9812000000000023ddffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffff61a000000000009e5ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff460dffffffffffffffffffffffffffffffff
-ffffff8513ffffffffffe500a1ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763
-19000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0d95ffffffff
-ff4b0bffffffffffffffffffffffffffffffffffffffffffffffffef6500000000000087
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffef6500000000000087ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffa1b00000000000eb8ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff8b00000000000074ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffdf00a4ffffffffffffffffffffffffffffff
-ffffffff9b0065f6ffffe70011ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787
-6319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0900bbffff
-ff6e00a6ffffffffffffffffffffffffffffffffffffffffffffffb70b000000000020db
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffb70b000000000020dbffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff8b0000000000006effffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff9812000000000067edffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffff7190012ffffffffffffffffffffffffffffff
-ffffffffffff430000100e0000b0ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87
-876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb0000007
-0d050040ffffffffffffffffffffffffffffffffffffffffffffff7000000000000087ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffef6500000000000087ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff9812000000000067edffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffa1d000000000005e2ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffb383becffffffffffffffffffffffffffff
-ffffffffffffffffd445342e84ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff
-87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff88
-2f3340d2ffffffffffffffffffffffffffffffffffffffffffffdf24000000000020dbff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffb70b000000000020dbffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffa1b000000000005e4ffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffff04800000000000fb7ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffff
-ff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7700000000000088ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffef6500000000000088ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff8b00000000000074ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8f000000000000
-70ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffff
-ffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffde24000000000023ddffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffb609000000000021dbffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff8e00000000000065ec
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdd25000000
-000022daffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ff
-ffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7700000000000048f2ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffee6300000000000088ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdd230000000000
-03e1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81b00
-0000000007e4ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787
-ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffdc220000000000119cffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffb60a000000000021dbffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff249000000
-00000eb6ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-8c00000000000073ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff87
-87ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffb70d000000000049f5ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffee6300000000000088ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9000
-00000000006fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff9a13000000000065ecffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff
-8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffee630000000000119cffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffb60a000000000021dbffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-dd25000000000022dcffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffc1e000000000003e1ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffff
-ff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffb60a000000000049f5ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ec6300000000000088ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffff81b00000000000db6ffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffff14900000000000eb6ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effff
-ffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffee6300000000000090ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-e304000000000021dbffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff8c0000000000006fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff900000000000006fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001eff
-ffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffb50a000000000021dcffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-750000000000008affffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff9b13000000000022daffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffdd25000000000022daffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001e
-ffffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffec620000000000008affffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffde
-23000000000021dcffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffb1d000000000008e2ffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffff71d000000000008e2ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f000000
-1effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffe204000000000021dcffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff75
-0000000000008cffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff8c00000000000073ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff8c00000000000073ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000
-001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff750000000000008affffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffde23
-0000000000119bffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff9b13000000000064ecffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff9b13000000000064ecffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00
-00001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffde23000000000021dcffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7500
-00000000004af5ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffc20000000000004e2ffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffc20000000000003dfffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f
-0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff750000000000008cffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffde2300
-00000000119dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffff14a00000000000073ffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffff14a00000000000eb5ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffdd210000000000139bffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff740000
-000000004af5ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff9200000000000064ebffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff920000000000006dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff740000000000004cf7ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdd210000
-000000139fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffde24000000000002e0ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffde26000000000021d9
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffdb200000000000139effffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff74000000
-0000004cf7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffff34c00000000000db3ffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff91e0000000000
-06e1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffb40c00000000004cf7ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdd21000000
-0000139effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff920000000000006d
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8f000000
-00000070ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffec610000000000139effffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7400000000
-00004cf7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffde2600000000
-0021dbffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9c14
-000000000063ebffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffb30800000000004cf7ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdd2100000000
-00139effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff91e0000
-0000000cb3ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fd21000000000002deffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffec6100000000000093ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff720000000000
-004cf7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8f
-0000000000006affffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffff24c00000000000db3ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffb308000000000024ddffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdb210000000000
-139effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff9c14000000000063ebffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff930000000000006cffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff6c0000000000008cffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff73000000000000
-4cf7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffc1f000000000003e0ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffde27000000000021d8ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffdb20000000000024dfffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffdb20000000000013
-9effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff8f00000000000070ffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffff91e000000000006e1ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff730000000000008cffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff730000000000004d
-f6ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff9100000000000063ebffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff8f00000000000070ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffdb20000000000026e0ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffdb20000000000014a0
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffe026000000000003dfffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff9e15000000000061eaffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff710000000000004cf5ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff6f0000000000004df8
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffff44d0000000000006effffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffe22000000000001ddffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffdb20000000000014a0ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffeb61000000000014a0ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff940000000000006cffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffff34d00000000000cb2ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff6f0000000000004df8ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffb20700000000004df8ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffe02600000000001fd9ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff940000000000006bffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763190000
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffeb61000000000014a0ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffeb5f000000000015a0ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffff44d00000000000bb2ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffe02700000000001fd9ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787631900
-0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffb00700000000004ff8ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffb007000000000020fdffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff970000000000006bffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffa1f00000000000bb1ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319
-000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffea5e000000000017a1ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffea5e0000000000008fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff9f1700000000001ed6ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff9200000000000067
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763
-19000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffb007000000000021fdffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffb007000000000025e0ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffd21000000000005deff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9f1700000000
-0060e8ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787
-6319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffe85e0000000000008fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffea5e0000000000008fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff92000000000000
-6dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd210000
-00000002deffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87
-876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffde02000000000025e0ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffb007000000000025e0ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9f17000000
-000060e8ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff92
-0000000000006dffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff
-87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff700000000000008fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffea5e0000000000008fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe2200
-0000000002deffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff940000000000006bffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffff
-ff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffda1f000000000025e0ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffb007000000000025e0ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3
-4e0000000000006effffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffe12700000000001ed8ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffff
-ffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff6e00000000000093ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffea5c00000000000091ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff960000000000005ee8ffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffff650000000000009afffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ff
-ffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffd91d000000000015a1ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffaf06000000000026e2ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffe228000000000000dcffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff9800000000000067ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787
-ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff6e00000000000050f9ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffea5c00000000000091ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffff65000000000000aafffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffa01700000000005fe8ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff87
-87ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffd71c000000000015a3ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffaf06000000000026e2ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff9600000000000069ffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffd21000000000002deffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff
-8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffb009000000000050f9ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffea5c00000000000091ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffe22a00000000001dd7ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff930000000000006cffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffff
-ff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffe4a8aeb5ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffea5c000000000015a3ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffaf06000000000026e2ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffa21000000000009afffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff940000000000006bffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffe4a8aeb5ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effff
-ffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffe3a7b2a622161f00000000181a1064b8acb4ffffffffffffffffffffffffff
-ffffffffffffad06000000000052f9ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffe85c00000000000091ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff9300000000000068ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffe22800000000001dd7ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffb4acb86411191f00000000181a1064b8
-acb4ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001eff
-ffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffe3b164101f000000000000000000000000000000000000181922a3b6ffffffffffffff
-ffffffffffe85c00000000000097ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffad06000000000026e2ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffa11800000000001dd5ffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffff55100000000000aaeffffffffffff
-ffffffffffffffffffffffffffffffffb6a3221918000000000000000000000000000000
-000000181922a3b6ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001e
-ffffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe3b1
-6315000000000000000000000000000000000000000000000000000000001622a3b6ffff
-ffffffffffad06000000000028e3ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff6800000000000092ffffffffffffffffffff
-ffffffffffffffffff8c00060000000012a8fffffffffff6007bffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff66f1ffffffffffffffffffff
-fffffc0586ffffffffffffffff7b00f6ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffc1a06020000000055e4fffffffc0586ffffffffffffffffffffffffffffff
-fffffffffffffffc0586fffffffffffffff6007bffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffe23000000000004ddffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff9900000000000066ffffffff
-ffffffffffffffffffffffffffb6a3221600000000000000000000000000000000000000
-0000000000000000001622a3b6ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f000000
-1effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe95c1500
-000000000000000000000000000000000000000000000000000000000000000000000016
-21aaffffff6800000000000092ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffd71c000000000028e3ffffffffffffffffffff
-ffffffffffffffffffff790047454141490a0011d1fffffffc349dffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff8800feffffffffffffffffff
-ffffffff0074ffffffffffffffff9d34fcffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00154f4141443b0000d5ffffff0074ffffffffffffffffffffffffffff
-ffffffffffffffffff0074fffffffffffffffc349dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff940000000000006bffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffa21800000000005de7ff
-ffffffffffffffffffffffaa211600000000000000000000000000000000000000000000
-00000000000000000000000000001621aaffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000
-001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe962000000
-000000000000000000001c585050479bf0e7e7eade594d50534b00000000000000000000
-00000023a125000000000028e3ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff6d00000000000092ffffffffffffffffffffff
-ffffffffffffffffffffff7a00ffffffffffff910002ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff8000ffffffffffffffffff
-ffffffffff007affffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff0089ffffffffffea133bffffff0079ffffffffffffffffffffffffff
-ffffffffffffffffffff0079ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffa21800000000005de7ffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffe23000000000001
-dcffffffffffffffffffab1f000000000000000000000000001c585050479bf0e7e7eade
-594d50534b000000000000000000000000001fabffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00
-00001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe66100000000
-00000000000000439df0e1ffffffffffffffffffffffffffffffffe8e7de611a00000000
-000000000000000000000092ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffa1d9ffffffffffffffffffffffd71c00000000002ae4ffffffffffffffffffffff
-ffffffffffffffffffffffff7900ffffffffffffff9a0093ffffff9cd5ffffffb1aaa4e0
-ffffffffff9ddfffaea9b1ffffffffffffffb1aaaab1ffffffba4f00aaacffffffffdfa6
-a6dfffffffff0088ffb0a9b1ffffffffd59cffffff9fe3ffb0a9b1ffffffffffffffb1a9
-aeffe39effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff0079ffffffffffff8000ffffff0079ffffffffffb1a9b1ffffffff
-ffffffdfa6a6dfffffffff0079ffffffffa49dffff9cd5ffffd5a6ffe1a4a6dfffffffff
-ffffb1a9aeffe39effffffffffffffffffffffffffffffffffffffff25000000000001dc
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9500000000
-00006affffffffffffa9200000000000000000000000439df0e1ffffffffffffffffffff
-ffffffffffffe8e7de611a0000000000000000000020a9ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f
-0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffae0600000000
-0000000000449cf1ffffffffffffffffffffffffffffffffffffffffffffffffffd8631b
-0000000000000000000038faffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffd10043ffffffffffffffffffff6d00000000000052f5ffffffffffffffffffffff
-ffffffffffffffffffffffffff7900ffffffffffffffff193ffffffc006affd107000000
-0012d1fffffc00796e00000008d2ffffffd207000000000fd7ff0000000000f1ffff6300
-00000061ffffff0045210000000dd2ffff6a00fcfffb00361e0000000dd2ffffffd20800
-0000624800fbffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff007affffffffffff7700ffffff0079ffffffd20800000008d2ff
-ffffff630000000061ffffff0079ffffff590079fffe006affff6c00560000000063ffff
-ffd208000000624800fbfffffffffffffffffffffffffffffffffffffff4530000000000
-006affffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff970000
-0000000068ffffffea5c0000000000000000001f4f9bf1ffffffffffffffffffffffffff
-ffffffffffffffffffffffffd8631b0000000000000000005ceaffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa200000000000
-000000449cf1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffd8631b000000000000000f72ebffffffffffffffffffffffffffffffffffffffffffff
-ffffffff4e000094ffffffffffffffd71c000000000018a4ffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7900ffffffffffffffff7d00ffffff007aff3c00a6ef
-f2930033ffffff0000129ef8a20400d4ffc70011e3eaf29a0001fffb6c00e1e5ffff5900
-50e3e452008affff00001fe3f59a0042ffff7900ffffff00001fe3f59a0042ffffd40004
-a2f89f0d0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff0084ffffffffffad088effffff0079ffffd70004a2f8a20400
-d7ffff590050e3e452008affff0079ffff5c0092ffffff0079ffff7e000092f4e72300cf
-ffd40004a2f89f0d0000ffffffffffffffffffffffffffffffffffffffffffff99000000
-00000068ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4
-2a000000000023ae6b00000000000000001b63d8ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffd8631b000000000000000060e7ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffd519000000000000
-0018a2f0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffdc5d00000000000000006affffffffffffffffffffffffffffffffffffffff
-ffffffffd500000008dbffffffffff6d00000000000053f9ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7900ffffffffffffffff7900ffffff007dff008aff
-ffffff9540f9ffff0000f6fffffff80071ff9d38f4ffffffff7300ffff7e00ffffffff00
-66ffffffff1500ffff0023ffffffff6700ffff7900ffffff0023ffffffff6700ffff7100
-f8fffffff90000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff00000b00000003003bffffffff0079ffff4000f8fffffff8
-003fffff0066ffffffff1500ffff0082ff5d0092ffffffff0079ffff7e00a0fffffff900
-75ff7000f8fffffff90000ffffffffffffffffffffffffffffffffffffffffffffffe42a
-00000000001bd5ffffffffffffffffff5554ffffffffffffffffffffffffffffffffffff
-fff5530000000000000000000000000057dbffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffdb5700000000000000006affffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffac08000000000000
-189effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff2c3d000000000000005ce6ffffffffffffffffffffffffffffffffff
-ffffffffff4f000000004dffffffd81a000000000018a5ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7900ffffffffffffffff7a00ffffff007dff1b00
-68aee2ffffffffffff0066ffffffffff5e00fffffffffffffff74a00ffff7900ffffff8f
-00f0fffffffff8d5ffff0081ffffffff7b00ffff7900ffffff0081ffffffff7b00ffff00
-5effffffffff6600ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff001b534444444f1b005fffffff0079ffff0063ffffffff
-ff6300ff9400f0fffffffff8d5ffff00877a00a2ffffffffff0079ffff7a00ffffffffff
-007eff005effffffffff6600ffffffffffffffffffffffffffffffffffffffffffffffff
-f753000000000008acffffffffffffffd50000d3ffffffffffffffffffffffffffffffff
-ffffffff9d0000000000000000000055e1ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffe1550000000000000068ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff6400000000000018
-9effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffcffe35500000000000000daffffffffffffffffffffffffffffff
-ffffffffff910000000000009cff6c00000000000053faffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7900ffffffffffffffff7800ffffff0079fff9
-160000000d59e4ffffff007bffffffffff7a00ffffffb5530001000000ffff7900ffffff
-7700ffffffffffffffffff0079ffffffff7900ffff7900ffffff0079ffffffff7900ffff
-007affffffffff7b00ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff0088ffffffffffff6400cfffff0079ffff007bffffff
-ffff7b00ff7d00ffffffffffffffffff000018006cffffffffff0079ffff7900ffffffff
-ff007fff007affffffffff7b00ffffffffffffffffffffffffffffffffffffffffffffff
-ffffff9b00000000000066ffffffffffd90100004effffffffffffffffffffffffffffff
-ffffffffffff770000000000000055e1ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffe1550000000000001ad4
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffe65c0000000000189e
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffe155000000000009acffffffffffffffffffffffffff
-ffffffffffff120000000000000a22000000000018a5ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7900ffffffffffffffff001bffffff0079ff
-ffffdc5c44000000d3ffff007dffffffffff7b00ffff5a00084a3cad7500ffff7900ffff
-ff7900ffffffffffffffffff0079ffffffff7900ffff7900ffffff0079ffffffff7900ff
-ff007bffffffffff7d00ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff0079fffffffffffff50074ffff0079ffff007bffff
-ffffff7d00ff7f00ffffffffffffffffff0021ff6f00d0ffffffff0079ffff7900ffffff
-ffff007eff007bffffffffff7d00ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffa31900000000001ad5ffffff4e00000000d4ffffffffffffffffffffffffff
-ffffffffffffde10000000000058e1ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1550000000000
-02daffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffd700000000000094ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffe729000000000062ffffffffffffffffffffff
-ffffffffffff950000000000000000000000000054faffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7900ffffffffffffffd7007dffffff007a
-ff98dbfffffff6a80075ffff004cffffffffff3f11ff900097ffffffff8600ffff7900ff
-ffff7a00d9ffffffff8707ffff0079ffffffff7900ffff7900ffffff0079ffffffff7900
-ffff1442ffffffffff4c00ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff0079ffffffffffffff0076ffff0079ffff1542ff
-ffffffff4700ff7f00d9ffffffff8707ffff0081fffa1300ffffffff0079ffff7900ffff
-ffffff007dff1442ffffffffff4c00ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff24000000000008aeff6b00000000004cffffffffffffffffffffffff
-ffffffffffffda03000000000098ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7290000
-000003daffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffdc04000000002be5ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffff754000000000069ffffffffffffffffff
-ffffffffffffff12000000000000000000000018a5ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7a00ffffffffffffdc0015f6ffffff00
-7cff0400ffffffffe90078ffff0000d9ffffffd500aaff7500ffffffffdb0000ffff7a00
-ffffffea0044ffffffdb0054ffff0079ffffffff7900ffff7900ffffff0079ffffffff79
-00ffff7b00d6ffffffd80000ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0082ffffffffffff9800a9ffff0079ffff7b00
-d6ffffffd6005fffeb0044ffffffdb0054ffff0079ffffae005fffffff0079ffff7900ff
-ffffffff0079ff7b00d6ffffffd80000ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff960000000000005b02000000000000d4ffffffffffffffffffff
-ffffffffffffab09000000002be5ffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff754
-0000000009abffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff69000000000023fcff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff9d00000000001ad4ffffffffffff
-ffffffffffffff97000000000000000000000064ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7a00acafababb3600000acffffffff
-0079ffac0014a2b0a20012f4ffff00000060bb60001affffa60015a2b555000a00ffff78
-0062b2ffff900054b5a60000e8ffff0078ffffffff7800ffff7800ffffff0078ffffffff
-7800fffff3150060bb5d000000ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff004cbdaaababb25b001dffffff0078fffff3
-150060bb600016f5ffff900054b5a60000e8ffff0078ffffff96008bffff0078ffff7800
-ffffffffff0078fff3150060bb5d000000ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffa3190000000000000000000000004cffffffffffffffffff
-ffffffffffff62000000000023fcffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff9d000000000062ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff64000000000096ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff9a000000000002d8ffffffff
-ffffffffffffffd906000000000000000000000079ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff74000000000000004dddffffffff
-fa006dffff9f0300000044f5ffffff00646400000047f4ffffff9f03000000adb700c8ff
-f3180000f1ffff9e00000018dffffffa006dffffffff6d00faff6d00fafffa006dffffff
-ff6d00fbfffffe49000000a67800ffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffff9000000000000000654f1fffffa006dffff
-fff54700000047f5ffffffff9e00000018dffffffa006dffffffff1600d1ff006dffff6d
-00fafffffffa006efffffe49000000a67800ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff24000000000000000000000000d4ffffffffffffff
-ffffffffffff64000000000096ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff9a000000000064ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff62000000000096ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffa31b0000000000d7ffff
-ffffffffffffffff4b00000000000000000000000000d1ffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffff4dfe9e9e9e9e8e8ffffffffff
-ffffd6f2ffffffffe3e8e8ffffffffff0084ffe7e6e8ffffffffffffffe3e3ffffffd6eb
-fffffce1e0ffffffffffe3e3fdffffffffd6f2fffffffff2d6fffff2d6ffffffd6f2ffff
-fffff2d6ffff9ce3ffe8e6eaff8300ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffdfe7e9e9e9e9e3ffffffffffffd6f2ff
-ffffffffe8e6e8ffffffffffffffffe3e3fdffffffffd6f2fffffffff9d0ecffd6f2ffff
-f2d6ffffffffffd6f5ff9ce3ffe8e6eaff8300ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffa000000000000000000000004cffffffffffff
-ffffffffffff62000000000096ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffa31b0000000062ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffd4000000002ce6ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff28000000004fff
-ffffffffffffffffd400000000000000000000000000000dffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0079ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffff6003fffffffffdf005effffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffff7003fffffffffdf005effffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffa7000000000000000000000000d4ffffffff
-ffffffffffffd4000000002ce6ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff2800000000d4ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffd7050000002bfdffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc2800000000
-65ffffffffffffffff4c00000000000000000000000000000065ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0078ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff5f0012a0afa00000e9ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff5f0012a0afa00000e9ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffd6090000000000000000000000004cffffff
-ffffffffffffd7050000002bfdffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffc2b00000005d7ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffd60300000000f4ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc290000
-000065ffffffffffffd20000000000000000000000000000000000d1ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffc006fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff9b040000004adbffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff9b040000004adbffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff0b0000000000000000000000000000d4ff
-ffffffffffffd60300000000f4ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffff40000000003d6ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffd7000000000096ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff28
-0000000061ffffffffff0b000000000000000000000000000000000000f6ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffd7f2ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffe5eae9ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffe5eae9ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff670000000000000000000000000000004c
-ffffffffffffd7000000000096ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff960000000000d7ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff4d000000009affff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-b20000000000d3ffffff9300000000000000000000000000000000001c47bbffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff9100000000000000000000000000000000
-00d4ffffffffff4d000000009affffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff9a000000004dffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763190000
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff64000000009effff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff9a0000000002d7ffff10000000000000000000001f5c515de1ede4ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffcb00000000000000000000000000000000
-00004cffffffff64000000009effffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff9e0000000064ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787631900
-0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff8f000000002bffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff9a000000004bff84000000001f5c515de1ede4ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffedcf5c5a1f0000000000000000000000
-00000000d4ffff8f000000002bffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff2b000000008fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319
-000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff100000002bfcff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff9d00000000d27651e2eee5ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffe5f4a04f510000000000
-00000000004cffff100000002bfcffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffc2b00000010ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763
-19000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9300000000f5ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7000000053ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeaf3a04f
-51000000000000eca600000000f5ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffff50000000093ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787
-6319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff120000006cff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffef00000000d3ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffeaebe25e5b143f1c0000006cffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff6c00000012ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87
-876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6300000000ef
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff6c0000004dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff3b00000000efffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffef0000000063ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff
-87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd2000000006b
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffef00000000d3ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffda000000006bffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff6b00000000d2ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffff
-ff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4b00000000
-efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff6d0000004bffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff4b00000000efffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffef000000004bffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffff
-ffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd300000000
-6dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffee00000000d3ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffd3000000006dffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6d00000000d3
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ff
-ffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4b000000
-00eeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff6d0000004bffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff4b00000000eeffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee00000000
-4bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787
-ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcf000000
-006dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffff000000000d0ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffcf000000006dffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6d0000
-0000cfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff87
-87ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7c0000
-0000f0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff6d00000079ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7c00000000f0ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000
-0000007cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff
-8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4f00
-00006affffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffff400000010ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff4f0000006affffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-6a0000004fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffff
-ff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-000000b2ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff00000000d3ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00000000b2ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffb200000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effff
-ffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff96
-00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff6c0000007affffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff9600000000ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff0000000096ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001eff
-ffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-4d00000069ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff8100000011ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff4d00000069ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff690000004dffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001e
-ffffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff00000000b2ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffef0000000095ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff00000000b2ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffb200000000ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f000000
-1effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffd400000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff2d0000004dffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffd400000000ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff00000000d4ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000
-001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff790000006affffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8100000000ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff790000006affffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff6a00000079ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00
-00001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff0d000000b4ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb20000000091
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0d000000b4ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffb40000000dffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f
-0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00000000ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff00000000ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-0083ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f3ee2ffffffff
-ffffffffffffffffffffffffffffffffffffffd200000000ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff00000000d2ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffd20000002dffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2d00
-00004dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7800005ae2ff
-ffffffffffffffffffffffffffffffffffffffff780000002dffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff2d00000078ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7800000085fffffffffffffb14000000000000000001f6ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff5ef1fffff70076ffffffffffffffffffffffffffffffffffffffffffffffffffffff85
-00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00000000
-5ae2ffffffffffffffffffffffffffffffffffffff7f00000085ffffffffffffffffffff
-fffffffb140000000000004bdefffffffb0083ffffffffffffffffffffffffffffffffff
-fffffffffffb0083ffffffffffffffffffffffffffffffffffffffffffffffffff8300fb
-ffffffffffffffffffffffffffff850000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7f0000007fffffffffffffff001b5c4d4e4e4e4e4950fdffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff8500fefffffd3fa3ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7f00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f000000
-0000005ae2ffffffffffffffffffffffffffffffffff800000007fffffffffffffffffff
-ffffffffff001b5c4d4d50470000d1ffffff0075ffffffffffffffffffffffffffffffff
-ffffffffffffff0075ffffffffffffffffffffffffffffffffffffffffffffffffff7500
-ffffffffffffffffffffffffffffff7f00000080ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7f0000007fffffffffffffff0088ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff8000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7f00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000
-00000000000058e1ffffffffffffffffffffffffffffff0b0000007fffffffffffffffff
-ffffffffffff0088fffffffffff31935ffffff0079ffffffffffffffffffffffffffffff
-ffffffffffffffff0079ffffffffffffffffffffffffffffffffffffffffffffffffff7a
-00ffffffffffffffffffffffffffffff7f0000000bffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff830000007bffffffffffffff0079ffffffffffffffffffcd82d0ff
-ffffffff93cfffffffffa79fa7ffffffffffffffffa79fa7ffffffffcf92ffffffffff92
-d1ffb049009fa2ffff92cfffff95dfffa69fa7ffffffffffffffa79fa4ffde94ffffffff
-ffff7b00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00
-00000000000000000058e1ffffffffffffffffffffffffff000000007bffffffffffffff
-ffffffffffffff0079ffffffffffff7f00ffffff0079ffffffffd79b9bd7ffffffffffff
-ffd79b9bd7ffffffff0079ffffffff9a96ffffffffd79b9bd7ffffffffffffffa79fa6ff
-8800ffffffffffffffffffffffffffffff7b00000000ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff4d000000b2ffffffffffffff007affffffffffffffffffea0400
-ffffffff4d00dcffffca0000000000caffffffffcd0100000001caffff6b00fcfffffffc
-006fff0000000000f8ff006bfffc00321600000005ceffffffcd01000000584300fcffff
-ffffffb200000000d2ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff88
-00000000000000000000000058e1ffffffffffffffffffffff00000000b2ffffffffffff
-ffffffffffffffff007affffffffffff7500ffffff0079ffffff5a000000005affffffff
-ff5a0000000059ffffff0079ffffff510080ffffff580000000058ffffffffca00000000
-1c4100ffffffffffffffffffffffffffffffb200000000ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff00000000ffffffffffffffff0083ffffffffffffffffffffb2
-0059ffff8a0099ffffcc001cedf4ed1c00d0ffffce000dabffae0900ffff7900ffffffff
-ff007afffd7000eaebffff0079ffff000028ecfda3003dffffce000dabffa9140000ffff
-ffffffffff0000000078ffd196a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4
-a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4
-a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4
-a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4
-a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4
-a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4
-a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4
-a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4b6
-52000000000000000000000000000058e1ffffffffffffffff9100000000ffffffffffff
-ffffffffffffffffff0083ffffffffffa30797ffffff0079ffff54005bebeb5b0054ffff
-ff52005bebec5b0083ffff0079ffff540099ffffff4f0099fafa990051ffffce001fedfa
-ab190000ffffffffffffffffffffffffffffffff0000000091ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff00000000ffffffffffffffff0000020000000000007bffff
-ff6700dde90023ffffff6a1cffffffffff2237ffff6e00faffffffb20083ff7900ffffff
-ffff0079ffff7d00ffffffff0079ffff0029ffffffff6a00ffff6e00fafffffffb0000ff
-ffffffffffff000000007fff700000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-00000000000000000000000000000000000058e0ffffffffffff7d00000000ffffffffff
-ffffffffffffffffffff00000200000000003affffffff0079ffcc006dffffffff6d00cc
-ffff006cffffffff1c00ffff0084ff540099fffffffc00b1ffffffffb200cbff6e00f7ff
-fffffb0000ffffffffffffffffffffffffffffffff000000007dffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff00000000ffffffffffffffff00205e4f4f4f4f503ea7ff
-fffffa1e043317ffffffff004cbba2a1a2ba4e00ffff0061ffffffffffe1f2ff7900ffff
-ffffff0079ffff7900ffffffff0079ffff0081ffffffff7b00ffff0061ffffffffff6800
-ffffffffffffff000000007fff7f00000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-00000000000000000000000000000000000000000055ffffffffff7b00000000ffffffff
-ffffffffffffffffffffff00205e4f4f4f59230058ffffff0079ff7400f6fffffffff600
-74ff8c00f3fffffffffbdcffff00847300a8ffffffff8d00aba9a1a1a9ad007aff0061ff
-ffffffff6800ffffffffffffffffffffffffffffffff000000007bffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff00000000ffffffffffffffff0088ffffffffffffffff
-ffffffffff0000bfffffffff000000000000000000ffff007affffffffffffffff7900ff
-ffffffff0079ffff7900ffffffff0079ffff0079ffffffff7900ffff007affffffffff7b
-00ffffffffffffff000000007bff7e000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-00000000000000000000000000000000000000000056d2ffffffffffb200000000ffffff
-ffffffffffffffffffffffff0088ffffffffffff6900cbffff0079ff7900ffffffffffff
-0079ff7700ffffffffffffffffff00001d0065ffffffff7c00000000000000007bff007a
-ffffffffff7b00ffffffffffffffffffffffffffffffff00000000b2ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff2e000000d1ffffffffffffff0079ffffffffffffff
-ffffffffffd30000daffffffff0075ffefefeff0efe9ffff007dffffffffffffffff7900
-ffffffffff0079ffff7900ffffffff0079ffff0079ffffffff7900ffff007bffffffffff
-7d00ffffffffffffd100000000b2ff750000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-00000000000000000000000000000000000000005fe7ffffffffffffffff00000000d1ff
-ffffffffffffffffffffffffff0079fffffffffffff80074ffff0079ff7500ffffffffff
-ff0079ff7900ffffffffffffffffff0027ff7300caffffff7700f2f6efefeff0e9ffff00
-7bffffffffff7d00ffffffffffffffffffffffffffffffd100000000ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff8500000078ffffffffffffff0079ffffffffffff
-ffffffffffff00242700d2ffffff1a44ffffffffffffffffff0044ffffffffff0083ff79
-00ffffffffff007affff7900ffffffff0079ffff0079ffffffff7900ffff193fffffffff
-ff4900ffffffffffff7800000000fffff8e7f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0
-f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0
-f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0
-f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0
-f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0
-f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0
-f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0
-f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0
-f0f0f0f0ff77000000000000000000000000005fe9ffffffffffffffffffff0000000078
-ffffffffffffffffffffffffffff0079ffffffffffffff0076ffff0079ffae00d4ffffff
-ffd5007bff7b00d5ffffffff8001ffff0081fffe1900ffffffae00dbffffffffffffffff
-193fffffffffff4900ffffffffffffffffffffffffffffff7800000000ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7f0000007fffffffffffffff0083ffffffffff
-ffffffffffff5300ffff003cffffff7c00cfffffffff4835ffff6500ceffffff5600e7ff
-7b00d5ffffff5d007effff7a00ffffffff0079ffff0079ffffffff7900ffff7c00cfffff
-ffd10000ffffffffffff7f00000000ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff8300000000000000000000005fe9ffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffff0083ffffffffffff9100aeffff0079ffff0040ffff
-ffff4200eeffee003fffffffd4005bffff0079ffffb20056ffffff0040ffffffffca00b4
-ff7c00cfffffffd30000ffffffffffffffffffffffffffffff7f00000000ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7f0000007fffffffffffffff0046b19f9f9f
-9f9f9f92d2ff86009affff9c0087fffff71c0056aa950800a6fffff91a0096ab520064ff
-ffed00009ba94510007cffff7b0059a7ffff0078ffff0078ffffffff7800fffff71c0056
-af53000000ffffffffffff7f00000000ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7f0000000000000000005fe9ffffffffffffffffffffffffffff6e0000
-007fffffffffffffffffffffffffffff0046b19f9f9fa6510024ffffff0078ffff970008
-9898080099ffffff990049aa9a0000ecffff0078ffffff9e0087ffff97000995aa560018
-fffff71c0056af55000000ffffffffffffffffffffffffffffff7f0000006effffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763190000
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7b00000083fffffffffffffa0000000000
-00000000006fdd001effffffff1e00c7fffff9510000000ca8fffffffff84e00000094ff
-ffffffa70f00001af40070fffff7210000f7ff006ffffb006fffffffff6f00fbffffff54
-000000b07c00ffffffffffff8300000000ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7f0000000000000060e9ffffffffffffffffffffffffffffffff8000
-000083fffffffffffffffffffffffffffa000000000000000d60f4fffffb006fffffffa8
-0c00000ca8ffffffffffa607000020e7fffffb006fffffffff1e00c7ffffa80c00000051
-f8fffffff951000000696000fbffffffffffffffffffffffffffff8300000080ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787631900
-0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffb40000004bffffffffffffffe8eff1f1
-f1f1f1f1f1e7fef6d9fdfffffffffdd9edfffffffff0f0ebfffffffffffffffff0edeeff
-ffffffffffffebebffffe0f6ffffffffe9e8ffffdef6ffffdff6fffffffff6deffff92dd
-fff1edf0ff8000ffffffffffff4b0000002effffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7f000000000060e9ffffffffffffffffffffffffffffffffffff7b
-0000004bffffffffffffffffffffffffffffe8eff1f1f1f1ebffffffffffffdff6ffffff
-ffffebebffffffffffffffffffebebffffffffffdff6fffffffffdd9edffffffffebf0f0
-fffffffffffffff0edefffffe0ffffffffffffffffffffffffffffff4b0000007bffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319
-000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff00000000ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff800
-3affffffffd60065ffffffffffff0000000085ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7e00000060e9ffffffffffffffffffffffffffffffffffffffff
-b400000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000b4ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763
-19000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff00000000ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-65000a95a3940000ecffffffffffff000000007effffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff6f0061e9ffffffffffffffffffffffffffffffffffffffffff
-ffff00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787
-6319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff00000000d1ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffa50d00000053e2ffffffffffffd1000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffb5d5ffffffffffffffffffffffffffffffffffffffffffff
-ffffff00000000d1ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd100000000ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87
-876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff6f00000079ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffedf1f1ffffffffffffffff7d00000000f0ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff6f00000079ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff790000006f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff
-87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff810000000fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff4b0000002fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff810000000fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0f000000
-81ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffff
-ff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffff000000000d0ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0000000086ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff9b9b9d9c9c9d95d5ffffffffff8dccffff
-ffffffffffffffffffffffffffffffffffffffffff8dccffffffffffffffff8acbffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffff000000000d0ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000000
-00f0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffff
-ffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2f00000079ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffd100000000f0ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffc000000000000000054fffffffc006bff
-fffffffffffffffffffffffffffffffffffffffffffc006bfffffffffffffff30060ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff2f00000079ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff790000
-002fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ff
-ffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff870000000fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff780000002bffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff0071fff2f2f5eb5e0081ffffff0079
-ffffffffffffffffffffffffffffffffffffffffffffff0079ffffffffffffffffe3f9ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff870000000fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0f00
-000087ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787
-ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff300000000
-d0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff0c000000b9ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff007dffffffffffff6700ffffff00
-79ffffffffffffffffffffffffffffffffffffffffffffff0079ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffff300000000d0ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd000
-000000f3ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff87
-87ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-0078ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff00000000ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff0079ffffffffffff7d00ffffff
-0079ffffffff9506000695ffffffffffdb47000047daffffff0079ffffffc7003ffffe00
-80ffff830dd246000047d8ffffffff95060000de9401fcffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff0000000078ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff78
-00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff
-8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6b00
-000010ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff8f0000006bffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff0083ffffffffffff3b1bffff
-ff0079ffffff4f00186318004fffffffc8000050510000d0ffff0079ffffcb0017f7ffff
-0075ffff7a0000135d520000ffffff4f00186314000000ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff6b00000010ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-100000006bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffff
-ff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb3
-000000008effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff0c000000b6ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff0046ad9b9b9e950c25ffff
-ffff0079ffff8400a0ffffffa00084ffff0020f5ffffe6002affff007cffcb001effffff
-ff0079ffff7e0032ffffffab008bff8900a0ffffffa20000ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffb3000000008effffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-8e00000000b3ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effff
-ffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff300000000cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff8e00000000ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000000000000001d5
-ffffff0079ffff0025ffffffffff2500ffd100b7ffffffff9d4effff0090ee0029ffffff
-ffff0079ffff7b00fdffffffff0079ff371fffffffffff2e00ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff300000000cffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff0c00000030ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001eff
-ffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffb8000000008effffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff0c00000070ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff0073fff3f3f3fcb50f
-00ffffff0079ffff007fffffffffff7f00ff7900ffffffffffffffffff003b0b00c6ffff
-ffffff0079ffff7900ffffffffff007eff007dffffffffff7f00ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffb8000000008effffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff8e00000000b8ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001e
-ffffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff300000000effffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff9100000000f3ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff007dffffffffffff
-be008bffff0079ffff0079ffffffffff7a00ff7f00ffffffffffffffffff0000a52e00ff
-ffffffff0079ffff7900ffffffffff007fff0079ffffffffff7a00ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff300000000effffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff0e00000030ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f000000
-1effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffb8000000005bffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffd20100000071ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0079ffffffffff
-ffff0078ffff0079ffff0073ffffffffff7600ff7d00ffffffffffce86ffff006effba00
-55ffffffff0079ffff7900ffffffffff007eff0073ffffffffff7700ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffb8000000005bffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff5b00000000b8ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000
-001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff3400000000ceffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff4600000000f3ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff007affffffff
-ffffd7007dffff0079ffff5f00ffffffffff001effb4008dffffffff2e05ffff007bffff
-6a00c8ffffff0079ffff7900ffffffffff007aff5f00ffffffffff0900ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff3400000000ceffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffce0000000034ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00
-00001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffff70000000047ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffd00000000071ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0082ffffff
-ffffe43100efffff0079ffffaf0047e1ffe14700b3ffff2600d4ffff5700b3ffff0079ff
-fffb2300d0ffff0079ffff7900ffffffffff0079ffaf0047e1ffdf4a0000ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffff70000000047ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff4700000000f7ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f
-0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7100000000ceffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff4a00000000f2ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00000000
-000000000099ffffff006fffffff9c00000000009cfffffffd1d000000005effffff006f
-fffffff5002affff006fffff6f00ffffffffff006fffff9e00000000222e00ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7100000000ceffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffce0000000071ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffff20000000000caffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff5a0000000073ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff605758
-5757574fa4f9ffffffff50acffffffffe8645364e8ffffffffffffa04f4fa7ffffffff50
-acffffffff9f3ec0ff4facffffac50ffffffffff50afffffffee64535fff9000ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffff20000000000caffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffca0000000000f2ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff6f0000000008ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff590000000000f1ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffb0085ffffffffff3c19ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff6f0000000008ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff08000000006fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffc30000000005effffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff570000000000a2ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff18009dffffff5300b2ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc30000000005e
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff5e0000000030fcffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff2f0000000059ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffcc0000000000a8ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffbf1200000000005dffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2f000000
-0059ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff59000000002fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffb8000000000057ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffcd000000000033ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa4525662e7ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb80000
-00000057ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff570000000000b8ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffa70000000000ccffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffcd000000000032ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa5
-0000000000ccffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffcc0000000000a5ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffb50000000000cfffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffcd000000000032ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffa60000000000cfffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffce0000000000a6ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff59d9be00000000049bffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffd000000000002effffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffa800000000049bffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffd00000000000a8ffffffca95ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff58000bff44000000000057ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff5a000000000000b8ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff35000000000057ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff5a000000000035ffffffff000056ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff5800000064ff3700000000004dda
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff58000000000000a6ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff3300000000004ddaffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff58000000000033ffffffff5500000058ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff590000000000caff650000000000
-00cdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff5b000000000025b2ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff31000000000000cdffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff5b000000000031ffffffffb9000000000058ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffda4d0000000000a5ffffffa6000000
-0000049affffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffc80d000000000032ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffa50000000000049affffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffc80d0000000000a5ffffffffffffa5000000000058ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffcb000000000000a7fffffffffff235
-000000000059ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffcf000000000000a5ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffa400000000000059ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffcf000000000000a4ffffffffffffffffa7000000000058ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffcc000000000000a8ffffffffffffff
-fc6700000000001598ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffd94f000000000027b2ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffff23800000000001598ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffd94f000000000038f2ffffffffffffffffffffa8000000000057ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffcc000000000000a5ffffffffffffff
-ffffffa70000000000001398ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffd94f00000000000033ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff320000000000001394ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffd94f00000000000032ffffffffffffffffffffffffffa8000000000057ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763190000
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffcc000000000038f2ffffffffffffff
-fffffffffff2370000000000001398ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffd94f00000000000000a6ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffa6000000000000004cdaffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-d94f00000000000000a6ffffffffffffffffffffffffffffffa8000000000057ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787631900
-0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffcc000000000033ffffffffffffffff
-fffffffffffffffd63000000000000001196ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffd94f0000000000000025b1ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffb125000000000000004fd9ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd9
-4f0000000000000025b1ffffffffffffffffffffffffffffffffffa8000000000057ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319
-000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffcc000000000033ffffffffffffffff
-ffffffffffffffffffffee6900000000000000128ad5ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffa8540000000000000027b0ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffb0270000000000000054a8
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa854
-0000000000000027b0ffffffffffffffffffffffffffffffffffffffffa8000000000057
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763
-19000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffcc000000000033ffffffffffffffff
-fffffffffffffffffffffffffff33500000000000000001689d5ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffa850020000000000000000a4ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffa400000000000000
-00025399d2ffffffffffffffffffffffffffffffffffffffffffffffffffffffa8500200
-00000000000000a4ffffffffffffffffffffffffffffffffffffffffffffffa800000000
-0057ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787
-6319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffcd000000000035ffffffffffffffff
-ffffffffffffffffffffffffffffffffb1260000000000000000001688d6ffffffffffff
-ffffffffffffffffffffffffffffffa6500200000000000000000069ecffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec6900000000
-0000000000001688d6ffffffffffffffffffffffffffffffffffffffffffa65002000000
-00000000000069ecffffffffffffffffffffffffffffffffffffffffffffffffffaa0000
-00000055ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87
-876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff57000000000035ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffb226000000000000000000000e06128f9a
-98959effffffffd38f9897a050000a0a0000000000000000000069eeffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee6900
-000000000000000000000e06128f9a98959effffffffd38f9897a050000a0a0000000000
-000000000069eeffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa
-000000000055ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff
-87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff55000000000035ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffa9672c0000000000000000000000
-000000000b09080e000000000000000000000000000000005f71edffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ed715f000000000000000000000000000000000b09080e00000000000000000000000000
-0000005f71edffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffaa000000000055ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffff
-ff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff55000000000033ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffe9772900000000000000
-0000000000000000000000000000000000000000000059affdffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffdaf590000000000000000000000000000000000000000000000000000000000
-0059affdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffaa000000000055ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffff
-ffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff55000000000068fdffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9b259000000
-000000000000000000000000000000000000002a77ecf7ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffff7ec772a000000000000000000000000000000000000000000002a77
-ecf7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffaa000000000055ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ff
-ffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff550000000000acffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4f5
-ffaf5f6867702b0000000000616a676570edf9f1ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffff1f9ed70656767702b0000000000616a676570edf9f1ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffaa000000000055ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787
-ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff560000000000a9ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffff2f8f8f7f6ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffff2f8f8f7f6ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffa9000000000056ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff87
-87ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff560000000000a9ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffa9000000000056ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff
-8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff560000000000a9ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffa9000000000056ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffff
-ff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff590000000000a9ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffa9000000000056ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effff
-ffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffc50c0000000000a9ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffa9000000000056ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001eff
-ffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffc9000000000000abffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffab000000000054ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001e
-ffffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffc9000000000000aaffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffab000000000054ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f000000
-1effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffc9000000000029b6ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffab000000000054ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000
-001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffc9000000000036ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffab000000000054ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00
-00001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffc8000000000037ffffffffffffffffff
-ffffffffffffff91909190909189cdffffffffffffffffffffffffffffffffff83c6ffff
-fffffffffffffffffffffff7cdffffffc57fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff91909190909189cdffffffffffffffffffffffffffffffff
-ff83c6fffffffffffffffffffffffffff7cdffffffc57fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffab000000000054ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f
-0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffc8000000000037ffffffffffffffffff
-fffffffffffffffc000000000000000042d2fffffffffffffffffffffffffffffd006cff
-ffffffffffffffffffffffff2f65ffffff6300f3ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffc000000000000000042d2ffffffffffffffffffffffffff
-fffd006cffffffffffffffffffffffffff2f65ffffff6300f3ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffab000000000054
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffc8000000000037ffffffffffffffffff
-ffffffffffffffffff0075fff9f9fcf26a0000cbffffffffffffffffffffffffffff0079
-ffffffffffffffffffffffffff0077fffffffdebffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff0075fff9f9fcf26a0000cbffffffffffffffffffffff
-ffffff0079ffffffffffffffffffffffffff0077fffffffdebffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffac00000000
-0053ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffc9000000000037ffffffffffffffffff
-ffffffffffffffffffff007cffffffffffffb00037ffffffffffffffffffffffffffff00
-79ffffffffffffffffffffffffff0081fffffffffffffffffeffffffffffffffffffffff
-fffffffffffffdffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff007cffffffffffffb00037ffffffffffffffffffff
-ffffffff0079ffffffffffffffffffffffffff0081ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffac0000
-00000053ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffff54000000000037ffffffffffffffffff
-ffffffffffffffffffffff0079ffffffffffffff7200fcffffffd135000035d1ffffffff
-0079ffffffd135000035d1ffff780000000074ff7c00fbfffb007f9c00000088ffffffff
-ff89000000d48e00fbffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff0079ffffffffffffff7200fcffffffd135000035
-d1ffffffff0079ffffffd135000035d1ffff780000000074ff7c00fbff7f05c93a00003d
-cfffffffffd23b00004fff007fffffffffffffffffffffffffffffffffffffffffffffac
-000000000053ffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffff53000000000037ffffffffffffffffff
-ffffffffffffffffffffffff0079fffffffffffffff70086ffffc0001969691900c0ffff
-ff0079ffffc0001969691900c0ffb758002f62b1ff7600ffffff000000596d25007fffff
-ff460022721f000000ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0079fffffffffffffff70086ffffc000196969
-1900c0ffffff0079ffffc0001969691900c0ffb758002f62b1ff7600ffff7a00001d6c5e
-0000fcffffc000005e5b0000007affffffffffffffffffffffffffffffffffffffffffff
-ffac000000000053ffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffff53000000000036ffffffffffffffffff
-ffffffffffffffffffffffffff0079ffffffffffffffff0078ffff002bffffffff2e00fc
-ffff0079ffff002bffffffff2e00ffffff0087ffffff7900ffffff0000afffffff2a00ff
-ff8600a8ffffffab0000ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff0079ffffffffffffffff0078ffff002bffff
-ffff2e00fcffff0079ffff002bffffffff2e00ffffff0087ffffff7900ffff7e0039ffff
-ffb20088ffff0024fbfffff934007fffffffffffffffffffffffffffffffffffffffffff
-ffffffac000000000053ffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffffff
-ffffffffffffffffffffffffffffffffffffffff5300000000006efdffffffffffffffff
-ffffffffffffffffffffffffffff0079ffffffffffffffff0079ffc400ffffffffffff00
-88ffff0079ffc400ffffffffffff0088ffff0079ffffff7900ffffff0070ffffffff7f00
-ffff3226ffffffffff3200ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff0079ffffffffffffffff0079ffc400ffff
-ffffffff0088ffff0079ffc400ffffffffffff0088ffff0079ffffff7900ffff7b00ffff
-ffffff0078ffc600bdffffffffc2007dffffffffffffffffffffffffffffffffffffffff
-ffffffffffac000000000053ffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fffff
-ffffffffffffffffffffffffffffffffffffffff510000000000b0ffffffffffffffffff
-ffffffffffffffffffffffffffffff0079ffffffffffffffff0079ff7800000000000000
-0072ffff0079ff78000000000000000072ffff0079ffffff7900ffffff007affffffff79
-00ffff007cffffffffff7f00ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff0079ffffffffffffffff0079ff780000
-00000000000072ffff0079ff78000000000000000072ffff0079ffffff7900ffff7900ff
-ffffffff0079ff7400ffffffffffff007affffffffffffffffffffffffffffffffffffff
-ffffffffffffffae000000000051ffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007fff
-ffffffffffffffffffffffffffffffffffffffff510000000000aeffffffffffffffffff
-ffffffffffffffffffffffffffffffff0079ffffffffffffffca007fff7c006b67636363
-645ab7ffff0079ff7c006b67636363645ab7ffff0079ffffff7900ffffff0079ffffffff
-7900ffff0079ffffffffff7a00ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff0079ffffffffffffffca007fff7c00
-6b67636363645ab7ffff0079ff7c006b67636363645ab7ffff0079ffffff7900ffff7900
-ffffffffff0079ff7800ffffffffffff0079ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffae000000000051ffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000007f
-ffffffffffffffffffffffffffffffffffffffff510000000000aeffffffffffffffffff
-ffffffffffffffffffffffffffffffffff0079ffffffffffffff7200f4ff7e00ffffffff
-ffffffffffff0079ff7e00ffffffffffffffffffff0079ffffff7900ffffff0079ffffff
-ff7900ffff0072ffffffffff7600ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff0079ffffffffffffff7200f4ff7e
-00ffffffffffffffffffff0079ff7e00ffffffffffffffffffff0079ffffff7900ffff79
-00ffffffffff0079ff7d00ffffffffffff007affffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffae000000000051ffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000
-7fffffffffffffffffffffffffffffffffffffff520000000000aeffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff007bffffffffffffca002ffffff30086ffff
-ffffff82c9ffff0079fff30086ffffffffff82c9ffff007fffffff7900ffffff0079ffff
-ffff7900ffff6100ffffffffff0500ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff007bffffffffffffca002fffff
-f30086ffffffffff82c9ffff0079fff30086ffffffffff82c9ffff007fffffff7900ffff
-7900ffffffffff0079fff30086ffffffff8e007effffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffae000000000051ffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000
-007fffffffffffffff3e41ffffffffffffffffd3470000000000aeffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff007effffffffff900000f7ffffff2a0092
-ffffd93400e1ffff0079ffff2a0092ffffd93400e1ffff0046ffffff7900ffffff0079ff
-ffffff7900ffffb4003ed9ffd73f0000ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff007effffffffff900000f7ff
-ffff2a0092ffffd93400e1ffff0079ffff2a0092ffffd93400e1ffff0046ffffff7900ff
-ff7900ffffffffff0079ffff2a0092ffff9000007effffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffae000000000051ffffffffffffffff413effffffff
-ffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000
-00007ffffffffffffffc000051ffffffffffffc6000000000000aeffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffe00000000000000001eb3ffffffffff2b
-0000000000a3fffffe006fffffff2b0000000000a3ffffff2f000075ff6f00fefffe006f
-ffffffff6f00feffffa8000000002b3400ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffe00000000000000001eb3ff
-ffffffff2b0000000000a3fffffe006fffffff2b0000000000a3ffffff2f000075ff6f00
-feff6f00fefffffffe006fffffff2c0000000064007dffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffae000000000051ffffffffffff510000fcffff
-ffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00
-0000007fffffffffffff9100000051ffffffffc6000000000000aeffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff6c64656464655daeffffffffffffff
-ffad5d6271eeffffffff5db3ffffffffad5d6271eefffffffffb6f54b1ffb35dffffff5d
-b3ffffffffb35dfffffffff571606dff9000ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff6c64656464655daeffff
-ffffffffffffad5d6271eeffffffff5db3ffffffffad5d6271eefffffffffb6f54b1ffb3
-5dffffb35dffffffffff5db3ffffffffaf5e5cbaff0075ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffae000000000051ffffffff5100000091ff
-ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-000000007fffffffffffff450000000051ffffc7000000000000abffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffff7007fffffffffff361effffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7600ffffffffffc900b2ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffae000000000051ffff510000000045
-ffffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff000000007ffffffffffffd0000000000005fcf00000000003ef7ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff1f0092ffffff4a00b6ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffaf003ed8ffffc90023ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffae000000000058580000000000
-00fdffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763190000
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff000000007fffffffffff8800000000000000000000000039ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffc41a000000000067ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff68000000000018c4ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffae00000000000000000000
-000088ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787631900
-0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff000000007fffffffffff08000000000000000000000038ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffaf5f646eefffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffff071645eacffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffae0000000000000000
-00000008ffffffffffffffff000000007fffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319
-000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff000000007fffffffffc9000000000000000000000047ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb9000000000000
-0000000000c9ffffffffffffff000000007fffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763
-19000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff000000007fffffffff760000000000000000000000c8ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600000000000
-00000000000076ffffffffffffff000000007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787
-6319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff000000007fffffffff09000000000000000000000000c6ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff500000000000
-0000000000000009ffffffffffffff000000007fffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87
-876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff000000007fffffffc90000000000000000000000000000c5ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff500000000000
-000000000000000000c9ffffffffffff000000007fffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff
-87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff000000007fffffff76000000000000000000000000000000c5ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff500000000000
-0000000000000000000076ffffffffffff000000007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffff
-ff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff000000007fffffff0900000000000000000000000000000000c1ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb3e0000000000
-000000000000000000000009ffffffffffff000000007fffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffff
-ffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff000000007fffffc7000000000000000000000000000000000000
-c2ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc71600000000
-00000000000000000000000000c7ffffffffff000000007fffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ff
-ffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff000000007fffff760000000000000000000000000000003470
-a7fdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff08131
-000000000000000000000000000076ffffffffff000000007fffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787
-ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff000000007fffff080000000000000000000000003181f0ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffba62000000000000000000000008ffffffffff000000007fffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff87
-87ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff000000007fff8e0000000000000000000062baffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffb7620000000000000000008fffffffff000000007fffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff
-8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff0000000082ff420000000000003181f3fcffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffb76200000000000043ffffffff000000007fffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffff
-ff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff000000008bff0000000064b9ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffb67234000000f7ffffff000000007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effff
-ffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff0000000094a11e76bcffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffff6861e82ffffff000000007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001eff
-ffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000000008cffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff040000007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001e
-ffffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff00000000020f060302020303030303030303
-030303030303030303030303030303030303030303030303030303030303030303030303
-030303030303030303030303030303030303030303030303030303030303030303030303
-030303030303030303030303030303030303030303030303030303030303030303030303
-030303030303030303030303030303030303030303030303030303030303030303030303
-030303030303030303030303030303030303030303030303030303030303030303030303
-030303030303030303030303030303030303030303030303030303030303030303030303
-030303030303030303030303030303030303030303030303030303030303030303030303
-030303030303030303030303030303030303030303030303030303030303030303030303
-030303030303030303030303030303030303030303030303030303030303030303030303
-030303030303030303030303030303030303030303030303030303030303030303030303
-030303030303030303030303030303030303030303030303030303030303030303030303
-030303030303030303030303030303030303030303030303030303030303030303030303
-030303030303030303030303030303030303030303030303030303030303030303030303
-030303030303030303030303030303030303030303030303030303030303030303030303
-030303030303030303030303030303030303030303030303030303030303030303030303
-030303030303030303030303030303030303030303030303030303030303030303030303
-03030303030303030303030303030303030303030203060703040b000000007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f000000
-1effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffd0000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-00000000000000000000000000000000000000000000000000000000000000007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000
-001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff77720000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00
-00001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff00000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000000074ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f
-0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff726f74747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-747474747474747474747474747474747474747474747474747474747474747474747474
-7474747474747474747474747474747474747474747474747474747474747474747463ba
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff87828bffffffffffffffffffc57787ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff8777c5ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffc000000bbffffffffffffffff720000fcffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffb000070ffffffff
-ffffffffffffffffffffffffffffff6c86ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff6c86ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff00000002fcffffffffffffff7f0000ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa00007bffffff
-ffffffffffffffffffffffffffffff450076ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff450076ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff0000000087ffffffffffffff7f0000ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5f5ffffff
-ffffffffffffffffffffffffffffffff00007fffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00007fffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff0000030000c9ffffffffffff7f0000ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff000081ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff000081ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff0000781f003effffffffffff7f0000ffffffffffff
-fffffe908680c7ffffffffffffffffffffffffc480868efeffffffffffffffffffffffff
-ffffffffffffffc7808980c4fffffffffffbfbfffffffffffffffffffffff5ffffffffff
-ffffffffffc4808980c7ffffffffffffffff050083fffffffffffffffd9086868efeffff
-fffffffffffffffffffc8e8680c4ffffffffffffff050083ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319000000
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff00009b98000080ffffffffff7f0000ffffffffff
-ffcb3a00000000000982ffffffffff800011ff4e000000000681ffffffffffffffffffff
-ffffffffffffbb0300000000003fcbffffffba000045ffffffffffffbb000043fffc0300
-80ffffffff4a000000000002bbfffffffb06020000000003fbffffff4a00000000000682
-fffffffffffb030098d200000000003ad1fffffb06020000000003fbffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763190000
-00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff00008aff360007ffffffffff7f0000ffffffff
-ffbb00000000000000000047ffffffff7c00044300000000000000c5ffffffffffffffff
-ffffffffffff49000000000000000000bbffffffaf000049ffffffffc6000030ffffff00
-007cffffff490000000000000000c5fffffb00000000000000fcffc20000000000000000
-0047ffffffffff00003d040000000000003afffffb00000000000000fbffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787631900
-0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff000080ffc100004dffffffff7f0000ffffff
-fff901000036c4fffb7a0500007fffffff7f00000042ffffff4500003bffffffffffffff
-ffffffffffffbb000034c5fffffb7d000000f9ffffff430000bcffffff3f0000c0ffffff
-00007fffffc100004afffffb7f00002cffffff797700003c8375ffff3c00007dfbffffc5
-3500007fffffffff00000000b9ffffba000000c2ffff797700003c8375ffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87876319
-000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff00007fffff7f0000bcffffff7f0000ffff
-ffff8e000080fffffffffff5080007ffffff7f00003affffffffff3f0000ffffffffffff
-ffffffffffffff01004affffffffffffc000008efffffffb000003ffff4a0000b5ffffff
-ff00007fffff780005ffffffffff770067ffffffffff03008bffffff8b0000c0ffffffff
-ffff4a0006ffffffff000000b6ffffffffba000079ffffffff03008bffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff878763
-19000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff00007ffffff7000001faffff7f0000ff
-ffffff400004faffffffffffff7d0000c5ffff7f0000c5ffffffffff850000ffffffffff
-ffffffffffffffc50004ffffffffffffffff7f0040ffffffffb300005ec8000040ffffff
-ffff00007fffff84000056fffffffffff8ffffffffffff00007fffffff40007fffffffff
-ffffffff0400c5ffffff00003effffffffffff00007fffffffff00007fffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff8787
-6319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff00007fffffffb2000086ffff7f0000
-ffffffff000077fffffffffffffffc000079ffff7f0000ffffffffffff7f0000ffffffff
-ffffffffffffffff7900000a01000000000008010000ffffffffff7c0000000038ffffff
-ffffff00007ffffff6000000020777c9ffffffffffffffff00007fffffff000001080000
-000000010a000079ffffff000084ffffffffffff00007fffffffff00007fffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff87
-876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff00007fffffffff450000c8ff7f00
-00ffffffff000080ffffffffffffffff00007fffff7f0000ffffffffffff7f0000ffff7f
-000000000000007fff7f00000000000000000000000000fdffffffffff45000000c9ffff
-ffffffff00007fffffffae0000000000000983fdffffffffff00007fffffff0000000000
-000000000000000073ffffff00007fffffffffffff00007fffffffff00007fffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffffff
-87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff00007ffffffffffd03003cff89
-0000ffffffff000080ffffffffffffffff00007fffff7f0000ffffffffffff7f0000ffff
-700000000000000070ff7f00007e7e797979797979797577ffffffffffff4c000041ffff
-ffffffffff00007ffffffffff67900000000000000c2ffffffff00007fffffff00003e89
-797979797979797a68bcffffff00007fffffffffffff00007fffffffff00007fffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffffff
-ff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff00007fffffffffff7900009f
-9b0000ffffffff00007bffffffffffffffff00007affff7f0000ffffffffffff7f0000ff
-ffbc687a7979797a68bcff7a0005ffffffffffffffffffffffffffffffff83000000004b
-ffffffffffff00007fffffffffffffffbb793900000038ffffffff00007fffffff000089
-ffffffffffffffffffffffffffff00007fffffffffffff00007fffffffff00007fffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ffff
-ffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff00007fffffffffffff3700
-237c0000ffffffff3a0006feffffffffffff830000bfffff7f0000ffffffffffff7f0000
-ffffffffffffffffffffffffbf000086ffffffffffffffb9baffffffffffbd00004a4800
-00bdffffffffff00007ffffff47dc7ffffffffffff450000ffffffff00007fffffff3a00
-08ffffffffffffffff8ff2fdffffff00007fffffffffffff00007fffffffff00007fffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787ff
-ffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff00007fffffffffffffc3
-0000080000ffffffff8a000087fffffffffffd0c0004ffffff7f0000ffffffffffff7f00
-00ffffffffffffffffffffffffff040000c2ffffffffffc0000040ffffffff010000ffff
-390000c6ffffffff00007ffff90a0038ffffffffffff890000ffffffff000085ffffff8a
-00004dffffffffffff470000bcffffff00007fffffffffffff00007fffffffff000085ff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff8787
-ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff00007fffffffffffff
-ff8100000000fffffffff70000003fcdffff850b000079ffffff7f0000ffffffffffff7f
-0000ffffffffffffffffffffffffff7900000088ffffff88000000bcffffff490000b6ff
-ffc300003cffffffff00007fffff7700003eceffffff8b02007dffffffff000049ffffff
-f90000003dceffffce3d000034ffffffff00007fffffffffffff00007fffffffff000049
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff87
-87ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00007fffffffffff
-fffff800000000ffffffffffb30000000003000000003effffffff7f0000ffffffffffff
-7f0000ffffffffffffffffffffffffffff3e0000000100010000003fffffff8200007eff
-ffffff7d000082ffffff00007ffffff505000000030000000000f8ffffffff0000000005
-f7ffb300000000030300000000bfffffffff00007fffffffffffff00007fffffffff0000
-000004faffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffffff
-8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-fffffffffffffffffffffffffffffffffffffffffffffffffffffffffd000073ffffffff
-ffffffffb1000000fdffffffffffc23100000000000176ffffffffff730000fdffffffff
-ff730000fdffffffffffffffffffffffffffff760100000000000176ffffffa400003eff
-ffffffffff3e0000a4fffd000073fffffff94100000000000031beffffffffffae000000
-0077ffffc23100000000000031c1fffffffffd000073fffffffffffd000073ffffffffae
-00000000fbffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effffff
-ff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7867bcffffff
-ffffffffffff7d7378fffffffffffffffff5827872bcffffffffffffffbc6778ffffffff
-ffffbc6778ffffffffffffffffffffffffffffffffffbc727b72bcfffffffffe78697cff
-ffffffffffffff7c6978ffff7867bcfffffffffff482787882f5fffffffffffffffff481
-7869bbfffffffff582787882f5ffffffffffffff7867bcffffffffffff7867bcffffffff
-fff4827478ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001effff
-ffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001eff
-ffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000001e
-ffffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f000000
-1effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f0000
-001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f00
-00001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f
-0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffff7f0000001effffffff8787ffffffff87876319000000ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffff810000001effffffff8787ffffffff87876319000005ffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffff820000001effffffff8787ffffffff8787631500000005000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-0000000000000003000000001effffffff8787ffffffff8787741a000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000001effffffff8787ffffffff8787eefffb01000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-000000000000000000000000000000000000000000000000000000000000000000000000
-00000000000000000000000000001effffffff8787ffffffff8787ffffe6371c1e1e1e1e
-1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e
-1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e
-1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e
-1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e
-1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e
-1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e
-1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e
-1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e
-1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e
-1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e
-1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e
-1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e
-1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e
-1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e
-1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e
-1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e
-1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e
-1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e
-1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e
-1e1e1e1e1e1e1e1e1e1e1e1e1e1e1c38ffffffff8787ffffffff87ffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffff8787ffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffff8787ffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffff8787ffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
-ffffffffffffffffffffffffffffffffffffffffffffffff8787ff6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e876e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e
-%%EndData
-end
-%%PageTrailer
-%%Trailer
-%%BoundingBox: 0 109 495 573
-%%EOF
diff --git a/doc/user/states.png b/doc/user/states.png
deleted file mode 100644
index 26d8b7784a..0000000000
--- a/doc/user/states.png
+++ /dev/null
Binary files differ
diff --git a/doc/user/states.txt b/doc/user/states.txt
deleted file mode 100644
index 265d1e8c6f..0000000000
--- a/doc/user/states.txt
+++ /dev/null
@@ -1,26 +0,0 @@
- +-------------------------------------------------------------+
- | Non-existent |
- | +-------------------------------------------------------+ |
- | | | |
- | | | |
- | | Creating +---------+ Deleting | |
- | | -------------------> | Dormant | -------------------> | |
- | | +---------+ | |
- | | | | |
- | | Starting | | |
- | | | | |
- | | V Deleting | |
- | | +-------> +-------+ -------------------> | |
- | | Yielding / +----- | Ready | ------+ | |
- | | / / +-------+ <--+ \ | |
- | | / / \ \ Blocking | |
- | | / / Dispatching Readying \ \ | |
- | | / V \ V | |
- | | +-----------+ Blocking +---------+ | |
- | | | Executing | --------------> | Blocked | | |
- | | +-----------+ +---------+ | |
- | | | |
- | | | |
- | +-------------------------------------------------------+ |
- | Non-existent |
- +-------------------------------------------------------------+
diff --git a/doc/user/task.t b/doc/user/task.t
deleted file mode 100644
index c51fbf3491..0000000000
--- a/doc/user/task.t
+++ /dev/null
@@ -1,1797 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2014.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Task Manager
-
-@cindex tasks
-
-@section Introduction
-
-The task manager provides a comprehensive set of directives to
-create, delete, and administer tasks. The directives provided
-by the task manager are:
-
-@itemize @bullet
-@item @code{@value{DIRPREFIX}task_create} - Create a task
-@item @code{@value{DIRPREFIX}task_ident} - Get ID of a task
-@item @code{@value{DIRPREFIX}task_self} - Obtain ID of caller
-@item @code{@value{DIRPREFIX}task_start} - Start a task
-@item @code{@value{DIRPREFIX}task_restart} - Restart a task
-@item @code{@value{DIRPREFIX}task_delete} - Delete a task
-@item @code{@value{DIRPREFIX}task_suspend} - Suspend a task
-@item @code{@value{DIRPREFIX}task_resume} - Resume a task
-@item @code{@value{DIRPREFIX}task_is_suspended} - Determine if a task is suspended
-@item @code{@value{DIRPREFIX}task_set_priority} - Set task priority
-@item @code{@value{DIRPREFIX}task_mode} - Change current task's mode
-@item @code{@value{DIRPREFIX}task_wake_after} - Wake up after interval
-@item @code{@value{DIRPREFIX}task_wake_when} - Wake up when specified
-@item @code{@value{DIRPREFIX}iterate_over_all_threads} - Iterate Over Tasks
-@item @code{@value{DIRPREFIX}task_variable_add} - Associate per task variable
-@item @code{@value{DIRPREFIX}task_variable_get} - Obtain value of a a per task variable
-@item @code{@value{DIRPREFIX}task_variable_delete} - Remove per task variable
-@end itemize
-
-@section Background
-
-@subsection Task Definition
-
-@cindex task, definition
-
-Many definitions of a task have been proposed in computer literature.
-Unfortunately, none of these definitions encompasses all facets of the
-concept in a manner which is operating system independent. Several of the
-more common definitions are provided to enable each user to select a
-definition which best matches their own experience and understanding of the
-task concept:
-
-@itemize @bullet
-@item a "dispatchable" unit.
-
-@item an entity to which the processor is allocated.
-
-@item an atomic unit of a real-time, multiprocessor system.
-
-@item single threads of execution which concurrently compete for resources.
-
-@item a sequence of closely related computations which can execute
-concurrently with other computational sequences.
-
-@end itemize
-
-From RTEMS' perspective, a task is the smallest thread of
-execution which can compete on its own for system resources. A
-task is manifested by the existence of a task control block
-(TCB).
-
-@subsection Task Control Block
-
-The Task Control Block (TCB) is an RTEMS defined data structure
-which contains all the information that is pertinent to the
-execution of a task. During system initialization, RTEMS
-reserves a TCB for each task configured. A TCB is allocated
-upon creation of the task and is returned to the TCB free list
-upon deletion of the task.
-
-The TCB's elements are modified as a result of system calls made
-by the application in response to external and internal stimuli.
-TCBs are the only RTEMS internal data structure that can be
-accessed by an application via user extension routines. The TCB
-contains a task's name, ID, current priority, current and
-starting states, execution mode, TCB user extension pointer,
-scheduling control structures, as well as data required by a
-blocked task.
-
-A task's context is stored in the TCB when a task switch occurs.
-When the task regains control of the processor, its context is
-restored from the TCB. When a task is restarted, the initial
-state of the task is restored from the starting context area in
-the task's TCB.
-
-@subsection Task States
-
-@cindex task states
-
-A task may exist in one of the following five states:
-
-@itemize @bullet
-@item @b{executing} - Currently scheduled to the CPU
-@item @b{ready} - May be scheduled to the CPU
-@item @b{blocked} - Unable to be scheduled to the CPU
-@item @b{dormant} - Created task that is not started
-@item @b{non-existent} - Uncreated or deleted task
-@end itemize
-
-An active task may occupy the executing, ready, blocked or
-dormant state, otherwise the task is considered non-existent.
-One or more tasks may be active in the system simultaneously.
-Multiple tasks communicate, synchronize, and compete for system
-resources with each other via system calls. The multiple tasks
-appear to execute in parallel, but actually each is dispatched
-to the CPU for periods of time determined by the RTEMS
-scheduling algorithm. The scheduling of a task is based on its
-current state and priority.
-
-@subsection Task Priority
-
-@cindex task priority
-@cindex priority, task
-@findex rtems_task_priority
-
-A task's priority determines its importance in relation to the
-other tasks executing on the same processor. RTEMS supports 255
-levels of priority ranging from 1 to 255. The data type
-@code{@value{DIRPREFIX}task_priority} is used to store task
-priorities.
-
-Tasks of numerically
-smaller priority values are more important tasks than tasks of
-numerically larger priority values. For example, a task at
-priority level 5 is of higher privilege than a task at priority
-level 10. There is no limit to the number of tasks assigned to
-the same priority.
-
-Each task has a priority associated with it at all times. The
-initial value of this priority is assigned at task creation
-time. The priority of a task may be changed at any subsequent
-time.
-
-Priorities are used by the scheduler to determine which ready
-task will be allowed to execute. In general, the higher the
-logical priority of a task, the more likely it is to receive
-processor execution time.
-
-@subsection Task Mode
-
-@cindex task mode
-@findex rtems_task_mode
-
-A task's execution mode is a combination of the following
-four components:
-
-@itemize @bullet
-@item preemption
-@item ASR processing
-@item timeslicing
-@item interrupt level
-@end itemize
-
-It is used to modify RTEMS' scheduling process and to alter the
-execution environment of the task. The data type
-@code{@value{DIRPREFIX}task_mode} is used to manage the task
-execution mode.
-
-@cindex preemption
-
-The preemption component allows a task to determine when control of the
-processor is relinquished. If preemption is disabled
-(@code{@value{RPREFIX}NO_PREEMPT}), the task will retain control of the
-processor as long as it is in the executing state -- even if a higher
-priority task is made ready. If preemption is enabled
-(@code{@value{RPREFIX}PREEMPT}) and a higher priority task is made ready,
-then the processor will be taken away from the current task immediately and
-given to the higher priority task.
-
-@cindex timeslicing
-
-The timeslicing component is used by the RTEMS scheduler to determine how
-the processor is allocated to tasks of equal priority. If timeslicing is
-enabled (@code{@value{RPREFIX}TIMESLICE}), then RTEMS will limit the amount
-of time the task can execute before the processor is allocated to another
-ready task of equal priority. The length of the timeslice is application
-dependent and specified in the Configuration Table. If timeslicing is
-disabled (@code{@value{RPREFIX}NO_TIMESLICE}), then the task will be
-allowed to execute until a task of higher priority is made ready. If
-@code{@value{RPREFIX}NO_PREEMPT} is selected, then the timeslicing
-component is ignored by the scheduler.
-
-The asynchronous signal processing component is used to determine when
-received signals are to be processed by the task.
-If signal processing is enabled (@code{@value{RPREFIX}ASR}), then signals
-sent to the task will be processed the next time the task executes. If
-signal processing is disabled (@code{@value{RPREFIX}NO_ASR}), then all
-signals received by the task will remain posted until signal processing is
-enabled. This component affects only tasks which have established a
-routine to process asynchronous signals.
-
-@cindex interrupt level, task
-
-The interrupt level component is used to determine which
-interrupts will be enabled when the task is executing.
-@code{@value{RPREFIX}INTERRUPT_LEVEL(n)}
-specifies that the task will execute at interrupt level n.
-
-@itemize @bullet
-@item @code{@value{RPREFIX}PREEMPT} - enable preemption (default)
-@item @code{@value{RPREFIX}NO_PREEMPT} - disable preemption
-@item @code{@value{RPREFIX}NO_TIMESLICE} - disable timeslicing (default)
-@item @code{@value{RPREFIX}TIMESLICE} - enable timeslicing
-@item @code{@value{RPREFIX}ASR} - enable ASR processing (default)
-@item @code{@value{RPREFIX}NO_ASR} - disable ASR processing
-@item @code{@value{RPREFIX}INTERRUPT_LEVEL(0)} - enable all interrupts (default)
-@item @code{@value{RPREFIX}INTERRUPT_LEVEL(n)} - execute at interrupt level n
-@end itemize
-
-The set of default modes may be selected by specifying the
-@code{@value{RPREFIX}DEFAULT_MODES} constant.
-
-@subsection Accessing Task Arguments
-
-@cindex task arguments
-@cindex task prototype
-
-All RTEMS tasks are invoked with a single argument which is
-specified when they are started or restarted. The argument is
-commonly used to communicate startup information to the task.
-The simplest manner in which to define a task which accesses it
-argument is:
-
-@ifset is-C
-@findex rtems_task
-
-@example
-rtems_task user_task(
- rtems_task_argument argument
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure User_Task (
- Argument : in RTEMS.Task_Argument_Ptr
-);
-@end example
-@end ifset
-
-Application tasks requiring more information may view this
-single argument as an index into an array of parameter blocks.
-
-@subsection Floating Point Considerations
-
-@cindex floating point
-
-Creating a task with the @code{@value{RPREFIX}FLOATING_POINT} attribute
-flag results
-in additional memory being allocated for the TCB to store the state of the
-numeric coprocessor during task switches. This additional memory is
-@b{NOT} allocated for @code{@value{RPREFIX}NO_FLOATING_POINT} tasks. Saving
-and restoring the context of a @code{@value{RPREFIX}FLOATING_POINT} task
-takes longer than that of a @code{@value{RPREFIX}NO_FLOATING_POINT} task
-because of the relatively large amount of time required for the numeric
-coprocessor to save or restore its computational state.
-
-Since RTEMS was designed specifically for embedded military applications
-which are floating point intensive, the executive is optimized to avoid
-unnecessarily saving and restoring the state of the numeric coprocessor.
-The state of the numeric coprocessor is only saved when a
-@code{@value{RPREFIX}FLOATING_POINT} task is dispatched and that task was
-not the last task to utilize the coprocessor. In a system with only one
-@code{@value{RPREFIX}FLOATING_POINT} task, the state of the numeric
-coprocessor will never be saved or restored.
-
-Although the overhead imposed by @code{@value{RPREFIX}FLOATING_POINT} tasks
-is minimal, some applications may wish to completely avoid the overhead
-associated with @code{@value{RPREFIX}FLOATING_POINT} tasks and still
-utilize a numeric coprocessor. By preventing a task from being preempted
-while performing a sequence of floating point operations, a
-@code{@value{RPREFIX}NO_FLOATING_POINT} task can utilize the numeric
-coprocessor without incurring the overhead of a
-@code{@value{RPREFIX}FLOATING_POINT} context switch. This approach also
-avoids the allocation of a floating point context area. However, if this
-approach is taken by the application designer, NO tasks should be created
-as @code{@value{RPREFIX}FLOATING_POINT} tasks. Otherwise, the floating
-point context will not be correctly maintained because RTEMS assumes that
-the state of the numeric coprocessor will not be altered by
-@code{@value{RPREFIX}NO_FLOATING_POINT} tasks.
-
-If the supported processor type does not have hardware floating
-capabilities or a standard numeric coprocessor, RTEMS will not provide
-built-in support for hardware floating point on that processor. In this
-case, all tasks are considered @code{@value{RPREFIX}NO_FLOATING_POINT}
-whether created as @code{@value{RPREFIX}FLOATING_POINT} or
-@code{@value{RPREFIX}NO_FLOATING_POINT} tasks. A floating point emulation
-software library must be utilized for floating point operations.
-
-On some processors, it is possible to disable the floating point unit
-dynamically. If this capability is supported by the target processor, then
-RTEMS will utilize this capability to enable the floating point unit only
-for tasks which are created with the @code{@value{RPREFIX}FLOATING_POINT}
-attribute. The consequence of a @code{@value{RPREFIX}NO_FLOATING_POINT}
-task attempting to access the floating point unit is CPU dependent but will
-generally result in an exception condition.
-
-@subsection Per Task Variables
-
-@cindex per task variables
-
-Per task variables are deprecated, see the warning below.
-
-Per task variables are used to support global variables whose value
-may be unique to a task. After indicating that a variable should be
-treated as private (i.e. per-task) the task can access and modify the
-variable, but the modifications will not appear to other tasks, and
-other tasks' modifications to that variable will not affect the value
-seen by the task. This is accomplished by saving and restoring the
-variable's value each time a task switch occurs to or from the calling task.
-
-The value seen by other tasks, including those which have not added the
-variable to their set and are thus accessing the variable as a common
-location shared among tasks, cannot be affected by a task once it has
-added a variable to its local set. Changes made to the variable by
-other tasks will not affect the value seen by a task which has added the
-variable to its private set.
-
-This feature can be used when a routine is to be spawned repeatedly as
-several independent tasks. Although each task will have its own stack,
-and thus separate stack variables, they will all share the same static and
-global variables. To make a variable not shareable (i.e. a "global" variable
-that is specific to a single task), the tasks can call
-@code{rtems_task_variable_add} to make a separate copy of the variable
-for each task, but all at the same physical address.
-
-Task variables increase the context switch time to and from the
-tasks that own them so it is desirable to minimize the number of
-task variables. One efficient method is to have a single task
-variable that is a pointer to a dynamically allocated structure
-containing the task's private "global" data.
-
-A critical point with per-task variables is that each task must separately
-request that the same global variable is per-task private.
-
-@b{WARNING}: Per-Task variables are inherently broken on SMP systems. They
-only work correctly when there is one task executing in the system and
-that task is the logical owner of the value in the per-task variable's
-location. There is no way for a single memory image to contain the
-correct value for each task executing on each core. Consequently,
-per-task variables are disabled in SMP configurations of RTEMS.
-Instead the application developer should
-consider the use of POSIX Keys or Thread Local Storage (TLS). POSIX Keys
-are not enabled in all RTEMS configurations.
-
-@subsection Building a Task Attribute Set
-
-@cindex task attributes, building
-
-In general, an attribute set is built by a bitwise OR of the
-desired components. The set of valid task attribute components
-is listed below:
-
-@itemize @bullet
-@item @code{@value{RPREFIX}NO_FLOATING_POINT} - does not use coprocessor (default)
-@item @code{@value{RPREFIX}FLOATING_POINT} - uses numeric coprocessor
-@item @code{@value{RPREFIX}LOCAL} - local task (default)
-@item @code{@value{RPREFIX}GLOBAL} - global task
-@end itemize
-
-Attribute values are specifically designed to be mutually
-exclusive, therefore bitwise OR and addition operations are
-equivalent as long as each attribute appears exactly once in the
-component list. A component listed as a default is not required
-to appear in the component list, although it is a good
-programming practice to specify default components. If all
-defaults are desired, then @code{@value{RPREFIX}DEFAULT_ATTRIBUTES} should be used.
-
-This example demonstrates the attribute_set parameter needed to
-create a local task which utilizes the numeric coprocessor. The
-attribute_set parameter could be @code{@value{RPREFIX}FLOATING_POINT} or
-@code{@value{RPREFIX}LOCAL @value{OR} @value{RPREFIX}FLOATING_POINT}.
-The attribute_set parameter can be set to
-@code{@value{RPREFIX}FLOATING_POINT} because @code{@value{RPREFIX}LOCAL} is the default for all created
-tasks. If the task were global and used the numeric
-coprocessor, then the attribute_set parameter would be
-@code{@value{RPREFIX}GLOBAL @value{OR} @value{RPREFIX}FLOATING_POINT}.
-
-@subsection Building a Mode and Mask
-
-@cindex task mode, building
-
-In general, a mode and its corresponding mask is built by a
-bitwise OR of the desired components. The set of valid mode
-constants and each mode's corresponding mask constant is
-listed below:
-
-@ifset use-ascii
-@itemize @bullet
-@item @code{@value{RPREFIX}PREEMPT} is masked by
-@code{@value{RPREFIX}PREEMPT_MASK} and enables preemption
-
-@item @code{@value{RPREFIX}NO_PREEMPT} is masked by
-@code{@value{RPREFIX}PREEMPT_MASK} and disables preemption
-
-@item @code{@value{RPREFIX}NO_TIMESLICE} is masked by
-@code{@value{RPREFIX}TIMESLICE_MASK} and disables timeslicing
-
-@item @code{@value{RPREFIX}TIMESLICE} is masked by
-@code{@value{RPREFIX}TIMESLICE_MASK} and enables timeslicing
-
-@item @code{@value{RPREFIX}ASR} is masked by
-@code{@value{RPREFIX}ASR_MASK} and enables ASR processing
-
-@item @code{@value{RPREFIX}NO_ASR} is masked by
-@code{@value{RPREFIX}ASR_MASK} and disables ASR processing
-
-@item @code{@value{RPREFIX}INTERRUPT_LEVEL(0)} is masked by
-@code{@value{RPREFIX}INTERRUPT_MASK} and enables all interrupts
-
-@item @code{@value{RPREFIX}INTERRUPT_LEVEL(n)} is masked by
-@code{@value{RPREFIX}INTERRUPT_MASK} and sets interrupts level n
-@end itemize
-@end ifset
-
-@ifset use-tex
-@sp 1
-@c this is temporary
-@itemize @bullet
-@item @code{@value{RPREFIX}PREEMPT} is masked by
-@code{@value{RPREFIX}PREEMPT_MASK} and enables preemption
-
-@item @code{@value{RPREFIX}NO_PREEMPT} is masked by
-@code{@value{RPREFIX}PREEMPT_MASK} and disables preemption
-
-@item @code{@value{RPREFIX}NO_TIMESLICE} is masked by
-@code{@value{RPREFIX}TIMESLICE_MASK} and disables timeslicing
-
-@item @code{@value{RPREFIX}TIMESLICE} is masked by
-@code{@value{RPREFIX}TIMESLICE_MASK} and enables timeslicing
-
-@item @code{@value{RPREFIX}ASR} is masked by
-@code{@value{RPREFIX}ASR_MASK} and enables ASR processing
-
-@item @code{@value{RPREFIX}NO_ASR} is masked by
-@code{@value{RPREFIX}ASR_MASK} and disables ASR processing
-
-@item @code{@value{RPREFIX}INTERRUPT_LEVEL(0)} is masked by
-@code{@value{RPREFIX}INTERRUPT_MASK} and enables all interrupts
-
-@item @code{@value{RPREFIX}INTERRUPT_LEVEL(n)} is masked by
-@code{@value{RPREFIX}INTERRUPT_MASK} and sets interrupts level n
-
-@end itemize
-
-@tex
-@end tex
-@end ifset
-
-@ifset use-html
-@html
-<CENTER>
- <TABLE COLS=3 WIDTH="80%" BORDER=2>
-<TR><TD ALIGN=center><STRONG>Mode Constant</STRONG></TD>
- <TD ALIGN=center><STRONG>Mask Constant</STRONG></TD>
- <TD ALIGN=center><STRONG>Description</STRONG></TD></TR>
-<TR><TD ALIGN=center>@value{RPREFIX}PREEMPT</TD>
- <TD ALIGN=center>@value{RPREFIX}PREEMPT_MASK</TD>
- <TD ALIGN=center>enables preemption</TD></TR>
-<TR><TD ALIGN=center>@value{RPREFIX}NO_PREEMPT</TD>
- <TD ALIGN=center>@value{RPREFIX}PREEMPT_MASK</TD>
- <TD ALIGN=center>disables preemption</TD></TR>
-<TR><TD ALIGN=center>@value{RPREFIX}NO_TIMESLICE</TD>
- <TD ALIGN=center>@value{RPREFIX}TIMESLICE_MASK</TD>
- <TD ALIGN=center>disables timeslicing</TD></TR>
-<TR><TD ALIGN=center>@value{RPREFIX}TIMESLICE</TD>
- <TD ALIGN=center>@value{RPREFIX}TIMESLICE_MASK</TD>
- <TD ALIGN=center>enables timeslicing</TD></TR>
-<TR><TD ALIGN=center>@value{RPREFIX}ASR</TD>
- <TD ALIGN=center>@value{RPREFIX}ASR_MASK</TD>
- <TD ALIGN=center>enables ASR processing</TD></TR>
-<TR><TD ALIGN=center>@value{RPREFIX}NO_ASR</TD>
- <TD ALIGN=center>@value{RPREFIX}ASR_MASK</TD>
- <TD ALIGN=center>disables ASR processing</TD></TR>
-<TR><TD ALIGN=center>@value{RPREFIX}INTERRUPT_LEVEL(0)</TD>
- <TD ALIGN=center>@value{RPREFIX}INTERRUPT_MASK</TD>
- <TD ALIGN=center>enables all interrupts</TD></TR>
-<TR><TD ALIGN=center>@value{RPREFIX}INTERRUPT_LEVEL(n)</TD>
- <TD ALIGN=center>@value{RPREFIX}INTERRUPT_MASK</TD>
- <TD ALIGN=center>sets interrupts level n</TD></TR>
- </TABLE>
-</CENTER>
-@end html
-@end ifset
-
-Mode values are specifically designed to be mutually exclusive, therefore
-bitwise OR and addition operations are equivalent as long as each mode
-appears exactly once in the component list. A mode component listed as a
-default is not required to appear in the mode component list, although it
-is a good programming practice to specify default components. If all
-defaults are desired, the mode @code{@value{RPREFIX}DEFAULT_MODES} and the
-mask @code{@value{RPREFIX}ALL_MODE_MASKS} should be used.
-
-The following example demonstrates the mode and mask parameters used with
-the @code{@value{DIRPREFIX}task_mode}
-directive to place a task at interrupt level 3 and make it
-non-preemptible. The mode should be set to
-@code{@value{RPREFIX}INTERRUPT_LEVEL(3) @value{OR}
-@value{RPREFIX}NO_PREEMPT} to indicate the desired preemption mode and
-interrupt level, while the mask parameter should be set to
-@code{@value{RPREFIX}INTERRUPT_MASK @value{OR}
-@value{RPREFIX}NO_PREEMPT_MASK} to indicate that the calling task's
-interrupt level and preemption mode are being altered.
-
-@section Operations
-
-@subsection Creating Tasks
-
-The @code{@value{DIRPREFIX}task_create}
-directive creates a task by allocating a task
-control block, assigning the task a user-specified name,
-allocating it a stack and floating point context area, setting a
-user-specified initial priority, setting a user-specified
-initial mode, and assigning it a task ID. Newly created tasks
-are initially placed in the dormant state. All RTEMS tasks
-execute in the most privileged mode of the processor.
-
-@subsection Obtaining Task IDs
-
-When a task is created, RTEMS generates a unique task ID and
-assigns it to the created task until it is deleted. The task ID
-may be obtained by either of two methods. First, as the result
-of an invocation of the @code{@value{DIRPREFIX}task_create}
-directive, the task ID is
-stored in a user provided location. Second, the task ID may be
-obtained later using the @code{@value{DIRPREFIX}task_ident}
-directive. The task ID is
-used by other directives to manipulate this task.
-
-@subsection Starting and Restarting Tasks
-
-The @code{@value{DIRPREFIX}task_start}
-directive is used to place a dormant task in the
-ready state. This enables the task to compete, based on its
-current priority, for the processor and other system resources.
-Any actions, such as suspension or change of priority, performed
-on a task prior to starting it are nullified when the task is
-started.
-
-With the @code{@value{DIRPREFIX}task_start}
-directive the user specifies the task's
-starting address and argument. The argument is used to
-communicate some startup information to the task. As part of
-this directive, RTEMS initializes the task's stack based upon
-the task's initial execution mode and start address. The
-starting argument is passed to the task in accordance with the
-target processor's calling convention.
-
-The @code{@value{DIRPREFIX}task_restart}
-directive restarts a task at its initial
-starting address with its original priority and execution mode,
-but with a possibly different argument. The new argument may be
-used to distinguish between the original invocation of the task
-and subsequent invocations. The task's stack and control block
-are modified to reflect their original creation values.
-Although references to resources that have been requested are
-cleared, resources allocated by the task are NOT automatically
-returned to RTEMS. A task cannot be restarted unless it has
-previously been started (i.e. dormant tasks cannot be
-restarted). All restarted tasks are placed in the ready state.
-
-@subsection Suspending and Resuming Tasks
-
-The @code{@value{DIRPREFIX}task_suspend}
-directive is used to place either the caller or
-another task into a suspended state. The task remains suspended
-until a @code{@value{DIRPREFIX}task_resume}
-directive is issued. This implies that a
-task may be suspended as well as blocked waiting either to
-acquire a resource or for the expiration of a timer.
-
-The @code{@value{DIRPREFIX}task_resume}
-directive is used to remove another task from
-the suspended state. If the task is not also blocked, resuming
-it will place it in the ready state, allowing it to once again
-compete for the processor and resources. If the task was
-blocked as well as suspended, this directive clears the
-suspension and leaves the task in the blocked state.
-
-Suspending a task which is already suspended or resuming a
-task which is not suspended is considered an error.
-The @code{@value{DIRPREFIX}task_is_suspended} can be used to
-determine if a task is currently suspended.
-
-@subsection Delaying the Currently Executing Task
-
-The @code{@value{DIRPREFIX}task_wake_after} directive creates a sleep timer
-which allows a task to go to sleep for a specified interval. The task is
-blocked until the delay interval has elapsed, at which time the task is
-unblocked. A task calling the @code{@value{DIRPREFIX}task_wake_after}
-directive with a delay
-interval of @code{@value{RPREFIX}YIELD_PROCESSOR} ticks will yield the
-processor to any other ready task of equal or greater priority and remain
-ready to execute.
-
-The @code{@value{DIRPREFIX}task_wake_when}
-directive creates a sleep timer which allows
-a task to go to sleep until a specified date and time. The
-calling task is blocked until the specified date and time has
-occurred, at which time the task is unblocked.
-
-@subsection Changing Task Priority
-
-The @code{@value{DIRPREFIX}task_set_priority}
-directive is used to obtain or change the
-current priority of either the calling task or another task. If
-the new priority requested is
-@code{@value{RPREFIX}CURRENT_PRIORITY} or the task's
-actual priority, then the current priority will be returned and
-the task's priority will remain unchanged. If the task's
-priority is altered, then the task will be scheduled according
-to its new priority.
-
-The @code{@value{DIRPREFIX}task_restart}
-directive resets the priority of a task to its
-original value.
-
-@subsection Changing Task Mode
-
-The @code{@value{DIRPREFIX}task_mode}
-directive is used to obtain or change the current
-execution mode of the calling task. A task's execution mode is
-used to enable preemption, timeslicing, ASR processing, and to
-set the task's interrupt level.
-
-The @code{@value{DIRPREFIX}task_restart}
-directive resets the mode of a task to its
-original value.
-
-@subsection Task Deletion
-
-RTEMS provides the @code{@value{DIRPREFIX}task_delete}
-directive to allow a task to
-delete itself or any other task. This directive removes all
-RTEMS references to the task, frees the task's control block,
-removes it from resource wait queues, and deallocates its stack
-as well as the optional floating point context. The task's name
-and ID become inactive at this time, and any subsequent
-references to either of them is invalid. In fact, RTEMS may
-reuse the task ID for another task which is created later in the
-application.
-
-Unexpired delay timers (i.e. those used by
-@code{@value{DIRPREFIX}task_wake_after} and
-@code{@value{DIRPREFIX}task_wake_when}) and
-timeout timers associated with the task are
-automatically deleted, however, other resources dynamically
-allocated by the task are NOT automatically returned to RTEMS.
-Therefore, before a task is deleted, all of its dynamically
-allocated resources should be deallocated by the user. This may
-be accomplished by instructing the task to delete itself rather
-than directly deleting the task. Other tasks may instruct a
-task to delete itself by sending a "delete self" message, event,
-or signal, or by restarting the task with special arguments
-which instruct the task to delete itself.
-
-@subsection Transition Advice for Obsolete Directives
-
-@subsubsection Notepads
-@ifset is-C
-@findex rtems_task_get_note
-@findex rtems_task_set_note
-@end ifset
-
-Task notepads and the associated directives
-@code{@value{DIRPREFIX}task_get_note} and
-@code{@value{DIRPREFIX}task_set_note} were removed after the 4.11 Release
-Series. These were never thread-safe to access and subject to conflicting
-use of the notepad index by libraries which were designed independently.
-
-It is recommended that applications be modified to use services
-which are thread safe and not subject to issues with multiple applications
-conflicting over the key (e.g. notepad index) selection. For most
-applications, POSIX Keys should be used. These are available in all RTEMS
-build configurations. It is also possible that Thread Local Storage is
-an option for some use cases.
-
-@section Directives
-
-This section details the task manager's directives. A
-subsection is dedicated to each of this manager's directives and
-describes the calling sequence, related constants, usage, and
-status codes.
-
-@page
-
-@subsection TASK_CREATE - Create a task
-
-@cindex create a task
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_task_create
-@example
-rtems_status_code rtems_task_create(
- rtems_name name,
- rtems_task_priority initial_priority,
- size_t stack_size,
- rtems_mode initial_modes,
- rtems_attribute attribute_set,
- rtems_id *id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Task_Create (
- Name : in RTEMS.Name;
- Initial_Priority : in RTEMS.Task_Priority;
- Stack_Size : in RTEMS.Unsigned32;
- Initial_Modes : in RTEMS.Mode;
- Attribute_Set : in RTEMS.Attribute;
- ID : out RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - task created successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{id} is NULL@*
-@code{@value{RPREFIX}INVALID_NAME} - invalid task name@*
-@code{@value{RPREFIX}INVALID_PRIORITY} - invalid task priority@*
-@code{@value{RPREFIX}MP_NOT_CONFIGURED} - multiprocessing not configured@*
-@code{@value{RPREFIX}TOO_MANY} - too many tasks created@*
-@code{@value{RPREFIX}UNSATISFIED} - not enough memory for stack/FP context@*
-@code{@value{RPREFIX}TOO_MANY} - too many global objects
-
-@subheading DESCRIPTION:
-This directive creates a task which resides on the local node.
-It allocates and initializes a TCB, a stack, and an optional
-floating point context area. The mode parameter contains values
-which sets the task's initial execution mode. The
-@code{@value{RPREFIX}FLOATING_POINT} attribute should be
-specified if the created task
-is to use a numeric coprocessor. For performance reasons, it is
-recommended that tasks not using the numeric coprocessor should
-specify the @code{@value{RPREFIX}NO_FLOATING_POINT} attribute.
-If the @code{@value{RPREFIX}GLOBAL}
-attribute is specified, the task can be accessed from remote
-nodes. The task id, returned in id, is used in other task
-related directives to access the task. When created, a task is
-placed in the dormant state and can only be made ready to
-execute using the directive @code{@value{DIRPREFIX}task_start}.
-
-@subheading NOTES:
-This directive will not cause the calling task to be preempted.
-
-Valid task priorities range from a high of 1 to a low of 255.
-
-If the requested stack size is less than the configured
-minimum stack size, then RTEMS will use the configured
-minimum as the stack size for this task. In addition
-to being able to specify the task stack size as a integer,
-there are two constants which may be specified:
-
-@itemize @bullet
-@item @code{@value{RPREFIX}MINIMUM_STACK_SIZE}
-is the minimum stack size @b{RECOMMENDED} for use on this processor.
-This value is selected by the RTEMS developers conservatively to
-minimize the risk of blown stacks for most user applications.
-Using this constant when specifying the task stack size, indicates
-that the stack size will be at least
-@code{@value{RPREFIX}MINIMUM_STACK_SIZE} bytes in size. If the
-user configured minimum stack size is larger than the recommended
-minimum, then it will be used.
-
-@item @code{@value{RPREFIX}CONFIGURED_MINIMUM_STACK_SIZE}
-indicates that this task is to be created with a stack size
-of the minimum stack size that was configured by the application.
-If not explicitly configured by the application, the default
-configured minimum stack size is the processor dependent value
-@code{@value{RPREFIX}MINIMUM_STACK_SIZE}. Since this uses
-the configured minimum stack size value, you may get a stack
-size that is smaller or larger than the recommended minimum. This
-can be used to provide large stacks for all tasks on complex
-applications or small stacks on applications that are trying
-to conserve memory.
-
-@end itemize
-
-Application developers should consider the stack usage of the
-device drivers when calculating the stack size required for
-tasks which utilize the driver.
-
-The following task attribute constants are defined by RTEMS:
-
-@itemize @bullet
-@item @code{@value{RPREFIX}NO_FLOATING_POINT} - does not use coprocessor (default)
-@item @code{@value{RPREFIX}FLOATING_POINT} - uses numeric coprocessor
-@item @code{@value{RPREFIX}LOCAL} - local task (default)
-@item @code{@value{RPREFIX}GLOBAL} - global task
-@end itemize
-
-The following task mode constants are defined by RTEMS:
-
-@itemize @bullet
-@item @code{@value{RPREFIX}PREEMPT} - enable preemption (default)
-@item @code{@value{RPREFIX}NO_PREEMPT} - disable preemption
-@item @code{@value{RPREFIX}NO_TIMESLICE} - disable timeslicing (default)
-@item @code{@value{RPREFIX}TIMESLICE} - enable timeslicing
-@item @code{@value{RPREFIX}ASR} - enable ASR processing (default)
-@item @code{@value{RPREFIX}NO_ASR} - disable ASR processing
-@item @code{@value{RPREFIX}INTERRUPT_LEVEL(0)} - enable all interrupts (default)
-@item @code{@value{RPREFIX}INTERRUPT_LEVEL(n)} - execute at interrupt level n
-@end itemize
-
-The interrupt level portion of the task execution mode
-supports a maximum of 256 interrupt levels. These levels are
-mapped onto the interrupt levels actually supported by the
-target processor in a processor dependent fashion.
-
-Tasks should not be made global unless remote tasks must
-interact with them. This avoids the system overhead incurred by
-the creation of a global task. When a global task is created,
-the task's name and id must be transmitted to every node in the
-system for insertion in the local copy of the global object
-table.
-
-The total number of global objects, including tasks, is limited
-by the maximum_global_objects field in the Configuration Table.
-
-@page
-
-@subsection TASK_IDENT - Get ID of a task
-
-@cindex get ID of a task
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_task_ident
-@example
-rtems_status_code rtems_task_ident(
- rtems_name name,
- uint32_t node,
- rtems_id *id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Task_Ident (
- Name : in RTEMS.Name;
- Node : in RTEMS.Node;
- ID : out RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - task identified successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{id} is NULL@*
-@code{@value{RPREFIX}INVALID_NAME} - invalid task name@*
-@code{@value{RPREFIX}INVALID_NODE} - invalid node id
-
-@subheading DESCRIPTION:
-This directive obtains the task id associated with the task name
-specified in name. A task may obtain its own id by specifying
-@code{@value{RPREFIX}SELF} or its own task name in name. If the task name is not
-unique, then the task id returned will match one of the tasks
-with that name. However, this task id is not guaranteed to
-correspond to the desired task. The task id, returned in id, is
-used in other task related directives to access the task.
-
-@subheading NOTES:
-This directive will not cause the running task to be preempted.
-
-If node is @code{@value{RPREFIX}SEARCH_ALL_NODES}, all nodes are searched with the
-local node being searched first. All other nodes are searched
-with the lowest numbered node searched first.
-
-If node is a valid node number which does not represent the
-local node, then only the tasks exported by the designated node
-are searched.
-
-This directive does not generate activity on remote nodes. It
-accesses only the local copy of the global object table.
-
-@page
-
-@subsection TASK_SELF - Obtain ID of caller
-
-@cindex obtain ID of caller
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_task_self
-@example
-rtems_id rtems_task_self(void);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-function Task_Self return RTEMS.ID;
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-Returns the object Id of the calling task.
-
-@subheading DESCRIPTION:
-This directive returns the Id of the calling task.
-
-@subheading NOTES:
-If called from an interrupt service routine, this directive
-will return the Id of the interrupted task.
-
-@page
-
-@subsection TASK_START - Start a task
-
-@cindex starting a task
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_task_start
-@example
-rtems_status_code rtems_task_start(
- rtems_id id,
- rtems_task_entry entry_point,
- rtems_task_argument argument
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Task_Start (
- ID : in RTEMS.ID;
- Entry_Point : in RTEMS.Task_Entry;
- Argument : in RTEMS.Task_Argument;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - ask started successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - invalid task entry point@*
-@code{@value{RPREFIX}INVALID_ID} - invalid task id@*
-@code{@value{RPREFIX}INCORRECT_STATE} - task not in the dormant state@*
-@code{@value{RPREFIX}ILLEGAL_ON_REMOTE_OBJECT} - cannot start remote task
-
-@subheading DESCRIPTION:
-This directive readies the task, specified by @code{id}, for execution
-based on the priority and execution mode specified when the task
-was created. The starting address of the task is given in
-@code{entry_point}. The task's starting argument is contained in
-argument. This argument can be a single value or used as an index into an
-array of parameter blocks. The type of this numeric argument is an unsigned
-integer type with the property that any valid pointer to void can be converted
-to this type and then converted back to a pointer to void. The result will
-compare equal to the original pointer.
-
-@subheading NOTES:
-The calling task will be preempted if its preemption mode is
-enabled and the task being started has a higher priority.
-
-Any actions performed on a dormant task such as suspension or
-change of priority are nullified when the task is initiated via
-the @code{@value{DIRPREFIX}task_start} directive.
-
-@page
-
-@subsection TASK_RESTART - Restart a task
-
-@cindex restarting a task
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_task_restart
-@example
-rtems_status_code rtems_task_restart(
- rtems_id id,
- rtems_task_argument argument
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Task_Restart (
- ID : in RTEMS.ID;
- Argument : in RTEMS.Task_Argument;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - task restarted successfully@*
-@code{@value{RPREFIX}INVALID_ID} - task id invalid@*
-@code{@value{RPREFIX}INCORRECT_STATE} - task never started@*
-@code{@value{RPREFIX}ILLEGAL_ON_REMOTE_OBJECT} - cannot restart remote task
-
-@subheading DESCRIPTION:
-This directive resets the task specified by id to begin
-execution at its original starting address. The task's priority
-and execution mode are set to the original creation values. If
-the task is currently blocked, RTEMS automatically makes the
-task ready. A task can be restarted from any state, except the
-dormant state.
-
-The task's starting argument is contained in argument. This argument can be a
-single value or an index into an array of parameter blocks. The type of this
-numeric argument is an unsigned integer type with the property that any valid
-pointer to void can be converted to this type and then converted back to a
-pointer to void. The result will compare equal to the original pointer. This
-new argument may be used to distinguish
-between the initial @code{@value{DIRPREFIX}task_start}
-of the task and any ensuing calls
-to @code{@value{DIRPREFIX}task_restart}
-of the task. This can be beneficial in deleting
-a task. Instead of deleting a task using
-the @code{@value{DIRPREFIX}task_delete}
-directive, a task can delete another task by restarting that
-task, and allowing that task to release resources back to RTEMS
-and then delete itself.
-
-@subheading NOTES:
-If id is @code{@value{RPREFIX}SELF}, the calling task will be restarted and will not
-return from this directive.
-
-The calling task will be preempted if its preemption mode is
-enabled and the task being restarted has a higher priority.
-
-The task must reside on the local node, even if the task was
-created with the @code{@value{RPREFIX}GLOBAL} option.
-
-@page
-
-@subsection TASK_DELETE - Delete a task
-
-@cindex deleting a task
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_task_delete
-@example
-rtems_status_code rtems_task_delete(
- rtems_id id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Task_Delete (
- ID : in RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - task deleted successfully@*
-@code{@value{RPREFIX}INVALID_ID} - task id invalid@*
-@code{@value{RPREFIX}ILLEGAL_ON_REMOTE_OBJECT} - cannot restart remote task
-
-@subheading DESCRIPTION:
-This directive deletes a task, either the calling task or
-another task, as specified by id. RTEMS stops the execution of
-the task and reclaims the stack memory, any allocated delay or
-timeout timers, the TCB, and, if the task is @code{@value{RPREFIX}FLOATING_POINT}, its
-floating point context area. RTEMS does not reclaim the
-following resources: region segments, partition buffers,
-semaphores, timers, or rate monotonic periods.
-
-@subheading NOTES:
-A task is responsible for releasing its resources back to RTEMS
-before deletion. To insure proper deallocation of resources, a
-task should not be deleted unless it is unable to execute or
-does not hold any RTEMS resources. If a task holds RTEMS
-resources, the task should be allowed to deallocate its
-resources before deletion. A task can be directed to release
-its resources and delete itself by restarting it with a special
-argument or by sending it a message, an event, or a signal.
-
-Deletion of the current task (@code{@value{RPREFIX}SELF}) will force RTEMS to select
-another task to execute.
-
-When a global task is deleted, the task id must be transmitted
-to every node in the system for deletion from the local copy of
-the global object table.
-
-The task must reside on the local node, even if the task was
-created with the @code{@value{RPREFIX}GLOBAL} option.
-
-@page
-
-@subsection TASK_SUSPEND - Suspend a task
-
-@cindex suspending a task
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_task_suspend
-@example
-rtems_status_code rtems_task_suspend(
- rtems_id id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Task_Suspend (
- ID : in RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - task suspended successfully@*
-@code{@value{RPREFIX}INVALID_ID} - task id invalid@*
-@code{@value{RPREFIX}ALREADY_SUSPENDED} - task already suspended
-
-@subheading DESCRIPTION:
-This directive suspends the task specified by id from further
-execution by placing it in the suspended state. This state is
-additive to any other blocked state that the task may already be
-in. The task will not execute again until another task issues
-the @code{@value{DIRPREFIX}task_resume}
-directive for this task and any blocked state
-has been removed.
-
-@subheading NOTES:
-The requesting task can suspend itself by specifying @code{@value{RPREFIX}SELF} as id.
-In this case, the task will be suspended and a successful
-return code will be returned when the task is resumed.
-
-Suspending a global task which does not reside on the local node
-will generate a request to the remote node to suspend the
-specified task.
-
-If the task specified by id is already suspended, then the
-@code{@value{RPREFIX}ALREADY_SUSPENDED} status code is returned.
-
-@page
-
-@subsection TASK_RESUME - Resume a task
-
-@cindex resuming a task
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_task_resume
-@example
-rtems_status_code rtems_task_resume(
- rtems_id id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Task_Resume (
- ID : in RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - task resumed successfully@*
-@code{@value{RPREFIX}INVALID_ID} - task id invalid@*
-@code{@value{RPREFIX}INCORRECT_STATE} - task not suspended
-
-@subheading DESCRIPTION:
-This directive removes the task specified by id from the
-suspended state. If the task is in the ready state after the
-suspension is removed, then it will be scheduled to run. If the
-task is still in a blocked state after the suspension is
-removed, then it will remain in that blocked state.
-
-@subheading NOTES:
-The running task may be preempted if its preemption mode is
-enabled and the local task being resumed has a higher priority.
-
-Resuming a global task which does not reside on the local node
-will generate a request to the remote node to resume the
-specified task.
-
-If the task specified by id is not suspended, then the
-@code{@value{RPREFIX}INCORRECT_STATE} status code is returned.
-
-@page
-
-@subsection TASK_IS_SUSPENDED - Determine if a task is Suspended
-
-@cindex is task suspended
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_task_is_suspended
-@example
-rtems_status_code rtems_task_is_suspended(
- rtems_id id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Task_Is_Suspended (
- ID : in RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - task is NOT suspended@*
-@code{@value{RPREFIX}ALREADY_SUSPENDED} - task is currently suspended@*
-@code{@value{RPREFIX}INVALID_ID} - task id invalid@*
-@code{@value{RPREFIX}ILLEGAL_ON_REMOTE_OBJECT} - not supported on remote tasks
-
-@subheading DESCRIPTION:
-
-This directive returns a status code indicating whether or
-not the specified task is currently suspended.
-
-@subheading NOTES:
-
-This operation is not currently supported on remote tasks.
-
-@page
-
-@subsection TASK_SET_PRIORITY - Set task priority
-
-@findex rtems_task_set_priority
-@cindex current task priority
-@cindex set task priority
-@cindex get task priority
-@cindex obtain task priority
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-rtems_status_code rtems_task_set_priority(
- rtems_id id,
- rtems_task_priority new_priority,
- rtems_task_priority *old_priority
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Task_Set_Priority (
- ID : in RTEMS.ID;
- New_Priority : in RTEMS.Task_Priority;
- Old_Priority : out RTEMS.Task_Priority;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - task priority set successfully@*
-@code{@value{RPREFIX}INVALID_ID} - invalid task id@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - invalid return argument pointer@*
-@code{@value{RPREFIX}INVALID_PRIORITY} - invalid task priority
-
-@subheading DESCRIPTION:
-This directive manipulates the priority of the task specified by
-id. An id of @code{@value{RPREFIX}SELF} is used to indicate
-the calling task. When new_priority is not equal to
-@code{@value{RPREFIX}CURRENT_PRIORITY}, the specified
-task's previous priority is returned in old_priority. When
-new_priority is @code{@value{RPREFIX}CURRENT_PRIORITY},
-the specified task's current
-priority is returned in old_priority. Valid priorities range
-from a high of 1 to a low of 255.
-
-@subheading NOTES:
-The calling task may be preempted if its preemption mode is
-enabled and it lowers its own priority or raises another task's
-priority.
-
-In case the new priority equals the current priority of the task, then nothing
-happens.
-
-Setting the priority of a global task which does not reside on
-the local node will generate a request to the remote node to
-change the priority of the specified task.
-
-If the task specified by id is currently holding any binary
-semaphores which use the priority inheritance algorithm, then
-the task's priority cannot be lowered immediately. If the
-task's priority were lowered immediately, then priority
-inversion results. The requested lowering of the task's
-priority will occur when the task has released all priority
-inheritance binary semaphores. The task's priority can be
-increased regardless of the task's use of priority inheritance
-binary semaphores.
-
-@page
-
-@subsection TASK_MODE - Change the current task mode
-
-@cindex current task mode
-@cindex set task mode
-@cindex get task mode
-@cindex set task preemption mode
-@cindex get task preemption mode
-@cindex obtain task mode
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_task_mode
-@example
-rtems_status_code rtems_task_mode(
- rtems_mode mode_set,
- rtems_mode mask,
- rtems_mode *previous_mode_set
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Task_Mode (
- Mode_Set : in RTEMS.Mode;
- Mask : in RTEMS.Mode;
- Previous_Mode_Set : in RTEMS.Mode;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - task mode set successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{previous_mode_set} is NULL
-
-@subheading DESCRIPTION:
-This directive manipulates the execution mode of the calling
-task. A task's execution mode enables and disables preemption,
-timeslicing, asynchronous signal processing, as well as
-specifying the current interrupt level. To modify an execution
-mode, the mode class(es) to be changed must be specified in the
-mask parameter and the desired mode(s) must be specified in the
-mode parameter.
-
-@subheading NOTES:
-The calling task will be preempted if it enables preemption and
-a higher priority task is ready to run.
-
-Enabling timeslicing has no effect if preemption is disabled. For
-a task to be timesliced, that task must have both preemption and
-timeslicing enabled.
-
-A task can obtain its current execution mode, without modifying
-it, by calling this directive with a mask value of
-@code{@value{RPREFIX}CURRENT_MODE}.
-
-To temporarily disable the processing of a valid ASR, a task
-should call this directive with the @code{@value{RPREFIX}NO_ASR}
-indicator specified in mode.
-
-The set of task mode constants and each mode's corresponding
-mask constant is provided in the following table:
-
-@ifset use-ascii
-@itemize @bullet
-@item @code{@value{RPREFIX}PREEMPT} is masked by
-@code{@value{RPREFIX}PREEMPT_MASK} and enables preemption
-
-@item @code{@value{RPREFIX}NO_PREEMPT} is masked by
-@code{@value{RPREFIX}PREEMPT_MASK} and disables preemption
-
-@item @code{@value{RPREFIX}NO_TIMESLICE} is masked by
-@code{@value{RPREFIX}TIMESLICE_MASK} and disables timeslicing
-
-@item @code{@value{RPREFIX}TIMESLICE} is masked by
-@code{@value{RPREFIX}TIMESLICE_MASK} and enables timeslicing
-
-@item @code{@value{RPREFIX}ASR} is masked by
-@code{@value{RPREFIX}ASR_MASK} and enables ASR processing
-
-@item @code{@value{RPREFIX}NO_ASR} is masked by
-@code{@value{RPREFIX}ASR_MASK} and disables ASR processing
-
-@item @code{@value{RPREFIX}INTERRUPT_LEVEL(0)} is masked by
-@code{@value{RPREFIX}INTERRUPT_MASK} and enables all interrupts
-
-@item @code{@value{RPREFIX}INTERRUPT_LEVEL(n)} is masked by
-@code{@value{RPREFIX}INTERRUPT_MASK} and sets interrupts level n
-
-@end itemize
-@end ifset
-
-@ifset use-tex
-@sp 1
-@c this is temporary
-@itemize @bullet
-@item @code{@value{RPREFIX}PREEMPT} is masked by
-@code{@value{RPREFIX}PREEMPT_MASK} and enables preemption
-
-@item @code{@value{RPREFIX}NO_PREEMPT} is masked by
-@code{@value{RPREFIX}PREEMPT_MASK} and disables preemption
-
-@item @code{@value{RPREFIX}NO_TIMESLICE} is masked by
-@code{@value{RPREFIX}TIMESLICE_MASK} and disables timeslicing
-
-@item @code{@value{RPREFIX}TIMESLICE} is masked by
-@code{@value{RPREFIX}TIMESLICE_MASK} and enables timeslicing
-
-@item @code{@value{RPREFIX}ASR} is masked by
-@code{@value{RPREFIX}ASR_MASK} and enables ASR processing
-
-@item @code{@value{RPREFIX}NO_ASR} is masked by
-@code{@value{RPREFIX}ASR_MASK} and disables ASR processing
-
-@item @code{@value{RPREFIX}INTERRUPT_LEVEL(0)} is masked by
-@code{@value{RPREFIX}INTERRUPT_MASK} and enables all interrupts
-
-@item @code{@value{RPREFIX}INTERRUPT_LEVEL(n)} is masked by
-@code{@value{RPREFIX}INTERRUPT_MASK} and sets interrupts level n
-
-@end itemize
-
-@tex
-@end tex
-@end ifset
-
-@ifset use-html
-@html
-<CENTER>
- <TABLE COLS=3 WIDTH="80%" BORDER=2>
-<TR><TD ALIGN=center><STRONG>Mode Constant</STRONG></TD>
- <TD ALIGN=center><STRONG>Mask Constant</STRONG></TD>
- <TD ALIGN=center><STRONG>Description</STRONG></TD></TR>
-<TR><TD ALIGN=center>@value{RPREFIX}PREEMPT</TD>
- <TD ALIGN=center>@value{RPREFIX}PREEMPT_MASK</TD>
- <TD ALIGN=center>enables preemption</TD></TR>
-<TR><TD ALIGN=center>@value{RPREFIX}NO_PREEMPT</TD>
- <TD ALIGN=center>@value{RPREFIX}PREEMPT_MASK</TD>
- <TD ALIGN=center>disables preemption</TD></TR>
-<TR><TD ALIGN=center>@value{RPREFIX}NO_TIMESLICE</TD>
- <TD ALIGN=center>@value{RPREFIX}TIMESLICE_MASK</TD>
- <TD ALIGN=center>disables timeslicing</TD></TR>
-<TR><TD ALIGN=center>@value{RPREFIX}TIMESLICE</TD>
- <TD ALIGN=center>@value{RPREFIX}TIMESLICE_MASK</TD>
- <TD ALIGN=center>enables timeslicing</TD></TR>
-<TR><TD ALIGN=center>@value{RPREFIX}ASR</TD>
- <TD ALIGN=center>@value{RPREFIX}ASR_MASK</TD>
- <TD ALIGN=center>enables ASR processing</TD></TR>
-<TR><TD ALIGN=center>@value{RPREFIX}NO_ASR</TD>
- <TD ALIGN=center>@value{RPREFIX}ASR_MASK</TD>
- <TD ALIGN=center>disables ASR processing</TD></TR>
-<TR><TD ALIGN=center>@value{RPREFIX}INTERRUPT_LEVEL(0)</TD>
- <TD ALIGN=center>@value{RPREFIX}INTERRUPT_MASK</TD>
- <TD ALIGN=center>enables all interrupts</TD></TR>
-<TR><TD ALIGN=center>@value{RPREFIX}INTERRUPT_LEVEL(n)</TD>
- <TD ALIGN=center>@value{RPREFIX}INTERRUPT_MASK</TD>
- <TD ALIGN=center>sets interrupts level n</TD></TR>
- </TABLE>
-</CENTER>
-@end html
-@end ifset
-
-@page
-
-@subsection TASK_WAKE_AFTER - Wake up after interval
-
-@cindex delay a task for an interval
-@cindex wake up after an interval
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_task_wake_after
-@example
-rtems_status_code rtems_task_wake_after(
- rtems_interval ticks
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Task_Wake_After (
- Ticks : in RTEMS.Interval;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - always successful
-
-@subheading DESCRIPTION:
-This directive blocks the calling task for the specified number
-of system clock ticks. When the requested interval has elapsed,
-the task is made ready. The @code{@value{DIRPREFIX}clock_tick}
-directive automatically updates the delay period.
-
-@subheading NOTES:
-Setting the system date and time with the
-@code{@value{DIRPREFIX}clock_set} directive
-has no effect on a @code{@value{DIRPREFIX}task_wake_after} blocked task.
-
-A task may give up the processor and remain in the ready state
-by specifying a value of @code{@value{RPREFIX}YIELD_PROCESSOR} in ticks.
-
-The maximum timer interval that can be specified is the maximum
-value which can be represented by the uint32_t type.
-
-A clock tick is required to support the functionality of this directive.
-
-@page
-
-@subsection TASK_WAKE_WHEN - Wake up when specified
-
-@cindex delay a task until a wall time
-@cindex wake up at a wall time
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_task_wake_when
-@example
-rtems_status_code rtems_task_wake_when(
- rtems_time_of_day *time_buffer
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Task_Wake_When (
- Time_Buffer : in RTEMS.Time_Of_Day;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - awakened at date/time successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{time_buffer} is NULL@*
-@code{@value{RPREFIX}INVALID_TIME_OF_DAY} - invalid time buffer@*
-@code{@value{RPREFIX}NOT_DEFINED} - system date and time is not set
-
-@subheading DESCRIPTION:
-This directive blocks a task until the date and time specified
-in time_buffer. At the requested date and time, the calling
-task will be unblocked and made ready to execute.
-
-@subheading NOTES:
-The ticks portion of time_buffer @value{STRUCTURE} is ignored. The
-timing granularity of this directive is a second.
-
-A clock tick is required to support the functionality of this directive.
-
-@page
-
-@subsection ITERATE_OVER_ALL_THREADS - Iterate Over Tasks
-
-@cindex iterate over all threads
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_iterate_over_all_threads
-@example
-typedef void (*rtems_per_thread_routine)(
- Thread_Control *the_thread
-);
-
-void rtems_iterate_over_all_threads(
- rtems_per_thread_routine routine
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-NOT SUPPORTED FROM Ada BINDING
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES: NONE
-
-
-@subheading DESCRIPTION:
-
-This directive iterates over all of the existant threads in the
-system and invokes @code{routine} on each of them. The user should
-be careful in accessing the contents of @code{the_thread}.
-
-This routine is intended for use in diagnostic utilities and is
-not intented for routine use in an operational system.
-
-@subheading NOTES:
-
-There is NO protection while this routine is called. Thus it is
-possible that @code{the_thread} could be deleted while this is operating.
-By not having protection, the user is free to invoke support routines
-from the C Library which require semaphores for data structures.
-
-@page
-
-@subsection TASK_VARIABLE_ADD - Associate per task variable
-
-@cindex per-task variable
-@cindex task private variable
-@cindex task private data
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_task_variable_add
-@example
-rtems_status_code rtems_task_variable_add(
- rtems_id tid,
- void **task_variable,
- void (*dtor)(void *)
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-type Task_Variable_Dtor is access procedure (
- Argument : in RTEMS.Address;
-);
-
-procedure Task_Variable_Add (
- ID : in RTEMS.ID;
- Task_Variable : in RTEMS.Address;
- Dtor : in RTEMS.Task_Variable_Dtor;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - per task variable added successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{task_variable} is NULL@*
-@code{@value{RPREFIX}INVALID_ID} - invalid task id@*
-@code{@value{RPREFIX}NO_MEMORY} - invalid task id@*
-@code{@value{RPREFIX}ILLEGAL_ON_REMOTE_OBJECT} - not supported on remote tasks@*
-
-@subheading DESCRIPTION:
-This directive adds the memory location specified by the
-ptr argument to the context of the given task. The variable will
-then be private to the task. The task can access and modify the
-variable, but the modifications will not appear to other tasks, and
-other tasks' modifications to that variable will not affect the value
-seen by the task. This is accomplished by saving and restoring the
-variable's value each time a task switch occurs to or from the calling task.
-If the dtor argument is non-NULL it specifies the address of a `destructor'
-function which will be called when the task is deleted. The argument
-passed to the destructor function is the task's value of the variable.
-
-@subheading NOTES:
-
-This directive is deprecated and task variables will be removed.
-
-Task variables increase the context switch time to and from the
-tasks that own them so it is desirable to minimize the number of
-task variables. One efficient method
-is to have a single task variable that is a pointer to a dynamically
-allocated structure containing the task's private `global' data.
-In this case the destructor function could be `free'.
-
-Per-task variables are disabled in SMP configurations and this service
-is not available.
-
-@page
-
-@subsection TASK_VARIABLE_GET - Obtain value of a per task variable
-
-@cindex get per-task variable
-@cindex obtain per-task variable
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_task_variable_get
-@example
-rtems_status_code rtems_task_variable_get(
- rtems_id tid,
- void **task_variable,
- void **task_variable_value
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Task_Variable_Get (
- ID : in RTEMS.ID;
- Task_Variable : out RTEMS.Address;
- Task_Variable_Value : out RTEMS.Address;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - per task variable obtained successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{task_variable} is NULL@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{task_variable_value} is NULL@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{task_variable} is not found@*
-@code{@value{RPREFIX}NO_MEMORY} - invalid task id@*
-@code{@value{RPREFIX}ILLEGAL_ON_REMOTE_OBJECT} - not supported on remote tasks@*
-
-@subheading DESCRIPTION:
-This directive looks up the private value of a task variable for a
-specified task and stores that value in the location pointed to by
-the result argument. The specified task is usually not the calling
-task, which can get its private value by directly accessing the variable.
-
-@subheading NOTES:
-
-This directive is deprecated and task variables will be removed.
-
-If you change memory which @code{task_variable_value} points to,
-remember to declare that memory as volatile, so that the compiler
-will optimize it correctly. In this case both the pointer
-@code{task_variable_value} and data referenced by @code{task_variable_value}
-should be considered volatile.
-
-Per-task variables are disabled in SMP configurations and this service
-is not available.
-
-@page
-
-@subsection TASK_VARIABLE_DELETE - Remove per task variable
-
-@cindex per-task variable
-@cindex task private variable
-@cindex task private data
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_task_variable_delete
-@example
-rtems_status_code rtems_task_variable_delete(
- rtems_id id,
- void **task_variable
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Task_Variable_Delete (
- ID : in RTEMS.ID;
- Task_Variable : out RTEMS.Address;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - per task variable deleted successfully@*
-@code{@value{RPREFIX}INVALID_ID} - invalid task id@*
-@code{@value{RPREFIX}NO_MEMORY} - invalid task id@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{task_variable} is NULL@*
-@code{@value{RPREFIX}ILLEGAL_ON_REMOTE_OBJECT} - not supported on remote tasks@*
-
-@subheading DESCRIPTION:
-This directive removes the given location from a task's context.
-
-@subheading NOTES:
-
-This directive is deprecated and task variables will be removed.
-
-Per-task variables are disabled in SMP configurations and this service
-is not available.
-
diff --git a/doc/user/timer.t b/doc/user/timer.t
deleted file mode 100644
index 8a47bfe558..0000000000
--- a/doc/user/timer.t
+++ /dev/null
@@ -1,731 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2008.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter Timer Manager
-
-@cindex timers
-
-@section Introduction
-
-The timer manager provides support for timer
-facilities. The directives provided by the timer manager are:
-
-@itemize @bullet
-@item @code{@value{DIRPREFIX}timer_create} - Create a timer
-@item @code{@value{DIRPREFIX}timer_ident} - Get ID of a timer
-@item @code{@value{DIRPREFIX}timer_cancel} - Cancel a timer
-@item @code{@value{DIRPREFIX}timer_delete} - Delete a timer
-@item @code{@value{DIRPREFIX}timer_fire_after} - Fire timer after interval
-@item @code{@value{DIRPREFIX}timer_fire_when} - Fire timer when specified
-@item @code{@value{DIRPREFIX}timer_initiate_server} - Initiate server for task-based timers
-@item @code{@value{DIRPREFIX}timer_server_fire_after} - Fire task-based timer after interval
-@item @code{@value{DIRPREFIX}timer_server_fire_when} - Fire task-based timer when specified
-@item @code{@value{DIRPREFIX}timer_reset} - Reset an interval timer
-@end itemize
-
-
-@section Background
-
-@subsection Required Support
-
-A clock tick is required to support the functionality provided by this manager.
-
-@subsection Timers
-
-A timer is an RTEMS object which allows the
-application to schedule operations to occur at specific times in
-the future. User supplied timer service routines are invoked by
-either the @code{@value{DIRPREFIX}clock_tick} directive or
-a special Timer Server task when the timer fires. Timer service
-routines may perform any operations or directives which normally
-would be performed by the application code which invoked the
-@code{@value{DIRPREFIX}clock_tick} directive.
-
-The timer can be used to implement watchdog routines
-which only fire to denote that an application error has
-occurred. The timer is reset at specific points in the
-application to ensure that the watchdog does not fire. Thus, if
-the application does not reset the watchdog timer, then the
-timer service routine will fire to indicate that the application
-has failed to reach a reset point. This use of a timer is
-sometimes referred to as a "keep alive" or a "deadman" timer.
-
-@subsection Timer Server
-
-The Timer Server task is responsible for executing the timer
-service routines associated with all task-based timers.
-This task executes at a priority higher than any RTEMS application
-task, and is created non-preemptible, and thus can be viewed logically as
-the lowest priority interrupt.
-
-By providing a mechanism where timer service routines execute
-in task rather than interrupt space, the application is
-allowed a bit more flexibility in what operations a timer
-service routine can perform. For example, the Timer Server
-can be configured to have a floating point context in which case
-it would be safe to perform floating point operations
-from a task-based timer. Most of the time, executing floating
-point instructions from an interrupt service routine
-is not considered safe. However, since the Timer Server task
-is non-preemptible, only directives allowed from an ISR can be
-called in the timer service routine.
-
-The Timer Server is designed to remain blocked until a
-task-based timer fires. This reduces the execution overhead
-of the Timer Server.
-
-@subsection Timer Service Routines
-
-The timer service routine should adhere to @value{LANGUAGE} calling
-conventions and have a prototype similar to the following:
-
-@ifset is-C
-@findex rtems_timer_service_routine
-@example
-rtems_timer_service_routine user_routine(
- rtems_id timer_id,
- void *user_data
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure User_Routine(
- Timer_ID : in RTEMS.ID;
- User_Data : in System.Address
-);
-@end example
-@end ifset
-
-Where the timer_id parameter is the RTEMS object ID
-of the timer which is being fired and user_data is a pointer to
-user-defined information which may be utilized by the timer
-service routine. The argument user_data may be NULL.
-
-@section Operations
-
-@subsection Creating a Timer
-
-The @code{@value{DIRPREFIX}timer_create} directive creates a timer by
-allocating a Timer Control Block (TMCB), assigning the timer a
-user-specified name, and assigning it a timer ID. Newly created
-timers do not have a timer service routine associated with them
-and are not active.
-
-@subsection Obtaining Timer IDs
-
-When a timer is created, RTEMS generates a unique
-timer ID and assigns it to the created timer until it is
-deleted. The timer ID may be obtained by either of two methods.
-First, as the result of an invocation of the
-@code{@value{DIRPREFIX}timer_create}
-directive, the timer ID is stored in a user provided location.
-Second, the timer ID may be obtained later using the
-@code{@value{DIRPREFIX}timer_ident} directive. The timer ID
-is used by other directives to manipulate this timer.
-
-@subsection Initiating an Interval Timer
-
-The @code{@value{DIRPREFIX}timer_fire_after}
-and @code{@value{DIRPREFIX}timer_server_fire_after}
-directives initiate a timer to fire a user provided
-timer service routine after the specified
-number of clock ticks have elapsed. When the interval has
-elapsed, the timer service routine will be invoked from the
-@code{@value{DIRPREFIX}clock_tick} directive if it was initiated
-by the @code{@value{DIRPREFIX}timer_fire_after} directive
-and from the Timer Server task if initiated by the
-@code{@value{DIRPREFIX}timer_server_fire_after} directive.
-
-@subsection Initiating a Time of Day Timer
-
-The @code{@value{DIRPREFIX}timer_fire_when}
-and @code{@value{DIRPREFIX}timer_server_fire_when}
-directive initiate a timer to
-fire a user provided timer service routine when the specified
-time of day has been reached. When the interval has elapsed,
-the timer service routine will be invoked from the
-@code{@value{DIRPREFIX}clock_tick} directive
-by the @code{@value{DIRPREFIX}timer_fire_when} directive
-and from the Timer Server task if initiated by the
-@code{@value{DIRPREFIX}timer_server_fire_when} directive.
-
-@subsection Canceling a Timer
-
-The @code{@value{DIRPREFIX}timer_cancel} directive is used to halt the
-specified timer. Once canceled, the timer service routine will
-not fire unless the timer is reinitiated. The timer can be
-reinitiated using the @code{@value{DIRPREFIX}timer_reset},
-@code{@value{DIRPREFIX}timer_fire_after}, and
-@code{@value{DIRPREFIX}timer_fire_when} directives.
-
-@subsection Resetting a Timer
-
-The @code{@value{DIRPREFIX}timer_reset} directive is used to restore an
-interval timer initiated by a previous invocation of
-@code{@value{DIRPREFIX}timer_fire_after} or
-@code{@value{DIRPREFIX}timer_server_fire_after} to
-its original interval length. If the
-timer has not been used or the last usage of this timer
-was by the @code{@value{DIRPREFIX}timer_fire_when}
-or @code{@value{DIRPREFIX}timer_server_fire_when}
-directive, then an error is returned. The timer service routine
-is not changed or fired by this directive.
-
-@subsection Initiating the Timer Server
-
-The @code{@value{DIRPREFIX}timer_initiate_server} directive is used to
-allocate and start the execution of the Timer Server task. The
-application can specify both the stack size and attributes of the
-Timer Server. The Timer Server executes at a priority higher than
-any application task and thus the user can expect to be preempted
-as the result of executing the @code{@value{DIRPREFIX}timer_initiate_server}
-directive.
-
-@subsection Deleting a Timer
-
-The @code{@value{DIRPREFIX}timer_delete} directive is used to delete a timer.
-If the timer is running and has not expired, the timer is
-automatically canceled. The timer's control block is returned
-to the TMCB free list when it is deleted. A timer can be
-deleted by a task other than the task which created the timer.
-Any subsequent references to the timer's name and ID are invalid.
-
-@section Directives
-
-This section details the timer manager's directives.
-A subsection is dedicated to each of this manager's directives
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-@c
-@c
-@c
-@page
-@subsection TIMER_CREATE - Create a timer
-
-@cindex create a timer
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_timer_create
-@example
-rtems_status_code rtems_timer_create(
- rtems_name name,
- rtems_id *id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Timer_Create (
- Name : in RTEMS.Name;
- ID : out RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - timer created successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{id} is NULL@*
-@code{@value{RPREFIX}INVALID_NAME} - invalid timer name@*
-@code{@value{RPREFIX}TOO_MANY} - too many timers created
-
-@subheading DESCRIPTION:
-
-This directive creates a timer. The assigned timer
-id is returned in id. This id is used to access the timer with
-other timer manager directives. For control and maintenance of
-the timer, RTEMS allocates a TMCB from the local TMCB free pool
-and initializes it.
-
-@subheading NOTES:
-
-This directive will not cause the calling task to be
-preempted.
-
-@c
-@c
-@c
-@page
-@subsection TIMER_IDENT - Get ID of a timer
-
-@cindex obtain the ID of a timer
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_timer_ident
-@example
-rtems_status_code rtems_timer_ident(
- rtems_name name,
- rtems_id *id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Timer_Ident (
- Name : in RTEMS.Name;
- ID : out RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - timer identified successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{id} is NULL@*
-@code{@value{RPREFIX}INVALID_NAME} - timer name not found
-
-@subheading DESCRIPTION:
-
-This directive obtains the timer id associated with
-the timer name to be acquired. If the timer name is not unique,
-then the timer id will match one of the timers with that name.
-However, this timer id is not guaranteed to correspond to the
-desired timer. The timer id is used to access this timer in
-other timer related directives.
-
-@subheading NOTES:
-
-This directive will not cause the running task to be
-preempted.
-
-@c
-@c
-@c
-@page
-@subsection TIMER_CANCEL - Cancel a timer
-
-@cindex cancel a timer
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_timer_cancel
-@example
-rtems_status_code rtems_timer_cancel(
- rtems_id id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Timer_Cancel (
- ID : in RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - timer canceled successfully@*
-@code{@value{RPREFIX}INVALID_ID} - invalid timer id
-
-@subheading DESCRIPTION:
-
-This directive cancels the timer id. This timer will
-be reinitiated by the next invocation of @code{@value{DIRPREFIX}timer_reset},
-@code{@value{DIRPREFIX}timer_fire_after}, or
-@code{@value{DIRPREFIX}timer_fire_when} with this id.
-
-@subheading NOTES:
-
-This directive will not cause the running task to be preempted.
-
-@c
-@c
-@c
-@page
-@subsection TIMER_DELETE - Delete a timer
-
-@cindex delete a timer
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_timer_delete
-@example
-rtems_status_code rtems_timer_delete(
- rtems_id id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Timer_Delete (
- ID : in RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - timer deleted successfully@*
-@code{@value{RPREFIX}INVALID_ID} - invalid timer id
-
-@subheading DESCRIPTION:
-
-This directive deletes the timer specified by id. If
-the timer is running, it is automatically canceled. The TMCB
-for the deleted timer is reclaimed by RTEMS.
-
-@subheading NOTES:
-
-This directive will not cause the running task to be
-preempted.
-
-A timer can be deleted by a task other than the task
-which created the timer.
-
-@c
-@c
-@c
-@page
-@subsection TIMER_FIRE_AFTER - Fire timer after interval
-
-@cindex fire a timer after an interval
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_timer_fire_after
-@example
-rtems_status_code rtems_timer_fire_after(
- rtems_id id,
- rtems_interval ticks,
- rtems_timer_service_routine_entry routine,
- void *user_data
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Timer_Fire_After (
- ID : in RTEMS.ID;
- Ticks : in RTEMS.Interval;
- Routine : in RTEMS.Timer_Service_Routine;
- User_Data : in RTEMS.Address;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - timer initiated successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{routine} is NULL@*
-@code{@value{RPREFIX}INVALID_ID} - invalid timer id@*
-@code{@value{RPREFIX}INVALID_NUMBER} - invalid interval
-
-@subheading DESCRIPTION:
-
-This directive initiates the timer specified by id.
-If the timer is running, it is automatically canceled before
-being initiated. The timer is scheduled to fire after an
-interval ticks clock ticks has passed. When the timer fires,
-the timer service routine routine will be invoked with the
-argument user_data.
-
-@subheading NOTES:
-
-This directive will not cause the running task to be
-preempted.
-
-@c
-@c
-@c
-@page
-@subsection TIMER_FIRE_WHEN - Fire timer when specified
-
-@cindex fire a timer at wall time
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_timer_fire_when
-@example
-rtems_status_code rtems_timer_fire_when(
- rtems_id id,
- rtems_time_of_day *wall_time,
- rtems_timer_service_routine_entry routine,
- void *user_data
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Timer_Fire_When (
- ID : in RTEMS.ID;
- Wall_Time : in RTEMS.Time_Of_Day;
- Routine : in RTEMS.Timer_Service_Routine;
- User_Data : in RTEMS.Address;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - timer initiated successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{routine} is NULL@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{wall_time} is NULL@*
-@code{@value{RPREFIX}INVALID_ID} - invalid timer id@*
-@code{@value{RPREFIX}NOT_DEFINED} - system date and time is not set@*
-@code{@value{RPREFIX}INVALID_CLOCK} - invalid time of day
-
-@subheading DESCRIPTION:
-
-This directive initiates the timer specified by id.
-If the timer is running, it is automatically canceled before
-being initiated. The timer is scheduled to fire at the time of
-day specified by wall_time. When the timer fires, the timer
-service routine routine will be invoked with the argument
-user_data.
-
-@subheading NOTES:
-
-This directive will not cause the running task to be
-preempted.
-
-@c
-@c
-@c
-@page
-@subsection TIMER_INITIATE_SERVER - Initiate server for task-based timers
-
-@cindex initiate the Timer Server
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_timer_initiate_server
-@example
-rtems_status_code rtems_timer_initiate_server(
- uint32_t priority,
- uint32_t stack_size,
- rtems_attribute attribute_set
-)
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Timer_Initiate_Server (
- Server_Priority : in RTEMS.Task_Priority;
- Stack_Size : in RTEMS.Unsigned32;
- Attribute_Set : in RTEMS.Attribute;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - Timer Server initiated successfully@*
-@code{@value{RPREFIX}TOO_MANY} - too many tasks created
-
-@subheading DESCRIPTION:
-
-This directive initiates the Timer Server task. This task
-is responsible for executing all timers initiated via the
-@code{@value{DIRPREFIX}timer_server_fire_after} or
-@code{@value{DIRPREFIX}timer_server_fire_when} directives.
-
-@subheading NOTES:
-
-This directive could cause the calling task to be preempted.
-
-The Timer Server task is created using the
-@code{@value{DIRPREFIX}task_create} service and must be accounted
-for when configuring the system.
-
-Even through this directive invokes the @code{@value{DIRPREFIX}task_create}
-and @code{@value{DIRPREFIX}task_start} directives, it should only fail
-due to resource allocation problems.
-
-@c
-@c
-@c
-@page
-@subsection TIMER_SERVER_FIRE_AFTER - Fire task-based timer after interval
-
-@cindex fire task-based a timer after an interval
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_timer_server_fire_after
-@example
-rtems_status_code rtems_timer_server_fire_after(
- rtems_id id,
- rtems_interval ticks,
- rtems_timer_service_routine_entry routine,
- void *user_data
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Timer_Fire_Server_After (
- ID : in RTEMS.ID;
- Ticks : in RTEMS.Interval;
- Routine : in RTEMS.Timer_Service_Routine;
- User_Data : in RTEMS.Address;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - timer initiated successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{routine} is NULL@*
-@code{@value{RPREFIX}INVALID_ID} - invalid timer id@*
-@code{@value{RPREFIX}INVALID_NUMBER} - invalid interval@*
-@code{@value{RPREFIX}INCORRECT_STATE} - Timer Server not initiated
-
-@subheading DESCRIPTION:
-
-This directive initiates the timer specified by id and specifies
-that when it fires it will be executed by the Timer Server.
-
-If the timer is running, it is automatically canceled before
-being initiated. The timer is scheduled to fire after an
-interval ticks clock ticks has passed. When the timer fires,
-the timer service routine routine will be invoked with the
-argument user_data.
-
-@subheading NOTES:
-
-This directive will not cause the running task to be
-preempted.
-
-@c
-@c
-@c
-@page
-@subsection TIMER_SERVER_FIRE_WHEN - Fire task-based timer when specified
-
-@cindex fire a task-based timer at wall time
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_timer_server_fire_when
-@example
-rtems_status_code rtems_timer_server_fire_when(
- rtems_id id,
- rtems_time_of_day *wall_time,
- rtems_timer_service_routine_entry routine,
- void *user_data
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Timer_Fire_Server_When (
- ID : in RTEMS.ID;
- Wall_Time : in RTEMS.Time_Of_Day;
- Routine : in RTEMS.Timer_Service_Routine;
- User_Data : in RTEMS.Address;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - timer initiated successfully@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{routine} is NULL@*
-@code{@value{RPREFIX}INVALID_ADDRESS} - @code{wall_time} is NULL@*
-@code{@value{RPREFIX}INVALID_ID} - invalid timer id@*
-@code{@value{RPREFIX}NOT_DEFINED} - system date and time is not set@*
-@code{@value{RPREFIX}INVALID_CLOCK} - invalid time of day@*
-@code{@value{RPREFIX}INCORRECT_STATE} - Timer Server not initiated
-
-@subheading DESCRIPTION:
-
-This directive initiates the timer specified by id and specifies
-that when it fires it will be executed by the Timer Server.
-
-If the timer is running, it is automatically canceled before
-being initiated. The timer is scheduled to fire at the time of
-day specified by wall_time. When the timer fires, the timer
-service routine routine will be invoked with the argument
-user_data.
-
-@subheading NOTES:
-
-This directive will not cause the running task to be
-preempted.
-
-@c
-@c
-@c
-@page
-@subsection TIMER_RESET - Reset an interval timer
-
-@cindex reset a timer
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_timer_reset
-@example
-rtems_status_code rtems_timer_reset(
- rtems_id id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Timer_Reset (
- ID : in RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - timer reset successfully@*
-@code{@value{RPREFIX}INVALID_ID} - invalid timer id@*
-@code{@value{RPREFIX}NOT_DEFINED} - attempted to reset a when or newly created timer
-
-@subheading DESCRIPTION:
-
-This directive resets the timer associated with id.
-This timer must have been previously initiated with either the
-@code{@value{DIRPREFIX}timer_fire_after} or
-@code{@value{DIRPREFIX}timer_server_fire_after}
-directive. If active the timer is canceled,
-after which the timer is reinitiated using the same interval and
-timer service routine which the original
-@code{@value{DIRPREFIX}timer_fire_after}
-@code{@value{DIRPREFIX}timer_server_fire_after}
-directive used.
-
-@subheading NOTES:
-
-If the timer has not been used or the last usage of this timer
-was by a @code{@value{DIRPREFIX}timer_fire_when} or
-@code{@value{DIRPREFIX}timer_server_fire_when}
-directive, then the @code{@value{RPREFIX}NOT_DEFINED} error is
-returned.
-
-Restarting a cancelled after timer results in the timer being
-reinitiated with its previous timer service routine and interval.
-
-This directive will not cause the running task to be preempted.
-
diff --git a/doc/user/timespec.t b/doc/user/timespec.t
deleted file mode 100644
index 57ed2f3a03..0000000000
--- a/doc/user/timespec.t
+++ /dev/null
@@ -1,553 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2012.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-
-@chapter Timespec Helpers
-
-@section Introduction
-
-The Timespec helpers manager provides directives to assist in manipulating
-instances of the POSIX @code{struct timespec} structure.
-
-The directives provided by the timespec helpers manager are:
-
-@itemize @bullet
-@item @code{rtems_timespec_set} - Set timespec's value
-@item @code{rtems_timespec_zero} - Zero timespec's value
-@item @code{rtems_timespec_is_valid} - Check if timespec is valid
-@item @code{rtems_timespec_add_to} - Add two timespecs
-@item @code{rtems_timespec_subtract} - Subtract two timespecs
-@item @code{rtems_timespec_divide} - Divide two timespecs
-@item @code{rtems_timespec_divide_by_integer} - Divide timespec by integer
-@item @code{rtems_timespec_less_than} - Less than operator
-@item @code{rtems_timespec_greater_than} - Greater than operator
-@item @code{rtems_timespec_equal_to} - Check if two timespecs are equal
-@item @code{rtems_timespec_get_seconds} - Obtain seconds portion of timespec
-@item @code{rtems_timespec_get_nanoseconds} - Obtain nanoseconds portion of timespec
-@item @code{rtems_timespec_to_ticks} - Convert timespec to number of ticks
-@item @code{rtems_timespec_from_ticks} - Convert ticks to timespec
-@end itemize
-
-@section Background
-
-@subsection Time Storage Conventions
-
-Time can be stored in many ways. One of them is the @code{struct timespec}
-format which is a structure that consists of the fields @code{tv_sec}
-to represent seconds and @code{tv_nsec} to represent nanoseconds. The
-@code{struct timeval} structure is simular and consists of seconds (stored
-in @code{tv_sec}) and microseconds (stored in @code{tv_usec}). Either
-@code{struct timespec} or @code{struct timeval} can be used to represent
-elapsed time, time of executing some operations, or time of day.
-
-@section Operations
-
-@subsection Set and Obtain Timespec Value
-
-A user may write a specific time by passing the desired seconds and
-nanoseconds values and the destination @code{struct timespec} using the
-@code{rtems_timespec_set} directive.
-
-The @code{rtems_timespec_zero} directive is used to zero the seconds
-and nanoseconds portions of a @code{struct timespec} instance.
-
-Users may obtain the seconds or nanoseconds portions of a @code{struct
-timespec} instance with the @code{rtems_timespec_get_seconds} or
-@code{rtems_timespec_get_nanoseconds} methods, respectively.
-
-@subsection Timespec Math
-
-A user can perform multiple operations on @code{struct timespec}
-instances. The helpers in this manager assist in adding, subtracting, and
-performing divison on @code{struct timespec} instances.
-
-@itemize @bullet
-@item Adding two @code{struct timespec} can be done using the
-@code{rtems_timespec_add_to} directive. This directive is used mainly
-to calculate total amount of time consumed by multiple operations.
-
-@item The @code{rtems_timespec_subtract} is used to subtract two
-@code{struct timespecs} instances and determine the elapsed time between
-those two points in time.
-
-@item The @code{rtems_timespec_divide} is used to use to divide one
-@code{struct timespec} instance by another. This calculates the percentage
-with a precision to three decimal points.
-
-@item The @code{rtems_timespec_divide_by_integer} is used to divide a
-@code{struct timespec} instance by an integer. It is commonly used in
-benchmark calculations to dividing duration by the number of iterations
-performed.
-
-@end itemize
-
-@subsection Comparing struct timespec Instances
-
-A user can compare two @code{struct timespec} instances using the
-@code{rtems_timespec_less_than}, @code{rtems_timespec_greater_than}
-or @code{rtems_timespec_equal_to} routines.
-
-@subsection Conversions and Validity Check
-
-Conversion to and from clock ticks may be performed by using the
-@code{rtems_timespec_to_ticks} and @code{rtems_timespec_from_ticks}
-directives.
-
-User can also check validity of timespec with
-@code{rtems_timespec_is_valid} routine.
-
-@section Directives
-
-This section details the Timespec Helpers manager's directives.
-A subsection is dedicated to each of this manager's directives
-and describes the calling sequence, related constants, usage,
-and status codes.
-
-@page
-@subsection TIMESPEC_SET - Set struct timespec Instance
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-void rtems_timespec_set(
- struct timespec *time,
- time_t seconds,
- uint32_t nanoseconds
-);
-@end example
-@findex rtems_timespec_set
-@end ifset
-
-@ifset is-Ada
-Not Currently Supported In Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-NONE
-
-@subheading DESCRIPTION:
-
-This directive sets the @code{struct timespec} @code{time} value to the
-desired @code{seconds} and @code{nanoseconds} values.
-
-
-@subheading NOTES:
-
-This method does NOT check if @code{nanoseconds} is less than the
-maximum number of nanoseconds in a second.
-
-@page
-@subsection TIMESPEC_ZERO - Zero struct timespec Instance
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-void rtems_timespec_zero(
- struct timespec *time
-);
-@end example
-@findex rtems_timespec_zero
-@end ifset
-
-@ifset is-Ada
-Not Currently Supported In Ada
-@end ifset
-
-@subheading STATUS CODES:
-NONE
-
-@subheading DESCRIPTION:
-
-This routine sets the contents of the @code{struct timespec} instance
-@code{time} to zero.
-
-@subheading NOTES:
-NONE
-
-@page
-@subsection TIMESPEC_IS_VALID - Check validity of a struct timespec instance
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-bool rtems_timespec_is_valid(
- const struct timespec *time
-);
-@end example
-@findex rtems_timespec_is_valid
-@end ifset
-
-@ifset is-Ada
-Not Currently Supported In Ada
-@end ifset
-
-@subheading STATUS CODES:
-This method returns @code{true} if the instance is valid, and @code{false}
-otherwise.
-
-@subheading DESCRIPTION:
-
-This routine check validity of a @code{struct timespec} instance. It
-checks if the nanoseconds portion of the @code{struct timespec} instanceis
-in allowed range (less than the maximum number of nanoseconds per second).
-
-@subheading NOTES:
-
-@page
-@subsection TIMESPEC_ADD_TO - Add Two struct timespec Instances
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-uint32_t rtems_timespec_add_to(
- struct timespec *time,
- const struct timespec *add
-);
-@end example
-@findex rtems_timespec_add_to
-@end ifset
-
-@ifset is-Ada
-Not Currently Supported In Ada
-@end ifset
-
-@subheading STATUS CODES:
-The method returns the number of seconds @code{time} increased by.
-
-@subheading DESCRIPTION:
-This routine adds two @code{struct timespec} instances. The second argument is added to the first. The parameter @code{time} is the base time to which the @code{add} parameter is added.
-
-@subheading NOTES:
-NONE
-@page
-@subsection TIMESPEC_SUBTRACT - Subtract Two struct timespec Instances
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-void rtems_timespec_subtract(
- const struct timespec *start,
- const struct timespec *end,
- struct timespec *result
-);
-@end example
-@findex rtems_timespec_subtract
-@end ifset
-
-@ifset is-Ada
-Not Currently Supported In Ada
-@end ifset
-
-@subheading STATUS CODES:
-NONE
-
-@subheading DESCRIPTION:
-This routine subtracts @code{start} from @code{end} saves the difference
-in @code{result}. The primary use of this directive is to calculate
-elapsed time.
-
-@subheading NOTES:
-
-It is possible to subtract when @code{end} is less than @code{start}
-and it produce negative @code{result}. When doing this you should be
-careful and remember that only the seconds portion of a @code{struct
-timespec} instance is signed, which means that nanoseconds portion is
-always increasing. Due to that when your timespec has seconds = -1 and
-nanoseconds=500,000,000 it means that result is -0.5 second, NOT the
-expected -1.5!
-
-@page
-@subsection TIMESPEC_DIVIDE - Divide Two struct timespec Instances
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-void rtems_timespec_divide(
- const struct timespec *lhs,
- const struct timespec *rhs,
- uint32_t *ival_percentage,
- uint32_t *fval_percentage
-);
-@end example
-@findex rtems_timespec_divide
-@end ifset
-
-@ifset is-Ada
-Not Currently Supported In Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-NONE
-
-@subheading DESCRIPTION:
-
-This routine divides the @code{struct timespec} instance @code{lhs} by
-the @code{struct timespec} instance @code{rhs}. The result is returned
-in the @code{ival_percentage} and @code{fval_percentage}, representing
-the integer and fractional results of the division respectively.
-
-The @code{ival_percentage} is integer value of calculated percentage and @code{fval_percentage} is fractional part of calculated percentage.
-
-@subheading NOTES:
-
-The intended use is calculating percentges to three decimal points.
-
-When dividing by zero, this routine return both @code{ival_percentage}
-and @code{fval_percentage} equal zero.
-
-The division is performed using exclusively integer operations.
-
-@page
-@subsection TIMESPEC_DIVIDE_BY_INTEGER - Divide a struct timespec Instance by an Integer
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-int rtems_timespec_divide_by_integer(
- const struct timespec *time,
- uint32_t iterations,
- struct timespec *result
-);
-@end example
-@findex rtems_timespec_divide_by_integer
-@end ifset
-
-@ifset is-Ada
-Not Currently Supported In Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-NONE
-
-@subheading DESCRIPTION:
-This routine divides the @code{struct timespec} instance @code{time} by the integer value @code{iterations}.
-The result is saved in @code{result}.
-
-@subheading NOTES:
-
-The expected use is to assist in benchmark calculations where you
-typically divide a duration (@code{time}) by a number of iterations what
-gives average time.
-
-@page
-@subsection TIMESPEC_LESS_THAN - Less than operator
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-bool rtems_timespec_less_than(
- const struct timespec *lhs,
- const struct timespec *rhs
-);
-@end example
-@findex rtems_timespec_less_than
-@end ifset
-
-@ifset is-Ada
-Not Currently Supported In Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-This method returns @code{struct true} if @code{lhs} is less than
-@code{rhs} and @code{struct false} otherwise.
-
-@subheading DESCRIPTION:
-
-This method is the less than operator for @code{struct timespec} instances. The first parameter is the left hand side and the second is the right hand side of the comparison.
-
-@subheading NOTES:
-NONE
-@page
-@subsection TIMESPEC_GREATER_THAN - Greater than operator
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-bool rtems_timespec_greater_than(
- const struct timespec *_lhs,
- const struct timespec *_rhs
-);
-@end example
-@findex rtems_timespec_greater_than
-@end ifset
-
-@ifset is-Ada
-Not Currently Supported In Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-This method returns @code{struct true} if @code{lhs} is greater than
-@code{rhs} and @code{struct false} otherwise.
-
-@subheading DESCRIPTION:
-
-This method is greater than operator for @code{struct timespec} instances.
-
-@subheading NOTES:
-NONE
-
-@page
-@subsection TIMESPEC_EQUAL_TO - Check equality of timespecs
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-bool rtems_timespec_equal_to(
- const struct timespec *lhs,
- const struct timespec *rhs
-);
-@end example
-@findex rtems_timespec_equal_to
-@end ifset
-
-@ifset is-Ada
-Not Currently Supported In Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-This method returns @code{struct true} if @code{lhs} is equal to
-@code{rhs} and @code{struct false} otherwise.
-
-
-@subheading DESCRIPTION:
-
-This method is equality operator for @code{struct timespec} instances.
-
-@subheading NOTES:
-NONE
-
-@page
-@subsection TIMESPEC_GET_SECONDS - Get Seconds Portion of struct timespec Instance
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-time_t rtems_timespec_get_seconds(
- struct timespec *time
-);
-@end example
-@findex rtems_timespec_get_seconds
-@end ifset
-
-@ifset is-Ada
-Not Currently Supported In Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-This method returns the seconds portion of the specified @code{struct
-timespec} instance.
-
-@subheading DESCRIPTION:
-
-This method returns the seconds portion of the specified @code{struct timespec} instance @code{time}.
-
-@subheading NOTES:
-NONE
-@page
-@subsection TIMESPEC_GET_NANOSECONDS - Get Nanoseconds Portion of the struct timespec Instance
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-uint32_t rtems_timespec_get_nanoseconds(
- struct timespec *_time
-);
-@end example
-@findex rtems_timespec_get_nanoseconds
-@end ifset
-
-@ifset is-Ada
-Not Currently Supported In Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-This method returns the nanoseconds portion of the specified @code{struct
-timespec} instance.
-
-@subheading DESCRIPTION:
-This method returns the nanoseconds portion of the specified timespec
-which is pointed by @code{_time}.
-
-@subheading NOTES:
-
-@page
-@subsection TIMESPEC_TO_TICKS - Convert struct timespec Instance to Ticks
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-uint32_t rtems_timespec_to_ticks(
- const struct timespec *time
-);
-@end example
-@findex rtems_timespec_to_ticks
-@end ifset
-
-@ifset is-Ada
-Not Currently Supported In Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-This directive returns the number of ticks computed.
-
-@subheading DESCRIPTION:
-
-This directive converts the @code{time} timespec to the corresponding number of clock ticks.
-
-@subheading NOTES:
-NONE
-
-@page
-@subsection TIMESPEC_FROM_TICKS - Convert Ticks to struct timespec Representation
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@example
-void rtems_timespec_from_ticks(
- uint32_t ticks,
- struct timespec *time
-);
-@end example
-@findex rtems_timespec_from_ticks
-@end ifset
-
-@ifset is-Ada
-Not Currently Supported In Ada
-@end ifset
-
-@subheading STATUS CODES:
-
-NONE
-
-@subheading DESCRIPTION:
-
-This routine converts the @code{ticks} to the corresponding @code{struct timespec} representation and stores it in @code{time}.
-
-@subheading NOTES:
-NONE
-
diff --git a/doc/user/userext.t b/doc/user/userext.t
deleted file mode 100644
index 7f4a10180d..0000000000
--- a/doc/user/userext.t
+++ /dev/null
@@ -1,721 +0,0 @@
-@c
-@c COPYRIGHT (c) 1988-2002.
-@c On-Line Applications Research Corporation (OAR).
-@c All rights reserved.
-
-@chapter User Extensions Manager
-
-@cindex user extensions
-
-@section Introduction
-
-The RTEMS User Extensions Manager allows the
-application developer to augment the executive by allowing them
-to supply extension routines which are invoked at critical
-system events. The directives provided by the user extensions
-manager are:
-
-@itemize @bullet
-@item @code{@value{DIRPREFIX}extension_create} - Create an extension set
-@item @code{@value{DIRPREFIX}extension_ident} - Get ID of an extension set
-@item @code{@value{DIRPREFIX}extension_delete} - Delete an extension set
-@end itemize
-
-@section Background
-
-User extension routines are invoked when the
-following system events occur:
-
-@itemize @bullet
-@item Task creation
-@item Task initiation
-@item Task reinitiation
-@item Task deletion
-@item Task context switch
-@item Post task context switch
-@item Task begin
-@item Task exits
-@item Fatal error detection
-@end itemize
-
-These extensions are invoked as a function with
-arguments that are appropriate to the system event.
-
-@subsection Extension Sets
-
-@cindex extension set
-
-An extension set is defined as a set of routines
-which are invoked at each of the critical system events at which
-user extension routines are invoked. Together a set of these
-routines typically perform a specific functionality such as
-performance monitoring or debugger support. RTEMS is informed of
-the entry points which constitute an extension set via the
-following @value{STRUCTURE}:
-
-@findex rtems_extensions_table
-@ifset is-C
-@example
-@group
-typedef struct @{
- rtems_task_create_extension thread_create;
- rtems_task_start_extension thread_start;
- rtems_task_restart_extension thread_restart;
- rtems_task_delete_extension thread_delete;
- rtems_task_switch_extension thread_switch;
- rtems_task_begin_extension thread_begin;
- rtems_task_exitted_extension thread_exitted;
- rtems_fatal_extension fatal;
-@} rtems_extensions_table;
-@end group
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-type Extensions_Table is
- record
- Task_Create : RTEMS.Task_Create_Extension;
- Task_Start : RTEMS.Task_Start_Extension;
- Task_Restart : RTEMS.Task_Restart_Extension;
- Task_Delete : RTEMS.Task_Delete_Extension;
- Task_Switch : RTEMS.Task_Switch_Extension;
- Task_Post_Switch : RTEMS.Task_Post_Switch_Extension;
- Task_Begin : RTEMS.Task_Begin_Extension;
- Task_Exitted : RTEMS.Task_Exitted_Extension;
- Fatal : RTEMS.Fatal_Error_Extension;
- end record;
-@end example
-@end ifset
-
-
-RTEMS allows the user to have multiple extension sets
-active at the same time. First, a single static extension set
-may be defined as the application's User Extension Table which
-is included as part of the Configuration Table. This extension
-set is active for the entire life of the system and may not be
-deleted. This extension set is especially important because it
-is the only way the application can provided a FATAL error
-extension which is invoked if RTEMS fails during the
-initialize_executive directive. The static extension set is
-optional and may be configured as NULL if no static extension
-set is required.
-
-Second, the user can install dynamic extensions using
-the @code{@value{DIRPREFIX}extension_create}
-directive. These extensions are RTEMS
-objects in that they have a name, an ID, and can be dynamically
-created and deleted. In contrast to the static extension set,
-these extensions can only be created and installed after the
-initialize_executive directive successfully completes execution.
-Dynamic extensions are useful for encapsulating the
-functionality of an extension set. For example, the application
-could use extensions to manage a special coprocessor, do
-performance monitoring, and to do stack bounds checking. Each
-of these extension sets could be written and installed
-independently of the others.
-
-All user extensions are optional and RTEMS places no
-naming restrictions on the user. The user extension entry points
-are copied into an internal RTEMS structure. This means the user
-does not need to keep the table after creating it, and changing the
-handler entry points dynamically in a table once created has no
-effect. Creating a table local to a function can save space in
-space limited applications.
-
-Extension switches do not effect the context switch overhead if
-no switch handler is installed.
-
-@subsection TCB Extension Area
-
-@cindex TCB extension area
-
-RTEMS provides for a pointer to a user-defined data
-area for each extension set to be linked to each task's control
-block. This set of pointers is an extension of the TCB and can
-be used to store additional data required by the user's
-extension functions.
-
-The TCB extension is an array of pointers in the TCB. The
-index into the table can be obtained from the extension id
-returned when the extension is created:
-
-@findex rtems extensions table index
-@ifset is-C
-@example
-@group
-index = rtems_object_id_get_index(extension_id);
-@end group
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-There is currently no example for Ada.
-@end example
-@end ifset
-
-The number of pointers in the area is the same as the number of
-user extension sets configured. This allows an application to
-augment the TCB with user-defined information. For example, an
-application could implement task profiling by storing timing
-statistics in the TCB's extended memory area. When a task
-context switch is being executed, the TASK_SWITCH extension
-could read a real-time clock to calculate how long the task
-being swapped out has run as well as timestamp the starting time
-for the task being swapped in.
-
-If used, the extended memory area for the TCB should
-be allocated and the TCB extension pointer should be set at the
-time the task is created or started by either the TASK_CREATE or
-TASK_START extension. The application is responsible for
-managing this extended memory area for the TCBs. The memory may
-be reinitialized by the TASK_RESTART extension and should be
-deallocated by the TASK_DELETE extension when the task is
-deleted. Since the TCB extension buffers would most likely be
-of a fixed size, the RTEMS partition manager could be used to
-manage the application's extended memory area. The application
-could create a partition of fixed size TCB extension buffers and
-use the partition manager's allocation and deallocation
-directives to obtain and release the extension buffers.
-
-@subsection Extensions
-
-The sections that follow will contain a description
-of each extension. Each section will contain a prototype of a
-function with the appropriate calling sequence for the
-corresponding extension. The names given for the @value{LANGUAGE}
-@value{ROUTINE} and
-its arguments are all defined by the user. The names used in
-the examples were arbitrarily chosen and impose no naming
-conventions on the user.
-
-@subsubsection TASK_CREATE Extension
-
-The TASK_CREATE extension directly corresponds to the
-@code{@value{DIRPREFIX}task_create} directive. If this extension
-is defined in any
-static or dynamic extension set and a task is being created,
-then the extension routine will automatically be invoked by
-RTEMS. The extension should have a prototype similar to the
-following:
-
-@findex rtems_task_create_extension
-@findex rtems_extension
-@ifset is-C
-@example
-bool user_task_create(
- rtems_tcb *current_task,
- rtems_tcb *new_task
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-function User_Task_Create (
- Current_Task : in RTEMS.TCB_Pointer;
- New_Task : in RTEMS.TCB_Pointer
-) returns Boolean;
-@end example
-@end ifset
-
-where @code{current_task} can be used to access the TCB for
-the currently executing task, and new_task can be used to access
-the TCB for the new task being created. This extension is
-invoked from the @code{@value{DIRPREFIX}task_create}
-directive after @code{new_task} has been
-completely initialized, but before it is placed on a ready TCB
-chain.
-
-The user extension is expected to return the boolean
-value @code{true} if it successfully executed and
-@code{false} otherwise. A task create user extension
-will frequently attempt to allocate resources. If this
-allocation fails, then the extension should return
-@code{false} and the entire task create operation
-will fail.
-
-@subsubsection TASK_START Extension
-
-The TASK_START extension directly corresponds to the
-task_start directive. If this extension is defined in any
-static or dynamic extension set and a task is being started,
-then the extension routine will automatically be invoked by
-RTEMS. The extension should have a prototype similar to the
-following:
-
-@findex rtems_task_start_extension
-@ifset is-C
-@example
-void user_task_start(
- rtems_tcb *current_task,
- rtems_tcb *started_task
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure User_Task_Start (
- Current_Task : in RTEMS.TCB_Pointer;
- Started_Task : in RTEMS.TCB_Pointer
-);
-@end example
-@end ifset
-
-where current_task can be used to access the TCB for
-the currently executing task, and started_task can be used to
-access the TCB for the dormant task being started. This
-extension is invoked from the task_start directive after
-started_task has been made ready to start execution, but before
-it is placed on a ready TCB chain.
-
-@subsubsection TASK_RESTART Extension
-
-The TASK_RESTART extension directly corresponds to
-the task_restart directive. If this extension is defined in any
-static or dynamic extension set and a task is being restarted,
-then the extension should have a prototype similar to the
-following:
-
-@findex rtems_task_restart_extension
-@ifset is-C
-@example
-void user_task_restart(
- rtems_tcb *current_task,
- rtems_tcb *restarted_task
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure User_Task_Restart (
- Current_Task : in RTEMS.TCB_Pointer;
- Restarted_Task : in RTEMS.TCB_Pointer
-);
-@end example
-@end ifset
-
-where current_task can be used to access the TCB for
-the currently executing task, and restarted_task can be used to
-access the TCB for the task being restarted. This extension is
-invoked from the task_restart directive after restarted_task has
-been made ready to start execution, but before it is placed on a
-ready TCB chain.
-
-@subsubsection TASK_DELETE Extension
-
-The TASK_DELETE extension is associated with the
-task_delete directive. If this extension is defined in any
-static or dynamic extension set and a task is being deleted,
-then the extension routine will automatically be invoked by
-RTEMS. The extension should have a prototype similar to the
-following:
-
-@findex rtems_task_delete_extension
-@ifset is-C
-@example
-void user_task_delete(
- rtems_tcb *current_task,
- rtems_tcb *deleted_task
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure User_Task_Delete (
- Current_Task : in RTEMS.TCB_Pointer;
- Deleted_Task : in RTEMS.TCB_Pointer
-);
-@end example
-@end ifset
-
-where current_task can be used to access the TCB for
-the currently executing task, and deleted_task can be used to
-access the TCB for the task being deleted. This extension is
-invoked from the task_delete directive after the TCB has been
-removed from a ready TCB chain, but before all its resources
-including the TCB have been returned to their respective free
-pools. This extension should not call any RTEMS directives if a
-task is deleting itself (current_task is equal to deleted_task).
-
-@subsubsection TASK_SWITCH Extension
-
-The TASK_SWITCH extension corresponds to a task
-context switch. If this extension is defined in any static or
-dynamic extension set and a task context switch is in progress,
-then the extension routine will automatically be invoked by
-RTEMS. The extension should have a prototype similar to the
-following:
-
-@findex rtems_task_switch_extension
-@ifset is-C
-@example
-void user_task_switch(
- rtems_tcb *current_task,
- rtems_tcb *heir_task
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure User_Task_Switch (
- Current_Task : in RTEMS.TCB_Pointer;
- Heir_Task : in RTEMS.TCB_Pointer
-);
-@end example
-@end ifset
-
-where current_task can be used to access the TCB for
-the task that is being swapped out, and heir_task can be used to
-access the TCB for the task being swapped in. This extension is
-invoked from RTEMS' dispatcher routine after the current_task
-context has been saved, but before the heir_task context has
-been restored. This extension should not call any RTEMS
-directives.
-
-@subsubsection TASK_BEGIN Extension
-
-The TASK_BEGIN extension is invoked when a task
-begins execution. It is invoked immediately before the body of
-the starting procedure and executes in the context in the task.
-This user extension have a prototype similar to the following:
-
-@findex rtems_task_begin_extension
-@ifset is-C
-@example
-void user_task_begin(
- rtems_tcb *current_task
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure User_Task_Begin (
- Current_Task : in RTEMS.TCB_Pointer
-);
-@end example
-@end ifset
-
-where current_task can be used to access the TCB for
-the currently executing task which has begun. The distinction
-between the TASK_BEGIN and TASK_START extension is that the
-TASK_BEGIN extension is executed in the context of the actual
-task while the TASK_START extension is executed in the context
-of the task performing the task_start directive. For most
-extensions, this is not a critical distinction.
-
-@subsubsection TASK_EXITTED Extension
-
-The TASK_EXITTED extension is invoked when a task
-exits the body of the starting procedure by either an implicit
-or explicit return statement. This user extension have a
-prototype similar to the following:
-
-@findex rtems_task_exitted_extension
-@ifset is-C
-@example
-void user_task_exitted(
- rtems_tcb *current_task
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure User_Task_Exitted (
- Current_Task : in RTEMS.TCB_Pointer
-);
-@end example
-@end ifset
-
-where current_task can be used to access the TCB for
-the currently executing task which has just exitted.
-
-Although exiting of task is often considered to be a
-fatal error, this extension allows recovery by either restarting
-or deleting the exiting task. If the user does not wish to
-recover, then a fatal error may be reported. If the user does
-not provide a TASK_EXITTED extension or the provided handler
-returns control to RTEMS, then the RTEMS default handler will be
-used. This default handler invokes the directive
-fatal_error_occurred with the @code{@value{RPREFIX}TASK_EXITTED} directive status.
-
-@subsubsection FATAL Error Extension
-
-The FATAL error extension is associated with the
-fatal_error_occurred directive. If this extension is defined in
-any static or dynamic extension set and the fatal_error_occurred
-directive has been invoked, then this extension will be called.
-This extension should have a prototype similar to the following:
-
-@findex rtems_fatal_extension
-@ifset is-C
-@example
-void user_fatal_error(
- Internal_errors_Source the_source,
- bool is_internal,
- uint32_t the_error
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure User_Fatal_Error (
- Error : in RTEMS.Unsigned32
-);
-@end example
-@end ifset
-
-where the_error is the error code passed to the
-fatal_error_occurred directive. This extension is invoked from
-the fatal_error_occurred directive.
-
-If defined, the user's FATAL error extension is
-invoked before RTEMS' default fatal error routine is invoked and
-the processor is stopped. For example, this extension could be
-used to pass control to a debugger when a fatal error occurs.
-This extension should not call any RTEMS directives.
-
-@subsection Order of Invocation
-
-When one of the critical system events occur, the
-user extensions are invoked in either "forward" or "reverse"
-order. Forward order indicates that the static extension set is
-invoked followed by the dynamic extension sets in the order in
-which they were created. Reverse order means that the dynamic
-extension sets are invoked in the opposite of the order in which
-they were created followed by the static extension set. By
-invoking the extension sets in this order, extensions can be
-built upon one another. At the following system events, the
-extensions are invoked in forward order:
-
-@itemize @bullet
-@item Task creation
-@item Task initiation
-@item Task reinitiation
-@item Task deletion
-@item Task context switch
-@item Post task context switch
-@item Task begins to execute
-@end itemize
-
-
-At the following system events, the extensions are
-invoked in reverse order:
-
-@itemize @bullet
-@item Task deletion
-@item Fatal error detection
-@end itemize
-
-At these system events, the extensions are invoked in
-reverse order to insure that if an extension set is built upon
-another, the more complicated extension is invoked before the
-extension set it is built upon. For example, by invoking the
-static extension set last it is known that the "system" fatal
-error extension will be the last fatal error extension executed.
-Another example is use of the task delete extension by the
-Standard C Library. Extension sets which are installed after
-the Standard C Library will operate correctly even if they
-utilize the C Library because the C Library's TASK_DELETE
-extension is invoked after that of the other extensions.
-
-@section Operations
-
-@subsection Creating an Extension Set
-
-The @code{@value{DIRPREFIX}extension_create} directive creates and installs
-an extension set by allocating a Extension Set Control Block
-(ESCB), assigning the extension set a user-specified name, and
-assigning it an extension set ID. Newly created extension sets
-are immediately installed and are invoked upon the next system
-even supporting an extension.
-
-@subsection Obtaining Extension Set IDs
-
-When an extension set is created, RTEMS generates a
-unique extension set ID and assigns it to the created extension
-set until it is deleted. The extension ID may be obtained by
-either of two methods. First, as the result of an invocation of
-the @code{@value{DIRPREFIX}extension_create}
-directive, the extension set ID is stored
-in a user provided location. Second, the extension set ID may
-be obtained later using the @code{@value{DIRPREFIX}extension_ident}
-directive. The extension set ID is used by other directives
-to manipulate this extension set.
-
-@subsection Deleting an Extension Set
-
-The @code{@value{DIRPREFIX}extension_delete} directive is used to delete an
-extension set. The extension set's control block is returned to
-the ESCB free list when it is deleted. An extension set can be
-deleted by a task other than the task which created the
-extension set. Any subsequent references to the extension's
-name and ID are invalid.
-
-@section Directives
-
-This section details the user extension manager's
-directives. A subsection is dedicated to each of this manager's
-directives and describes the calling sequence, related
-constants, usage, and status codes.
-
-@c
-@c
-@c
-@page
-@subsection EXTENSION_CREATE - Create a extension set
-
-@cindex create an extension set
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_extension_create
-@example
-rtems_status_code rtems_extension_create(
- rtems_name name,
- rtems_extensions_table *table,
- rtems_id *id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Extension_Create (
- Name : in RTEMS.Name;
- Table : in RTEMS.Extensions_Table_Pointer;
- ID : out RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - extension set created successfully@*
-@code{@value{RPREFIX}INVALID_NAME} - invalid extension set name@*
-@code{@value{RPREFIX}TOO_MANY} - too many extension sets created
-
-@subheading DESCRIPTION:
-
-This directive creates a extension set. The assigned
-extension set id is returned in id. This id is used to access
-the extension set with other user extension manager directives.
-For control and maintenance of the extension set, RTEMS
-allocates an ESCB from the local ESCB free pool and initializes
-it.
-
-@subheading NOTES:
-
-This directive will not cause the calling task to be
-preempted.
-
-@c
-@c
-@c
-@page
-@subsection EXTENSION_IDENT - Get ID of a extension set
-
-@cindex get ID of an extension set
-@cindex obtain ID of an extension set
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_extension_ident
-@example
-rtems_status_code rtems_extension_ident(
- rtems_name name,
- rtems_id *id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Extension_Ident (
- Name : in RTEMS.Name;
- ID : out RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - extension set identified successfully@*
-@code{@value{RPREFIX}INVALID_NAME} - extension set name not found
-
-@subheading DESCRIPTION:
-
-This directive obtains the extension set id
-associated with the extension set name to be acquired. If the
-extension set name is not unique, then the extension set id will
-match one of the extension sets with that name. However, this
-extension set id is not guaranteed to correspond to the desired
-extension set. The extension set id is used to access this
-extension set in other extension set related directives.
-
-@subheading NOTES:
-
-This directive will not cause the running task to be
-preempted.
-
-@c
-@c
-@c
-@page
-@subsection EXTENSION_DELETE - Delete a extension set
-
-@cindex delete an extension set
-
-@subheading CALLING SEQUENCE:
-
-@ifset is-C
-@findex rtems_extension_delete
-@example
-rtems_status_code rtems_extension_delete(
- rtems_id id
-);
-@end example
-@end ifset
-
-@ifset is-Ada
-@example
-procedure Extension_Delete (
- ID : in RTEMS.ID;
- Result : out RTEMS.Status_Codes
-);
-@end example
-@end ifset
-
-@subheading DIRECTIVE STATUS CODES:
-@code{@value{RPREFIX}SUCCESSFUL} - extension set deleted successfully@*
-@code{@value{RPREFIX}INVALID_ID} - invalid extension set id
-
-@subheading DESCRIPTION:
-
-This directive deletes the extension set specified by
-id. If the extension set is running, it is automatically
-canceled. The ESCB for the deleted extension set is reclaimed
-by RTEMS.
-
-@subheading NOTES:
-
-This directive will not cause the running task to be
-preempted.
-
-A extension set can be deleted by a task other than
-the task which created the extension set.
-
-@subheading NOTES:
-
-This directive will not cause the running task to be
-preempted.
diff --git a/doc/user/version.texi b/doc/user/version.texi
deleted file mode 100644
index c0e4bbb7b6..0000000000
--- a/doc/user/version.texi
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 17 July 2015
-@set UPDATED-MONTH July 2015
-@set EDITION 4.10.99.0
-@set VERSION 4.10.99.0