From 48a7fa31f918a6fc88719b3c9393a9ba2829f42a Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Tue, 15 Nov 2016 10:37:59 -0600 Subject: Remove texinfo format documentation. Replaced by Sphinx formatted documentation. closes #2812. --- doc/user/Makefile.am | 227 - doc/user/ObjectId-16Bits.eps | 3797 ---------- doc/user/ObjectId-16Bits.png | Bin 30166 -> 0 bytes doc/user/ObjectId-32Bits.eps | 4679 ------------ doc/user/ObjectId-32Bits.png | Bin 38351 -> 0 bytes doc/user/barrier.t | 470 -- doc/user/bsp.t | 300 - doc/user/c_user.texi | 184 - doc/user/cbs.t | 643 -- doc/user/chains.t | 800 --- doc/user/clock.t | 956 --- doc/user/concepts.t | 405 -- doc/user/conf.t | 5421 -------------- doc/user/cpuuse.t | 160 - doc/user/datatypes.t | 327 - doc/user/dirstat.t | 62 - doc/user/dpmem.t | 361 - doc/user/event.t | 340 - doc/user/example.texi | 83 - doc/user/fatal.t | 283 - doc/user/glossary.texi | 845 --- doc/user/init.t | 311 - doc/user/intr.t | 780 -- doc/user/io.t | 742 -- doc/user/libpci.t | 412 -- doc/user/linkersets.t | 421 -- doc/user/mp.t | 570 -- doc/user/msg.t | 836 --- doc/user/object.t | 911 --- doc/user/overview.t | 549 -- doc/user/part.t | 459 -- doc/user/preface.texi | 188 - doc/user/rbtree.t | 91 - doc/user/region.t | 729 -- doc/user/rtemsarc.png | Bin 5698 -> 0 bytes doc/user/rtemsarc.txt | 11 - doc/user/rtemspie.eps | 2164 ------ doc/user/rtemspie.png | Bin 31984 -> 0 bytes doc/user/rtemspie.txt | 7 - doc/user/rtmon.t | 1480 ---- doc/user/schedule.t | 512 -- doc/user/sem.t | 1080 --- doc/user/semaphore_attributes.eps | 3752 ---------- doc/user/semaphore_attributes.png | Bin 31604 -> 0 bytes doc/user/signal.t | 387 - doc/user/smp.t | 1016 --- doc/user/stackchk.t | 220 - doc/user/stamp-vti | 4 - doc/user/states.eps | 13822 ------------------------------------ doc/user/states.png | Bin 22036 -> 0 bytes doc/user/states.txt | 26 - doc/user/task.t | 1797 ----- doc/user/timer.t | 731 -- doc/user/timespec.t | 553 -- doc/user/userext.t | 721 -- doc/user/version.texi | 4 - 56 files changed, 55629 deletions(-) delete mode 100644 doc/user/Makefile.am delete mode 100644 doc/user/ObjectId-16Bits.eps delete mode 100644 doc/user/ObjectId-16Bits.png delete mode 100644 doc/user/ObjectId-32Bits.eps delete mode 100644 doc/user/ObjectId-32Bits.png delete mode 100644 doc/user/barrier.t delete mode 100644 doc/user/bsp.t delete mode 100644 doc/user/c_user.texi delete mode 100644 doc/user/cbs.t delete mode 100644 doc/user/chains.t delete mode 100644 doc/user/clock.t delete mode 100644 doc/user/concepts.t delete mode 100644 doc/user/conf.t delete mode 100644 doc/user/cpuuse.t delete mode 100644 doc/user/datatypes.t delete mode 100644 doc/user/dirstat.t delete mode 100644 doc/user/dpmem.t delete mode 100644 doc/user/event.t delete mode 100644 doc/user/example.texi delete mode 100644 doc/user/fatal.t delete mode 100644 doc/user/glossary.texi delete mode 100644 doc/user/init.t delete mode 100644 doc/user/intr.t delete mode 100644 doc/user/io.t delete mode 100644 doc/user/libpci.t delete mode 100644 doc/user/linkersets.t delete mode 100644 doc/user/mp.t delete mode 100644 doc/user/msg.t delete mode 100644 doc/user/object.t delete mode 100644 doc/user/overview.t delete mode 100644 doc/user/part.t delete mode 100644 doc/user/preface.texi delete mode 100644 doc/user/rbtree.t delete mode 100644 doc/user/region.t delete mode 100644 doc/user/rtemsarc.png delete mode 100644 doc/user/rtemsarc.txt delete mode 100644 doc/user/rtemspie.eps delete mode 100644 doc/user/rtemspie.png delete mode 100644 doc/user/rtemspie.txt delete mode 100644 doc/user/rtmon.t delete mode 100644 doc/user/schedule.t delete mode 100644 doc/user/sem.t delete mode 100644 doc/user/semaphore_attributes.eps delete mode 100644 doc/user/semaphore_attributes.png delete mode 100644 doc/user/signal.t delete mode 100644 doc/user/smp.t delete mode 100644 doc/user/stackchk.t delete mode 100644 doc/user/stamp-vti delete mode 100644 doc/user/states.eps delete mode 100644 doc/user/states.png delete mode 100644 doc/user/states.txt delete mode 100644 doc/user/task.t delete mode 100644 doc/user/timer.t delete mode 100644 doc/user/timespec.t delete mode 100644 doc/user/userext.t delete mode 100644 doc/user/version.texi (limited to 'doc/user') 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 -df0 -df0 -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@nttJcG0J,~> -df0<^r;ZhiJcG-;!2%mD!C3RIrr=22!!(pLrrD6P^AuT2s/l;&?iZgMs2+d:k@!6K!YB%cJcG?A -n@nttJcG0J,~> -df0<^r;ZhiJcG-;!2%mD!C3RIrr=22!!(pLrrD6P^AuT2s/l;&?iZgMs2+d:k@!6K!YB%cJcG?A -n@nttJcG0J,~> -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- -df0<^r;ZhiJcG-;!2%X=!(cSY!$Lb2!8mJL!2&c]!'l,8XoAH1!2"iBaSu:]&CUW1s7lW`!!(o- -s6fpV!!(o-s- -df0<^r;ZhiJcG-;!2%X=!(cSY!$Lb2!8mJL!2&c]!'l,8XoAH1!2"iBaSu:]&CUW1s7lW`!!(o- -s6fpV!!(o-s- -df0<^r;ZhiJcG-;!2%U#gr^(s7lW`!!(o- -s6fpV!!(o-s- -df0<^r;ZhiJcG-;!2%U#gr^(s7lW`!!(o- -s6fpV!!(o-s- -df0<^r;ZhiJcG-;!2%U#gr^(s7lW`!!(o- -s6fpV!!(o-s- -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- -df0<^r;ZhiJcG-;!2%R;!>+_jrr=22!!(pLrrA\]!!#98s/l;&?iZgMs3(EBB[6[0s7lW`!!(o- -s6fpV!!(o-s- -df0<^r;ZhiJcG-;!2%R;!>+_jrr=22!!(pLrrA\]!!#98s/l;&?iZgMs3(EBB[6[0s7lW`!!(o- -s6fpV!!(o-s- -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- -df0<^r;ZhiJcG-;!2%O:!'&I-!2&c]!'l,8XoAH1!2"iBc2Rgj#gNF$s7lW`!!(o-s6fpV!!(o- -s- -df0<^r;ZhiJcG-;!2%O:!'&I-!2&c]!'l,8XoAH1!2"iBc2Rgj#gNF$s7lW`!!(o-s6fpV!!(o- -s- -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,NIGJcG0J,~> -df0<^r;ZhiJcG-;!2%L9!/K)(!2&c]!'l,8XoAH1!2"iBcMml@kl:es=I7qBrr_G^?m,"?JcGNF -n,NIGJcG0J,~> -df0<^r;ZhiJcG-;!2%L9!/K)(!2&c]!'l,8XoAH1!2"iBcMml@kl:es=I7qBrr_G^?m,"?JcGNF -n,NIGJcG0J,~> -df0<^r;ZhiJcG-;!2&`\!'p>Z"2D?rs7lW`!!(o-s6fpV!!(o-s- -df0<^r;ZhiJcG-;!2&`\!'p>Z"2D?rs7lW`!!(o-s6fpV!!(o-s- -df0<^r;ZhiJcG-;!2&`\!'p>Z"2D?rs7lW`!!(o-s6fpV!!(o-s- -df0<^r;ZhiJcG-;!2&`\!'p2V!KRf[!!#R>rrA\]!!#98s/l;&?iZgMs3UcHk6UDS!YC.]nG`Nu -5kY2/s7lW`!!(o-s6fpV!!(o-s- -df0<^r;ZhiJcG-;!2&`\!'p2V!KRf[!!#R>rrA\]!!#98s/l;&?iZgMs3UcHk6UDS!YC.]nG`Nu -5kY2/s7lW`!!(o-s6fpV!!(o-s- -df0<^r;ZhiJcG-;!2&`\!'p2V!KRf[!!#R>rrA\]!!#98s/l;&?iZgMs3UcHk6UDS!YC.]nG`Nu -5kY2/s7lW`!!(o-s6fpV!!(o-s- -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 -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 -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 -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['!$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['!$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['!$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].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].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].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]nGiPsqYpOUGEg&M+\ -r;Qc;fDkmoJcF:#!5JI4!2%^>J,~> -df0<^r;ZhiJcG-;!2&`\!'p2V!J^sN!!,(Rnc&T]nGiPsqYpOUGEg&M+\ -r;Qc;fDkmoJcF:#!5JI4!2%^>J,~> -df0<^r;ZhiJcG-;!2&`\!'p2V!J^sN!!,(Rnc&T]nGiPsqYpOUGEg&M+\ -r;Qc;fDkmoJcF:#!5JI4!2%^>J,~> -df0<^r;ZhiJcG-;!2&`\!'p;Y!q2a8n,NJ3kOAKOTCDm]@/Bm'+PHeqhu3QT^Ztk%-pU$WnGiQ= -JcG0p](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= -JcG0p](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= -JcG0p](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[!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[!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[!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?_HJcG0s*t~> -df0<^r;ZhiJcG-;!2%a@!GLrhrrA\]!!$F!rrA\]!!#:OrrB7l!!'e&rrJ`/qu?_HJcG0s*t~> -df0<^r;ZhiJcG-;!2%a@!GLrhrrA\]!!$F!rrA\]!!#:OrrB7l!!'e&rrJ`/qu?_HJcG0s*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,XAdJj3Mn,NH-nc&Xa)"@S,#l")nn,NHdoD\g:mf3@&o`+C\!8m2D!8m>I!>,"orrs*t~> -df0<^r;ZhiJcG-;!2%dA!YB%[mJd0YnGiPso`"o`nGiPSmJd/OnGiPKl2Lh"5bEW-mf*>r!2"iB -ec,XAdJj3Mn,NH-nc&Xa)"@S,#l")nn,NHdoD\g:mf3@&o`+C\!8m2D!8m>I!>,"orrs*t~> -df0<^r;ZhiJcG-;!2%dA!YB%[mJd0YnGiPso`"o`nGiPSmJd/OnGiPKl2Lh"5bEW-mf*>r!2"iB -ec,XAdJj3Mn,NH-nc&Xa)"@S,#l")nn,NHdoD\g:mf3@&o`+C\!8m2D!8m>I!>,"orrs*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%UrlIrrA\]!!$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%UrlIrrA\]!!$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%UrlIrrA\]!!$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;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;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;s*t~> -df0<^r;ZhiJcG-;!2%L9!Eeg_rrA\]!!$F!rrA\]!!#:Orr@$(!!=?WQd:6_h#@F`!2"iBec,X, -mf3>Qdf0s*t~> -df0<^r;ZhiJcG-;!2%L9!Eeg_rrA\]!!$F!rrA\]!!#:Orr@$(!!=?WQd:6_h#@F`!2"iBec,X, -mf3>Qdf0s*t~> -df0<^r;ZhiJcG-;!2%L9!Eeg_rrA\]!!$F!rrA\]!!#:Orr@$(!!=?WQd:6_h#@F`!2"iBec,X, -mf3>Qdf0s*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]=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]=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]=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'!!+eJJcG00n!$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'!!+eJJcG00n!$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'!!+eJJcG00n!$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&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[[huEbJ,~> -df0<^r;ZhiJcG-;!2&`\!'orO!8m5F!(cnb!2&c]!+>I!!2&c]!'oWF!r&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[[huEbJ,~> -df0<^r;ZhiJcG-;!2&`\!'orO!8m5F!(cnb!2&c]!+>I!!2&c]!'oWF!r&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[[huEbJ,~> -df0<^r;ZhiJcG-;!2&`\!'orO!8m5F!(cnb!2&c]!+>I!!2&c]!'oNC"5el)#ibmbT7R%3rrQR. -T7R$krrCC5!!*r2hus*t~> -df0<^r;ZhiJcG-;!2&`\!'orO!8m5F!(cnb!2&c]!+>I!!2&c]!'oNC"5el)#ibmbT7R%3rrQR. -T7R$krrCC5!!*r2hus*t~> -df0<^r;ZhiJcG-;!2&`\!'orO!8m5F!(cnb!2&c]!+>I!!2&c]!'oNC"5el)#ibmbT7R%3rrQR. -T7R$krrCC5!!*r2hus*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 -df0<^r;ZhiJcG-;!2&`\!'orO!5It&!+>U%!2&c]!+>I!!2&c]!'oB?"360f+Qi_)E.S&YrrQR. -T7R$krrMj"mJm6Ji;WoB0E;+Mrr@Q -df0<^r;ZhiJcG-;!2&`\!'orO!5It&!+>U%!2&c]!+>I!!2&c]!'oB?"360f+Qi_)E.S&YrrQR. -T7R$krrMj"mJm6Ji;WoB0E;+Mrr@Q -df0<^r;ZhiJcG-;!2&`\!'orO!0?RK!.XeD!2&c]!+>I!!2&c]!'o6;"7O!S8F$6U5_8t)rrQR. -T7R$jrr?a#!!*AOir9&*+T;BH!$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;BH!$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;BH!$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!TtU%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!TtU%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!TtU%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#dU%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#dU%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#dU%n,NIGnc&S3nGiQ]o`"o!n,NIpYP%nr -^XrJb!+>X'!\fu(nG`OX0_#,C:kAYurrBh4!!&Y>s*t~> -df0<^r;ZhiJcG-;!2%F7!=7^(!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^(!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^(!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^ -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^ -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^ -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%UUM!!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%UUM!!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%UUM!!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* -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* -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* -df0<^r;ZhiJcG-;!2&'I"=R)r\)6BK!2&c]!+>0n!nV)sl2UhAqu6cmY@o'A!!5-Pmt(N#rrQR. -T7R$XrrV)58E^$U#Y: -df0<^r;ZhiJcG-;!2&'I"=R)r\)6BK!2&c]!+>0n!nV)sl2UhAqu6cmY@o'A!!5-Pmt(N#rrQR. -T7R$XrrV)58E^$U#Y: -df0<^r;ZhiJcG-;!2&'I"=R)r\)6BK!2&c]!+>0n!nV)sl2UhAqu6cmY@o'A!!5-Pmt(N#rrQR. -T7R$XrrV)58E^$U#Y: -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* -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* -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* -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^/'YLf48: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^/'YLf48: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^/'YLf48: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:^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:^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:^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&^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&^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&^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]%s*t~> -df0<^r;ZhiJcG*:!Tsab!!%N@rrM!oq>^MfJcGKE!-%c7!2kDJmJd5q!2"iBg]%s*t~> -df0<^r;ZhiJcG*:!Tsab!!%N@rrM!oq>^MfJcGKE!-%c7!2kDJmJd5q!2"iBg]%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=]!!"-ms,$aU^\n-4T@3ai~> -df0<^r;ZhiJcG*:!#YP4!3btn!V\#=!!'KZs7uZp;#1.lO+I>trrQR.T7R$trrC+7!!%N6rrMjb -q#CF=]!!"-ms,$aU^\n-4T@3ai~> -df0<^r;ZhiJcG*:!#YP4!3btn!V\#=!!'KZs7uZp;#1.lO+I>trrQR.T7R$trrC+7!!%N6rrMjb -q#CF=]!!"-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!UgsrrQR.T7R$urrBh0!!+MBkPkP. -q#CF4p\+X`!!$DXs760iJ,0-Fhp26%ht[8Mrr>=]!!"-ms,$aU^\n-4T@3ai~> -df0<^r;ZhiJcG-;!.XhF!/L(D!UgsrrQR.T7R$urrBh0!!+MBkPkP. -q#CF4p\+X`!!$DXs760iJ,0-Fhp26%ht[8Mrr>=]!!"-ms,$aU^\n-4T@3ai~> -df0<^r;ZhiJcG-;!.XhF!/L(D!UgsrrQR.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;ZhiJcG0rrrQR.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;ZhiJcG0rrrQR.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;ZhiJcG0rrrQR.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^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 -df0<^r;ZhiJcG0^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 -df0<^r;ZhiJcG0^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 -df0<^r;ZhiJcG0^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^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^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;ZhiJcG0tQ^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;ZhiJcG0tQ^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;ZhiJcG0tQ^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^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^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^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;ZhiJcG0X'!4ROZ!WTA"!!*r2JcFs6!al##JcFX-!,23/!'&p:!:T^` -!3c1tq>^O=#jDTCr3bpJCM_s$-Q!!(p3rrCsP!:^$b -!!,&%l2Ui5p[eCch]UqZ!$Lq6!V]F`!<5:a0_GDG;"sti8GN5cJ+EU>@/9j(0_^.uiVrnmr;Zhi -df4g~> -df0<^r;ZhiJcG0X'!4ROZ!WTA"!!*r2JcFs6!al##JcFX-!,23/!'&p:!:T^` -!3c1tq>^O=#jDTCr3bpJCM_s$-Q!!(p3rrCsP!:^$b -!!,&%l2Ui5p[eCch]UqZ!$Lq6!V]F`!<5:a0_GDG;"sti8GN5cJ+EU>@/9j(0_^.uiVrnmr;Zhi -df4g~> -df0<^r;ZhiJcG0X'!4ROZ!WTA"!!*r2JcFs6!al##JcFX-!,23/!'&p:!:T^` -!3c1tq>^O=#jDTCr3bpJCM_s$-Q!!(p3rrCsP!:^$b -!!,&%l2Ui5p[eCch]UqZ!$Lq6!V]F`!<5:a0_GDG;"sti8GN5cJ+EU>@/9j(0_^.uiVrnmr;Zhi -df4g~> -df0<^r;ZhiJcG0^M^Jc>cN0_tbLT7R%*rrQR.T7R%"rr=bL!!$uqrr=2#"q#CL&BWq1.rrVAU;"t"jO7`GP;"ako0RnSUO*EoJ,~> -df0<^r;ZhiJcG0^M^Jc>cN0_tbLT7R%*rrQR.T7R%"rr=bL!!$uqrr=2#"q#CL&BWq1.rrVAU;"t"jO7`GP;"ako0RnSUO*EoJ,~> -df0<^r;ZhiJcG0^M^Jc>cN0_tbLT7R%*rrQR.T7R%"rr=bL!!$uqrr=2#"q#CL&BWq1.rrVAU;"t"jO7`GP;"ako0RnSUO*EoJ,~> -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^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^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^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!+>'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!+>'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!+>'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^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^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^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^O=mt(MorrBh4!!&Y>s*t~> -df0<^r;ZhiJcG3=!2')f!'ooN!5J@1!$Hsp!V[H-!!'3Rs5a1]?iZgMs5^O=mt(MorrBh4!!&Y>s*t~> -df0<^r;ZhiJcG3=!2')f!'ooN!5J@1!$Hsp!V[H-!!'3Rs5a1]?iZgMs5^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=]!!"/:rr=2=!!%N7rr -df0<^r;ZhiJcG3=!.XhF!'ooN!5J@1!!n;Y!Ugm%!!'3Rs5X+\?iZgMs5=]!!"/:rr=2=!!%N7rr -df0<^r;ZhiJcG3=!.XhF!'ooN!5J@1!!n;Y!Ugm%!!'3Rs5X+\?iZgMs5=]!!"/:rr=2=!!%N7rr -df0<^r;ZhiJcG3=!.XhF!'ooN!5J=0L&V-lq>^LLJcFa0!al##JcF[.!''fT!.Wi)!$M+^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+^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+^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=2s*t~> -df0<^r;ZhiJcG3=!.XhF!'ooN!5J=0jSo5Ce3F#+df0@2#l4N$YCZ`5rrQR.T7R%#rr>=\!!%N) -rr=2s*t~> -df0<^r;ZhiJcG3=!.XhF!'ooN!5J=0jSo5Ce3F#+df0@2#l4N$YCZ`5rrQR.T7R%#rr>=\!!%N) -rr=2s*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^!-%c7!0?+=!.XhF -!8l*%!8mSPnGi=b!+>6p!5J@1!.XkF!-%c7!3bbh!'pD]!$M+;!-%f8!&3^ -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^!-%c7!0?+=!.XhF -!8l*%!8mSPnGi=b!+>6p!5J@1!.XkF!-%c7!3bbh!'pD]!$M+;!-%f8!&3^ -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^!-%c7!0?+=!.XhF -!8l*%!8mSPnGi=b!+>6p!5J@1!.XkF!-%c7!3bbh!'pD]!$M+;!-%f8!&3^ -df0<^r;ZhiJcG3=!.XhF!'ooN!5J@1!$LA&!8l9+!.WJt!Tsab!!'3Rs5EtZ?iZgMs55l(H\a5R$uJ,0-F -hp26%ht[9As7u]q@.+$phtd -df0<^r;ZhiJcG3=!.XhF!'ooN!5J@1!$LA&!8l9+!.WJt!Tsab!!'3Rs5EtZ?iZgMs55l(H\a5R$uJ,0-F -hp26%ht[9As7u]q@.+$phtd -df0<^r;ZhiJcG3=!.XhF!'ooN!5J@1!$LA&!8l9+!.WJt!Tsab!!'3Rs5EtZ?iZgMs55l(H\a5R$uJ,0-F -hp26%ht[9As7u]q@.+$phtd -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>^MFqYpOUFCgApgE!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>^MFqYpOUFCgApgE!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>^MFqYpOUFCgApgE!S7VM!!*r"JcF@%!5JI4!2%^>J,~> -df0<^r;ZhiJcG3=!2')f!'ooN!5J@1!&3L6!8l9+!.WMu!Tsab!!'3Rs5=]!!"/;rr=1r!:g'hL\1WIYCZ`)rrBh4!!&Y>s*t~> -df0<^r;ZhiJcG3=!2')f!'ooN!5J@1!&3L6!8l9+!.WMu!Tsab!!'3Rs5=]!!"/;rr=1r!:g'hL\1WIYCZ`)rrBh4!!&Y>s*t~> -df0<^r;ZhiJcG3=!2')f!'ooN!5J@1!&3L6!8l9+!.WMu!Tsab!!'3Rs5=]!!"/;rr=1r!:g'hL\1WIYCZ`)rrBh4!!&Y>s*t~> -df0<^r;ZhiJcG3=!2')f!''?F!4Ve)!'oWF!8l9+!.WMu!)WLl!&0!(hu^LL -hZ!T-q#CE8q>^9k!+>-m!#YS5!$Lt7!5J@1!2',fg&V'Nq>^L^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^LL -hZ!T-q#CE8q>^9k!+>-m!#YS5!$Lt7!5J@1!2',fg&V'Nq>^L^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^LL -hZ!T-q#CE8q>^9k!+>-m!#YS5!$Lt7!5J@1!2',fg&V'Nq>^L^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^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^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^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!!#!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!!#!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!!#!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.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.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.s*t~> -df0<^r;ZhiJcG0^M^MZ3ZQq>^LlJcFR+!al##JcFX-!&46L!-$iq!#YP4!.XeD -q>^M'li6e]!'p5W!5J@1!2',fq>^L\h>d6p!8mVQ!.XkF -q>^LLli-rMqZ$U=q>^9k!'ns3!'p8Y!=7#&s472M^\n-4T@3ai~> -df0<^r;ZhiJcG0^M^MZ3ZQq>^LlJcFR+!al##JcFX-!&46L!-$iq!#YP4!.XeD -q>^M'li6e]!'p5W!5J@1!2',fq>^L\h>d6p!8mVQ!.XkF -q>^LLli-rMqZ$U=q>^9k!'ns3!'p8Y!=7#&s472M^\n-4T@3ai~> -df0<^r;ZhiJcG0^M^MZ3ZQq>^LlJcFR+!al##JcFX-!&46L!-$iq!#YP4!.XeD -q>^M'li6e]!'p5W!5J@1!2',fq>^L\h>d6p!8mVQ!.XkF -q>^LLli-rMqZ$U=q>^9k!'ns3!'p8Y!=7#&s472M^\n-4T@3ai~> -df0<^r;ZhiJcG0[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[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[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;ZhiJcG00n!:Taa!+>L"!5J@1!2',f!$M.=!$L+t!$M+6p -!8mVQ!.XkF!$M.=!#Y&%!'pD]!$M+;!$M.=!$Kbj!S7VL!!%7ps4@8N^\n-4T@3ai~> -df0<^r;ZhiJcG00n!:Taa!+>L"!5J@1!2',f!$M.=!$L+t!$M+6p -!8mVQ!.XkF!$M.=!#Y&%!'pD]!$M+;!$M.=!$Kbj!S7VL!!%7ps4@8N^\n-4T@3ai~> -df0<^r;ZhiJcG00n!:Taa!+>L"!5J@1!2',f!$M.=!$L+t!$M+6p -!8mVQ!.XkF!$M.=!#Y&%!'pD]!$M+;!$M.=!$Kbj!S7VL!!%7ps4@8N^\n-4T@3ai~> -df0<^r;ZhiJcG0^M'm/I(#q>^MFp&>$,q>^MfqYpO\qZ$X&pYPoM3;NUTa5R$uJ,0-Fhp26%ht[9As7u]q@.+$p -htdO^\n-4T@3ai~> -df0<^r;ZhiJcG0^M'm/I(#q>^MFp&>$,q>^MfqYpO\qZ$X&pYPoM3;NUTa5R$uJ,0-Fhp26%ht[9As7u]q@.+$p -htdO^\n-4T@3ai~> -df0<^r;ZhiJcG0^M'm/I(#q>^MFp&>$,q>^MfqYpO\qZ$X&pYPoM3;NUTa5R$uJ,0-Fhp26%ht[9As7u]q@.+$p -htdO^\n-4T@3ai~> -df0<^r;ZhiJcG0^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^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^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;ZhiJcG00n!,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;ZhiJcG00n!,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;ZhiJcG00n!,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@[6^\Rp1TDJQfhtd6p!8mVQ!.XkF!2')f!+>0n!'pD]!$M+;!8mVQ!'&U1!Uh0.!!ESZs8R?>!!'cbs4[JQ^\n-4 -T@3ai~> -df0<^r;ZhiJcG-;!"f#-!=8Ggrr@[6^\Rp1TDJQfhtd6p!8mVQ!.XkF!2')f!+>0n!'pD]!$M+;!8mVQ!'&U1!Uh0.!!ESZs8R?>!!'cbs4[JQ^\n-4 -T@3ai~> -df0<^r;ZhiJcG-;!"f#-!=8Ggrr@[6^\Rp1TDJQfhtd6p!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^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^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^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&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&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&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@.+$phtdt"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@.+$phtdt"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@.+$phtdt"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^M'mf*:Eq>^MFq>UKi)#=450_b/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^M'mf*:Eq>^MFq>UKi)#=450_b/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^M'mf*:Eq>^MFq>UKi)#=450_b/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%S!!+4gn,EI`Nu7ir!8mYQ!V[H,!!,Xbo)Am^ -GR+9LTDJQf&GcA,a3Xbcht[9As7u]q@.+$phtd%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%S!!+4gn,EI`Nu7ir!8mYQ!V[H,!!,Xbo)Am^ -GR+9LTDJQf&GcA,a3Xbcht[9As7u]q@.+$phtd%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%S!!+4gn,EI`Nu7ir!8mYQ!V[H,!!,Xbo)Am^ -GR+9LTDJQf&GcA,a3Xbcht[9As7u]q@.+$phtd%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(!TtUGup](=K -a7]H6pQ#ma!!&Yfrr>ml!!+5*p\t9GpY>cKht[9As7u]q@.+$phtd^O-hgtgbrrBh4!!&Y>s*t~> -df0<^r;ZhiJcG'9!2'&e!+>O#!Oi@2!!!jqrrA,V!!*AgJcF@%!al##JcFI(!TtUGup](=K -a7]H6pQ#ma!!&Yfrr>ml!!+5*p\t9GpY>cKht[9As7u]q@.+$phtd^O-hgtgbrrBh4!!&Y>s*t~> -df0<^r;ZhiJcG'9!2'&e!+>O#!Oi@2!!!jqrrA,V!!*AgJcF@%!al##JcFI(!TtUGup](=K -a7]H6pQ#ma!!&Yfrr>ml!!+5*p\t9GpY>cKht[9As7u]q@.+$phtd^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)=./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)=./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)=./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=[!!&@:s5 -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=[!!&@:s5 -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=[!!&@:s5 -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 -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 -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 -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@.+$phtdJ,~> -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@.+$phtdJ,~> -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@.+$phtdJ,~> -df0<^r;ZhiJcFm4!QQVW!!%8%rr@$7!!*AgJcF7"!al##JcF4!!r%H]lMpr>^[(pr!!7YB0^o&C -.*(]S!5J@1!2&c\!N.X6p!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.X6p!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.X6p!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-s*t~> -df0<^r;ZhiJcFR+!p@>=JcC<$bPqWO!2"iBa8Z7n^VB6arrDNe^B"#hrrA\f!!&XBs-s*t~> -df0<^r;ZhiJcFR+!p@>=JcC<$bPqWO!2"iBa8Z7n^VB6arrDNe^B"#hrrA\f!!&XBs-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 -df0<^r;ZhiJc>b[#l+H&#\^^!rr3)`^Q1AL!!*Y_LAq7_q>^L -df0<^r;ZhiJc>b[#l+H&#\^^!rr3)`^Q1AL!!*Y_LAq7_q>^L -df0<^r;ZhiK)Yl?)#4.4=PrlQ!J^sV!!#iNrrJ/dq>^Lh^Aul:s+13VrrBh4!!&Y>s*t~> -df0<^r;ZhiK)Yl?)#4.4=PrlQ!J^sV!!#iNrrJ/dq>^Lh^Aul:s+13VrrBh4!!&Y>s*t~> -df0<^r;ZhiK)Yl?)#4.4=PrlQ!J^sV!!#iNrrJ/dq>^Lh^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+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+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+Eu!P_J*!!+eJoD\gJq#H!GJcDeN!5JI4!2%^>J,~> -df0<^r;ZhiKDtprq>^L\nG`K^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^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^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!+>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!+>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!+>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^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^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^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 -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 -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 -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+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+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+0n!'pA\!.X\A!8mSPJcC<$X8`17r;Zhidf4g~> -df0<^r;ZhiK)Yg1p](=cn+?V[8G`Ae0STN,+Su-=+RT1/n+ctMrr@s*t~> -df0<^r;ZhiK)Yg1p](=cn+?V[8G`Ae0STN,+Su-=+RT1/n+ctMrr@s*t~> -df0<^r;ZhiK)Yg1p](=cn+?V[8G`Ae0STN,+Su-=+RT1/n+ctMrr@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( -df0<^r;ZhiJcGcM!LF)b!!NpQhuD"6qZ$XVpOiJG+Su-=+RT1/TDANf5j\LN^\Rp15_K( -df0<^r;ZhiJcGcM!LF)b!!NpQhuD"6qZ$XVpOiJG+Su-=+RT1/TDANf5j\LN^\Rp15_K( -df0<^r;ZhiJcG`L!S9$s!!,V%qZ$YApO`DF+Su-=+RT1/TDANf5j\LN^\Rp1+G9[q?iZgMs+13N -rrAD^!!'M%rr^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^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^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& -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& -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& -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;^Mnnc&Xa&GcA,fC](CTB?1T0X'gB!8mSPJcC<$X8`17r;Zhidf4g~> -df0<^r;ZhiKDtpjq>^N1oD\jC3;^Mnnc&Xa&GcA,fC](CTB?1T0X'gB!8mSPJcC<$X8`17r;Zhidf4g~> -df0<^r;ZhiKDtpjq>^N1oD\jC3;^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+ -df0<^r;ZhiL&V.Fq#CEXmJd09q>^LdM#RGtqZ$U=li-t"q>^LdnG`Ktq>^L\Jc>dZ!2"iBJcE%U -!$M+ -df0<^r;ZhiL&V.Fq#CEXmJd09q>^LdM#RGtqZ$U=li-t"q>^LdnG`Ktq>^L\Jc>dZ!2"iBJcE%U -!$M+ -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^M'Jc>iP?iZgM -s+13Vrr=2%T!!$^.rrA\f!!$EYrrCsP!.k0$s/Z/"^\n-4T@3ai~> -df0<^r;ZhiK`;%Uq#CFTp[S7apF,k^M'Jc>iP?iZgM -s+13Vrr=2%T!!$^.rrA\f!!$EYrrCsP!.k0$s/Z/"^\n-4T@3ai~> -df0<^r;ZhiK`;%Uq#CFTp[S7apF,k^M'Jc>iP?iZgM -s+13Vrr=2%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>^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>^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>^M'fDbj.q#H!GJcDeN!5JI4!2%^>J,~> -df0<^r;ZhiK)YgIp](=3TD/?dT-3q0!D)sIrrA\cIfL&W!!!T)IfQ\Drr@$5!!5Ehhus*t~> -df0<^r;ZhiK)YgIp](=3TD/?dT-3q0!D)sIrrA\cIfL&W!!!T)IfQ\Drr@$5!!5Ehhus*t~> -df0<^r;ZhiK)YgIp](=3TD/?dT-3q0!D)sIrrA\cIfL&W!!!T)IfQ\Drr@$5!!5Ehhus*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!+>^L^L4qu6Ygq>^M'hZ!R@lMpomJcC<$Zi:$?r;Zhidf4g~> -df0<^r;ZhiJcG`L!.X86!.Tt-!'oWG!+>^L^L4qu6Ygq>^M'hZ!R@lMpomJcC<$Zi:$?r;Zhidf4g~> -df0<^r;ZhiJcG`L!.X86!.Tt-!'oWG!+>^L^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 -df0 -df0 -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$JcC<$JcC<$m/I(#r;Zhidf4g~> -df0<^r;ZhiJcC<$JcDPG!al##JcC<$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 -!!"/ -df0<^r;ZhiN;iqQ0`(hM+Pm%upFuIE!$HjmqYpTj0`(hM+R/n+J)LA-@%%#r?iZgMs+13jrr@#q -!!"/ -df0<^r;ZhiN;iqQ0`(hM+Pm%upFuIE!$HjmqYpTj0`(hM+R/n+J)LA-@%%#r?iZgMs+13jrr@#q -!!"/ -df0<^r;ZhiNW0%R=S`!t+Q!,!pK77l!$Hjmqu6]k=S`!t+R/n+J)LA-@%%#r?iZgMs+13lrrMk% -o)K"45Yur45X5VI!!"/ -df0<^r;ZhiNW0%R=S`!t+Q!,!pK77l!$Hjmqu6]k=S`!t+R/n+J)LA-@%%#r?iZgMs+13lrrMk% -o)K"45Yur45X5VI!!"/ -df0<^r;ZhiNW0%R=S`!t+Q!,!pK77l!$Hjmqu6]k=S`!t+R/n+J)LA-@%%#r?iZgMs+13lrrMk% -o)K"45Yur45X5VI!!"/ -df0<^r;ZhiNrK-`./#rrUfE3;3CQ+Su*<+Su-=5_8rds+14'rrBh4!!&Y>s*t~> -df0<^r;ZhiNrK-`./#rrUfE3;3CQ+Su*<+Su-=5_8rds+14'rrBh4!!&Y>s*t~> -df0<^r;ZhiNrK-`./#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. -df0<^r;ZhiPQ(dK^SbH^pAb19jSoAG^SbH^pAb19Jc>l9^SbH^pAb19l2La5q>^MfJc>iP?iZgM -s+13mrr?0q!!*Y'o)AdCBF+G7!$M. -df0<^r;ZhiPQ(dK^SbH^pAb19jSoAG^SbH^pAb19Jc>l9^SbH^pAb19l2La5q>^MfJc>iP?iZgM -s+13mrr?0q!!*Y'o)AdCBF+G7!$M. -df0<^r;ZhiQN$qMn,NG2kPkNIn,NG2K`;$;n,NG2l2La5q>^MfJc>iP?iZgMs+13nrrA\c!!-Kr -n,EIXNtD3h!$M. -df0<^r;ZhiQN$qMn,NG2kPkNIn,NG2K`;$;n,NG2l2La5q>^MfJc>iP?iZgMs+13nrrA\c!!-Kr -n,EIXNtD3h!$M. -df0<^r;ZhiQN$qMn,NG2kPkNIn,NG2K`;$;n,NG2l2La5q>^MfJc>iP?iZgMs+13nrrA\c!!-Kr -n,EIXNtD3h!$M. -df0<^r;ZhiQN$qMn,NG2kPkNIn,NG2K`;$;n,NG2l2La5q>^MfJc>iP?iZgMs+13orrM!_q#CF$ -\*O%pk?.Z_!$M. -df0<^r;ZhiQN$qMn,NG2kPkNIn,NG2K`;$;n,NG2l2La5q>^MfJc>iP?iZgMs+13orrM!_q#CF$ -\*O%pk?.Z_!$M. -df0<^r;ZhiQN$qMn,NG2kPkNIn,NG2K`;$;n,NG2l2La5q>^MfJc>iP?iZgMs+13orrM!_q#CF$ -\*O%pk?.Z_!$M. -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^MfJc>iP?iZgM -s+13qrrA,U!!#"J,~> -df0<^r;ZhiQN$rWpO^MfJc>iP?iZgM -s+13qrrA,U!!#"J,~> -df0<^r;ZhiQN$rWpO^MfJc>iP?iZgM -s+13qrrA,U!!#"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; -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; -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; -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!>( -df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.X55!>( -df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LP+!.X55!>( -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$ -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$ -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$ -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& -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& -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& -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@"0f7EsQs3CWE -^\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@"0f7EsQs3CWE -^\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@"0f7EsQs3CWE -^\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!% -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!% -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!% -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:clYqYpOUHPl2L`+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:clYqYpOUHPl2L`+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:clYqYpOUHPl2L`+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. -df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LV-!KZF/rr@$6!!&(IrrQR.T7R#ns3:QE -h[&uW!2&KT"J65*!$M. -df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LV-!KZF/rr@$6!!&(IrrQR.T7R#ns3:QE -h[&uW!2&KT"J65*!$M. -df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LV-"!A/)p[.t]`sDMA!>tQurrQR.T7R#n -s31KCTD& -df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LV-"!A/)p[.t]`sDMA!>tQurrQR.T7R#n -s31KCTD& -df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LV-"!A/)p[.t]`sDMA!>tQurrQR.T7R#n -s31KCTD& -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,!!"/ -df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LV-!$M1>!Eci&rrJGtq#CF,kEl2M?iZgM -s+13nrrMjBpAb7#L[Xj7!Ol2,!!"/ -df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LV-!$M1>!Eci&rrJGtq#CF,kEl2M?iZgM -s+13nrrMjBpAb7#L[Xj7!Ol2,!!"/ -df0<^r;ZhiMuNc"qZ$U=h#@?sqZ$U=JcGQG!$M.=!$LV-!$M+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+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+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,s*t~> -df0<^r;ZhiQN$qMjT#9go)A\TjT#9gO8f2FjT#9gpAY+8o`+t7rBL?2o`+uAQ2^nn!2"iBJcEjl -!T,s*t~> -df0<^r;ZhiQN$qMjT#9go)A\TjT#9gO8f2FjT#9gpAY+8o`+t7rBL?2o`+uAQ2^nn!2"iBJcEjl -!T,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!!,@" -qYpOE)hgtfYs3UcG^\n-4T@3ai~> -df0<^r;ZhiQN$qMjT#9go)A\TjT#9gO8f2FjT#9gpAY+8jT#:"PQ(\l!2"iBJcEdj!V]^T!!,@" -qYpOE)hgtfYs3UcG^\n-4T@3ai~> -df0<^r;ZhiQN$qMjT#9go)A\TjT#9gO8f2FjT#9gpAY+8jT#:"PQ(\l!2"iBJcEdj!V]^T!!,@" -qYpOE)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$ -df0<^r;ZhiQN$qMjT#9go)A\TjT#9gO8f2FjT#9gpAY+8jo>CJP5bSk!2"iBJcE^h!P^n]!!,X* -q#:=:qZ$U]pAY0N...'<#`&H[5l1N]+Sl$ -df0<^r;ZhiQN$qMjT#9go)A\TjT#9gO8f2FjT#9gpAY+8jo>CJP5bSk!2"iBJcE^h!P^n]!!,X* -q#:=:qZ$U]pAY0N...'<#`&H[5l1N]+Sl$ -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!!K2\+bIRJcEmm!5JI4!2%^>J,~> -df0<^r;ZhiQN$s2jhCfIo)A^9jhCfIO8f4+jhCfInG`U:LKHP1!!K2\+bIRJcEmm!5JI4!2%^>J,~> -df0<^r;ZhiQN$s2jhCfIo)A^9jhCfIO8f4+jhCfInG`U:LKHP1!!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 -df0 -df0 -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 -df0 -df0 -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -JcC<$JcC<$JcC<$JcC<$JcC<$UAo`~> -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 Binary files a/doc/user/ObjectId-16Bits.png and /dev/null 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=`!!".hs*t~> -df0;4rVup@JcG*:!$L(t"$g7dfB=`!!".hs*t~> -df0;4rVup@JcG*:!$L(t"$g7dfB=`!!".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 -df0;4rVup@JcG*:!$K\i!=6I0rrA\\!!$F!rr=23!!'cbs/uA'hZ+dMs2b3@pL)GM!.TS"q>UGE -nGiPsJcG0 -df0;4rVup@JcG*:!$K\i!=6I0rrA\\!!$F!rr=23!!'cbs/uA'hZ+dMs2b3@pL)GM!.TS"q>UGE -nGiPsJcG0 -df0;4rVup@JcG*:!$KYh!>t"irrA\\!!$F!rr=23!!'cbs/uA'hZ+dMs2k9Amm,;$!.TS"q>UGE -nGiPsJcG0 -df0;4rVup@JcG*:!$KYh!>t"irrA\\!!$F!rr=23!!'cbs/uA'hZ+dMs2k9Amm,;$!.TS"q>UGE -nGiPsJcG0 -df0;4rVup@JcG*:!$KYh!>t"irrA\\!!$F!rr=23!!'cbs/uA'hZ+dMs2k9Amm,;$!.TS"q>UGE -nGiPsJcG0 -df0;4rVup@JcG*:!$KVg!C6DMrrA\\!!$F!rr=23!!'cbs/uA'hZ+dMs2t?Bh^HkP!.TS"q>UGE -nGiPsJcG0 -df0;4rVup@JcG*:!$KVg!C6DMrrA\\!!$F!rr=23!!'cbs/uA'hZ+dMs2t?Bh^HkP!.TS"q>UGE -nGiPsJcG0 -df0;4rVup@JcG*:!$KVg!C6DMrrA\\!!$F!rr=23!!'cbs/uA'hZ+dMs2t?Bh^HkP!.TS"q>UGE -nGiPsJcG0 -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=`!!".hs*t~> -df0;4rVup@JcG*:!$KPe!!q'R!$Le3!5F*bY5\R\!$HjmcMmpc#jD=`!!".hs*t~> -df0;4rVup@JcG*:!$KPe!!q'R!$Le3!5F*bY5\R\!$HjmcMmpc#jD=`!!".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 -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 -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 -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+!=^(!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+!=^(!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+!=^(!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 -df0;4rVup@JcG*:!$Lb2!5J+)!6=O.!;H*b!$Le3!8m\R!2%sF!+>L"!r%0MiW'!=T7R%1rrV'X -+G'R?rr -df0;4rVup@JcG*:!$Lb2!5J+)!6=O.!;H*b!$Le3!8m\R!2%sF!+>L"!r%0MiW'!=T7R%1rrV'X -+G'R?rr -df0;4rVup@JcG*:!$Lb2!5J+)!8m8G!#Y;,!$Le3!8m\R!2%sF!+>O#!Oj3.!.k1g+!KRNO!!$^*s4IAPhtR-Ok@!-H!2"iBec,V7rVup@dJn^~> -df0;4rVup@JcG*:!$Lb2!5J+)!8m8G!#Y;,!$Le3!8m\R!2%sF!+>O#!Oj3.!.k1g+!KRNO!!$^*s4IAPhtR-Ok@!-H!2"iBec,V7rVup@dJn^~> -df0;4rVup@JcG*:!$Lb2!5J+)!8m8G!#Y;,!$Le3!8m\R!2%sF!+>O#!Oj3.!.k1g+!KRNO!!$^*s4IAPhtR-Ok@!-H!2"iBec,V7rVup@dJn^~> -df0;4rVup@JcG*:!$Lb2!5J+)!5J"'!(c\\!$Le3!8m\R!2%sF!+>U%!V]^O!.k1dP: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!.k1dP: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!.k1dP: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!.k1Eu!.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!.k1Eu!.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!.k1Eu!.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-kPG>!@[^; -s4IAPhtm?QLY;_.T7R$mrr>=`!!".hs*t~> -df0;4rVup@JcG*:!$Lb2!5J+)!*Jak!$Lh3!$Le3!8m\R!2%sF!+>['!Uh_r!.k1-kPG>!@[^; -s4IAPhtm?QLY;_.T7R$mrr>=`!!".hs*t~> -df0;4rVup@JcG*:!$Lb2!5J+)!*Jak!$Lh3!$Le3!8m\R!2%sF!+>['!Uh_r!.k1-kPG>!@[^; -s4IAPhtm?QLY;_.T7R$mrr>=`!!".hs*t~> -df0;4rVup@JcG*:!$Lb2!5J.*!TsaY!!&)Mrr=23!!(pRrrA\F!!$F'rr>=;!.k1u9O7N;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>=;!.k1u9O7N;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>=;!.k1u9O7N;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!?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!?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!?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!!!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!!!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!!!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 -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 -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 -df0;4rVup@JcG*:!$Kel!?el8!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!?el8!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!?el8!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!.k1K!-%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!.k1K!-%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!.k1K!-%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=(q92I!!.XM=!+>0n!7139!>t:p -rr=bD!!!T*rr@Q#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=(q92I!!.XM=!+>0n!7139!>t:p -rr=bD!!!T*rr@Q#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=(q92I!!.XM=!+>0n!7139!>t:p -rr=bD!!!T*rr@Q#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!+>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!+>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!+>UGEnGiPso)Aab#k7lp0_GAFJ+3L=@.!so3:HnK(oMrb]`.ssrVup@dJn^~> -df0;4rVup@JcG*:!$KSf!ANF%rr=23!!(pKrr=23!!'e%rrC[=!![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[=!![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[=!![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,NHDnGiPsnc&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,NHDnGiPsnc&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,NHDnGiPsnc&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 -df0;4rVup@JcG*:!$KJc!2oJh!$Le3!8mGK!$Le3!5Iq$!&3R9"!C^4f7Et\rrV'X+G'RBrr@$, -!!'LWrrDNW!!$-grr -df0;4rVup@JcG*:!$KJc!2oJh!$Le3!8mGK!$Le3!5Iq$!&3R9"!C^4f7Et\rrV'X+G'RBrr@$, -!!'LWrrDNW!!$-grr -df0;4rVup@JcG*:!$KJc!=7!$HjmeGfMu -mf3?[e,KF*n,NHDmJd/WnGiPCq#:>DnGiPsnc&T=nGiP3o`"o@nGiPsmf*:]b5hA?s -!.XM=!$Lq6!.XM=!+>3o!8$31!^M7MJcEpn!'pM`!$K\hJ,~> -df0;4rVup@JcG*:!$KJc!=7!$HjmeGfMu -mf3?[e,KF*n,NHDmJd/WnGiPCq#:>DnGiPsnc&T=nGiP3o`"o@nGiPsmf*:]b5hA?s -!.XM=!$Lq6!.XM=!+>3o!8$31!^M7MJcEpn!'pM`!$K\hJ,~> -df0;4rVup@JcG*:!$KJc!=7!$HjmeGfMu -mf3?[e,KF*n,NHDmJd/WnGiPCq#:>DnGiPsnc&T=nGiP3o`"o@nGiPsmf*:]b5hA?s -!.XM=!$Lq6!.XM=!+>3o!8$31!^M7MJcEpn!'pM`!$K\hJ,~> -df0;4rVup@JcG*:!$Lb2!&4.4!#Xo"!&4*G!$Le3!8mGK!$Le3!5Iq$!6iE: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$!6iE: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$!6iE: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,!.XJDnGiPsnc&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,!.XJDnGiPsnc&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,!.XJDnGiPsnc&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 -df0;4rVup@JcG*:!$Lb2!5J"&!Uglo!!%NCrr=23!!(pKrr=23!!'e"rrM:*g].?\YCZ`@rrV'X -+G'RBrrD6M!!(p+rr@Q -df0;4rVup@JcG*:!$Lb2!5J"&!Uglo!!%NCrr=23!!(pKrr=23!!'e"rrM:*g].?\YCZ`@rrV'X -+G'RBrrD6M!!(p+rr@Q -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!!!~> -df0;4rVup@JcG*:!$Lb2!5It%!V[/p!!!~> -df0;4rVup@JcG*:!$Lb2!5It%!V[/p!!!~> -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?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?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?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+*Frr>m_!!*A'l2LeYB_h]/J,B6HpB^9h!*Jaj!V[/q!!#jirr@Q=!!$EsrrA\]!!"/6 -rrA\\!!)c\rr~> -df0;4rVup@JcG*:!$Lb2!5J"&!-%?+!+>R$!$Le3!8mGK!$Le3!+>6p"(2+RpZVVWJ+*Frr>m_!!*A'l2LeYB_h]/J,B6HpB^9h!*Jaj!V[/q!!#jirr@Q=!!$EsrrA\]!!"/6 -rrA\\!!)c\rr~> -df0;4rVup@JcG*:!$Lb2!5J"&!-%?+!+>R$!$Le3!8mGK!$Le3!+>6p"(2+RpZVVWJ+*Frr>m_!!*A'l2LeYB_h]/J,B6HpB^9h!*Jaj!V[/q!!#jirr@Q=!!$EsrrA\]!!"/6 -rrA\\!!)c\rr~> -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!+>^)!ALGUGEnGiPsnc&T]nGiP3o`"p3n,NJ+n*p>W -hu!HU#]Stnrr~> -df0;4rVup@JcG*:!$Lb2!5J:."R!Od=:"3m!,2*+!$Le3!8mGK!+>9r!-mu4!+>^)!ALGUGEnGiPsnc&T]nGiP3o`"p3n,NJ+n*p>W -hu!HU#]Stnrr~> -df0;4rVup@JcG*:!$Lb2!5J:."R!Od=:"3m!,2*+!$Le3!8mGK!+>9r!-mu4!+>^)!ALGUGEnGiPsnc&T]nGiP3o`"p3n,NJ+n*p>W -hu!HU#]Stnrr~> -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<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<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<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\]!!"/5rrUGEnGiPsnc&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\]!!"/5rrUGEnGiPsnc&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\]!!"/5rrUGEnGiPsnc&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;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;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;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 -df0;4rVup@JcG*:!$KMd!,2!(!$Le3!8mDJ!*J4\!+>g+!+=@X!>t!Ns6oshhZ+dMs3(EBO3[e+ -J+rsD`sC2q!@[^7rr@Q=!!$EsrrA\]!!"/5rrCC(!!(pPrr>U -df0;4rVup@JcG*:!$KMd!,2!(!$Le3!8mDJ!*J4\!+>g+!+=@X!>t!Ns6oshhZ+dMs3(EBO3[e+ -J+rsD`sC2q!@[^7rr@Q=!!$EsrrA\]!!"/5rrCC(!!(pPrr>U -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_%=!!(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_%=!!(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_%=!!(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?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?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?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#; -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#; -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#; -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?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?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?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&Jh -:m^A;rr@Q=!!$EsrrA\]!!"/.rrUec&F'5qhu!EUpTJ6Ik5YQSVtYcBbl7Z.rVup@dJn^~> -df0;4rVup@JcG*:!$L+u":.83QbV\_!$Le3!8m2D!r&Jh -:m^A;rr@Q=!!$EsrrA\]!!"/.rrUec&F'5qhu!EUpTJ6Ik5YQSVtYcBbl7Z.rVup@dJn^~> -df0;4rVup@JcG*:!$L+u":.83QbV\_!$Le3!8m2D!r&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!!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!!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!!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>^LmQ@rVup@dJn^~> -df0;4rVup@JcG]K!KRNQ!!-L%Jc>_*qZ$Vgl2TZA!8iG/!oEu#JcF7"!N-ds!!,XBmf*9:q>^NQ -f`(q:q>^LmQ@rVup@dJn^~> -df0;4rVup@JcG]K!KRNQ!!-L%Jc>_*qZ$Vgl2TZA!8iG/!oEu#JcF7"!N-ds!!,XBmf*9:q>^NQ -f`(q:q>^LmQ@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^M'ec,Wal2UhAYl=^^MfJcCT,!'pM`!$K\hJ,~> -df0;4rVup@JcGcM!RD&8!!&(4rr@iN!!&YUs53kWhh1q1hZ+dMs4@8Ommu@:!.XM^M'ec,Wal2UhAYl=^^MfJcCT,!'pM`!$K\hJ,~> -df0;4rVup@JcGcM!RD&8!!&(4rr@iN!!&YUs53kWhh1q1hZ+dMs4@8Ommu@:!.XM^M'ec,Wal2UhAYl=^^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>^LmQ@rVup@dJn^~> -df0;4rVup@Jc>fOk90O"![)ubrkAJ`@.sX$^P2[gQO*Ef!2&NUhuEc7KDu#1!$Hjmf`)!@0_GDI -#XDMiIfVegoDel9nc&T=q>^NQf`(q:q>^LmQ@rVup@dJn^~> -df0;4rVup@Jc>fOk90O"![)ubrkAJ`@.sX$^P2[gQO*Ef!2&NUhuEc7KDu#1!$Hjmf`)!@0_GDI -#XDMiIfVegoDel9nc&T=q>^NQf`(q:q>^LmQ@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=` -!!".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=` -!!".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=` -!!".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=`!!".hs*t~> -df0;4rVup@K)Yl7#l4N$YOhbppDE`,!3_Ob!5It&!2&NUq>^L=`!!".hs*t~> -df0;4rVup@K)Yl7#l4N$YOhbppDE`,!3_Ob!5It&!2&NUq>^L=`!!".hs*t~> -df0;4rVup@K)Yh#q>^LLnc&T]q>^LTOoGErmf3?[l2US[!$Hjml2LhB!$Hjmg]%7Eq#CFX'!.UsI!5J@1!2"iBM>mQ@rVup@dJn^~> -df0;4rVup@K)Yh#q>^LLnc&T]q>^LTOoGErmf3?[l2US[!$Hjml2LhB!$Hjmg]%7Eq#CFX'!.UsI!5J@1!2"iBM>mQ@rVup@dJn^~> -df0;4rVup@K)Yh#q>^LLnc&T]q>^LTOoGErmf3?[l2US[!$Hjml2LhB!$Hjmg]%7Eq#CFX'!.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[!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[!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[!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+!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+!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+!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+'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+'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+'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^Ltq#:Bh0_k\K\+Tb$L\^uO+Ram]hu<[ArVup@dJn^~> -df0;4rVup@K`;$Sq>^MFm/Qk]!:PdE!2')f!2&NUq>^L^Ltq#:Bh0_k\K\+Tb$L\^uO+Ram]hu<[ArVup@dJn^~> -df0;4rVup@K`;$Sq>^MFm/Qk]!:PdE!2')f!2&NUq>^L^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+X&!.X_C!D)DGrrM!oq#CEHoD\eUqZ$U=p\t6&q>^Omp[S7`O88hVE;9G5YPA/!&C9nH -"Qrke!$M.^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+X&!.X_C!D)DGrrM!oq#CEHoD\eUqZ$U=p\t6&q>^Omp[S7`O88hVE;9G5YPA/!&C9nH -"Qrke!$M.^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+X&!.X_C!D)DGrrM!oq#CEHoD\eUqZ$U=p\t6&q>^Omp[S7`O88hVE;9G5YPA/!&C9nH -"Qrke!$M.^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@^L^NAmf*9Jq>^N!qYpQ9q#CDUm/I+LB_qc* -!!$EOrr?I'!!%N=rr@QF!!*qWnG`K^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@^L^NAmf*9Jq>^N!qYpQ9q#CDUm/I+LB_qc* -!!$EOrr?I'!!%N=rr@QF!!*qWnG`K^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@^L^NAmf*9Jq>^N!qYpQ9q#CDUm/I+LB_qc* -!!$EOrr?I'!!%N=rr@QF!!*qWnG`K^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'c2RcO -q>^MFnc&T=q>^NQn,ECVq>^LUKa#l=T&#j:XU!5J@1!2')e!9a1Y!6=I+!,260!&4*G!'pA\ -!=7~> -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'c2RcO -q>^MFnc&T=q>^NQn,ECVq>^LUKa#l=T&#j:XU!5J@1!2')e!9a1Y!6=I+!,260!&4*G!'pA\ -!=7~> -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'c2RcO -q>^MFnc&T=q>^NQn,ECVq>^LUKa#l=T&#j:XU!5J@1!2')e!9a1Y!6=I+!,260!&4*G!'pA\ -!=7~> -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;rrBh1!!&YfrrDNa!!'4fs7u]qTCi-ak8=$q -!C-qf!!+5:JcFC&!'pM`!$K\hJ,~> -df0;4rVup@K`CiJ!5In#!'pA\!12dH!+=:VeGfN@q>^Mfec,[%3;rrBh1!!&YfrrDNa!!'4fs7u]qTCi-ak8=$q -!C-qf!!+5:JcFC&!'pM`!$K\hJ,~> -df0;4rVup@K`CiJ!5In#!'pA\!12dH!+=:VeGfN@q>^Mfec,[%3;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=`!!".hs*t~> -df0;4rVup@K`CiJ!5In#!'pA\!2&?P!+=:VeGfN@q>^MfeGfRD8GE/bhh(k0hZ+dMs5=`!!".hs*t~> -df0;4rVup@K`CiJ!5In#!'pA\!2&?P!+=:VeGfN@q>^MfeGfRD8GE/bhh(k0hZ+dMs5=`!!".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>=]!!"/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>=]!!"/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>=]!!"/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*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*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*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* -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* -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* -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.?!3b>\q>^M'c2RcO -q>^MFnc&T=q>^NQmf*8pq>gBl!-n>?!4V=p!5J@1!2',f!-m5u!.XM -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.?!3b>\q>^M'c2RcO -q>^MFnc&T=q>^NQmf*8pq>gBl!-n>?!4V=p!5J@1!2',f!-m5u!.XM -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.?!3b>\q>^M'c2RcO -q>^MFnc&T=q>^NQmf*8pq>gBl!-n>?!4V=p!5J@1!2',f!-m5u!.XM -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?!#XVn!71H@ -!5J@0!.XhF!8m/C!13N^!2oMi!'pD]!$M.\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?!#XVn!71H@ -!5J@0!.XhF!8m/C!13N^!2oMi!'pD]!$M.\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?!#XVn!71H@ -!5J@0!.XhF!8m/C!13N^!2oMi!'pD]!$M.\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*=`!!".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*=`!!".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*=`!!".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* -df0;4rVup@K`;%uq>^LdmJd0iq>^LtM#RIIq>^Mfd/O)2q>^MFKDu#1!$HjmhZ!Quq>^LtiVrrQ -&GcA,E;9G5J,0-FhsC@CE;BP7ht@!L5l1N]+Su* -df0;4rVup@K`;%uq>^LdmJd0iq>^LtM#RIIq>^Mfd/O)2q>^MFKDu#1!$HjmhZ!Quq>^LtiVrrQ -&GcA,E;9G5J,0-FhsC@CE;BP7ht@!L5l1N]+Su* -df0;4rVup@K`;&@q>^L^MFM#RIIq>^Mfd/O)*q>^M^KDu#1!$HjmhZ!RXq>^O%n)F?I -Vtg;mYPA+tJ,0-FhsC@C5l1N^#l"#l!'pD]!$M.^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^MFM#RIIq>^Mfd/O)*q>^M^KDu#1!$HjmhZ!RXq>^O%n)F?I -Vtg;mYPA+tJ,0-FhsC@C5l1N^#l"#l!'pD]!$M.^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^MFM#RIIq>^Mfd/O)*q>^M^KDu#1!$HjmhZ!RXq>^O%n)F?I -Vtg;mYPA+tJ,0-FhsC@C5l1N^#l"#l!'pD]!$M.^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*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*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*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' -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' -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' -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'=` -!!".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'=` -!!".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'=` -!!".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~> -df0;4rVup@K)YgYq>^MVnc&XQ#l4N$hhV43TDANfT@3`>;#((k^OlIehZ+dMs4mVSchIJ?TBZ@V -pIP)[!$Lt7!.XhF!8m5E!,23/!13~> -df0;4rVup@K)YgYq>^MVnc&XQ#l4N$hhV43TDANfT@3`>;#((k^OlIehZ+dMs4mVSchIJ?TBZ@V -pIP)[!$Lt7!.XhF!8m5E!,23/!13~> -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$!/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$!/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$!/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.(--idZNrrX'!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.(--idZNrrX'!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.(--idZNrrX'!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.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.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.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$./UKi3;EOU#^H+:rrLG:r;Zg?qYpQAq#CDMp\t9gfA$<*@/9j'J+ -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$./UKi3;EOU#^H+:rrLG:r;Zg?qYpQAq#CDMp\t9gfA$<*@/9j'J+ -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$./UKi3;EOU#^H+:rrLG:r;Zg?qYpQAq#CDMp\t9gfA$<*@/9j'J+ -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\#~> -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\#~> -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\#~> -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]+SGa8k8UGEq>^NQmf*8pq>g6h -!2&0L!2&ra!Tt -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]+SGa8k8UGEq>^NQmf*8pq>g6h -!2&0L!2&ra!Tt -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]+SGa8k8UGEq>^NQmf*8pq>g6h -!2&0L!2&ra!Tt -df0;4rVup@JcGcM!V\#+!!&pWrrBgp!!(pNrrA\P!!*qgJcG`L!oEu#JcF=$!.Wr-!>*THrr@Q/ -!!*YWn,EAQqZ$U=o`"sD+QEG%@.sU#O6-EB+Sl$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$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$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-#]TPX'o`"s\0^\oC+OC)&q>^Mfnc&T.jo>Eaa8Q#=pF,kt!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-#]TPX'o`"s\0^\oC+OC)&q>^Mfnc&T.jo>Eaa8Q#=pF,kt!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-#]TPX'o`"s\0^\oC+OC)&q>^Mfnc&T.jo>Eaa8Q#=pF,kt!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/^\ -df0;4rVup@JcF'r#ku*KQ[bpJ^Yb:Us1\PprI4m0^YdoJ!lr'Br-nd/^\ -df0;4rVup@JcF'r#ku*KQ[bpJ^Yb:Us1\PprI4m0^YdoJ!lr'Br-nd/^\ -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>=]!!~> -df0;4rVup@LAq:`8GE/bTB?.SpIP#Y!a))`q>UQkVcY(8rr>=]!!~> -df0;4rVup@LAq:`8GE/bTB?.SpIP#Y!a))`q>UQkVcY(8rr>=]!!~> -df0;4rVup@NrK+JrkAQ5Iom9U!!&YRrr>mj!!,XBP5bMIr;ZmQVt]i`!O!X@!!(@,!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@!!(@,!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@!!(@,!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~> -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~> -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~> -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^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^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^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;^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;^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;^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' -df0;4rVup@KDtqDq>^MfmJd/WoDenWJ,I%`[sqcspAb4BpQ5CTJ,''E=Qobb^[_@*.(>*6!oEu# -JcC<$cMmkeqZ$V(q#:Bh+Sl' -df0;4rVup@KDtqDq>^MfmJd/WoDenWJ,I%`[sqcspAb4BpQ5CTJ,''E=Qobb^[_@*.(>*6!oEu# -JcC<$cMmkeqZ$V(q#:Bh+Sl' -df0;4rVup@KDtqDq>^MfmJd/OpAb73J+*+2!KRfe!!&(BrrL.Gq>^O5n*'cO^[M4(@-^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(@-^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(@-^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^ -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^ -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^ -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$WtQmrrV'X -+G'QDs3CWE+Su-=@.jO"YPJ5!;#C7m^\Rp1^\[s1J,0-F\*Etn\,$()J,TBITDANfO6llH^\Rp1 -TDJQfVqV1OIt@WNs4%&K5lL``+OU4>~> -df0;4rVup@KDtqDq>^MfmJlt^!8$WtQmrrV'X -+G'QDs3CWE+Su-=@.jO"YPJ5!;#C7m^\Rp1^\[s1J,0-F\*Etn\,$()J,TBITDANfO6llH^\Rp1 -TDJQfVqV1OIt@WNs4%&K5lL``+OU4>~> -df0;4rVup@KDtqDq>^MfmJlt^!8$WtQmrrV'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~> -df0;4rVup@KDtqDq>^MfmJd/7q>^N1m/I'1q>^LDi;Wd"lN#?4!T,$q!!&Y>rr=2~> -df0;4rVup@KDtqDq>^MfmJd/7q>^N1m/I'1q>^LDi;Wd"lN#?4!T,$q!!&Y>rr=2~> -df0;4rVup@KDtqDq>^MfmJd/Oq>^N!m/I'pq>^L4i;WetlbCmJ!Uh`~> -df0;4rVup@KDtqDq>^MfmJd/Oq>^N!m/I'pq>^L4i;WetlbCmJ!Uh`~> -df0;4rVup@KDtqDq>^MfmJd/Oq>^N!m/I'pq>^L4i;WetlbCmJ!Uh`~> -df0;4rVup@KDtqDq>^MfmJd/Wq>^Mfm/I(#q#Hoa!Uh`~> -df0;4rVup@KDtqDq>^MfmJd/Wq>^Mfm/I(#q#Hoa!Uh`~> -df0;4rVup@KDtqDq>^MfmJd/Wq>^Mfm/I(#q#Hoa!Uh`~> -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!!((=`!!".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!!((=`!!".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!!((=`!!".hs*t~> -df0;4rVup@KDtqDq>^Mfm/I&>q>^NAmJd0aq>^Lml!!0:^N1q>UF+qZ$UElMgi4qZ$X&p\k*ln+m"a+RK+.^\Rp1TDAKe+Su-> -#kroMJcE1Y!'pM`!$K\hJ,~> -df0;4rVup@KDtqDq>^Mfm/I&>q>^NAmJd0aq>^Lml!!0:^N1q>UF+qZ$UElMgi4qZ$X&p\k*ln+m"a+RK+.^\Rp1TDAKe+Su-> -#kroMJcE1Y!'pM`!$K\hJ,~> -df0;4rVup@KDtqDq>^Mfm/I&>q>^NAmJd0aq>^Lml!!0:^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`!$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`!$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`!$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=`!!".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=`!!".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=`!!".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\# -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\# -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\# -df0;4rVup@NrK+JpV-]Qq>^M?pV-_&o`"sT)#4.4&a!!*AGV#T3M!5JF2!.XeE!sh_i -a8>l=^Sc#^pAb2,NrK1-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&a!!*AGV#T3M!5JF2!.XeE!sh_i -a8>l=^Sc#^pAb2,NrK1-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&a!!*AGV#T3M!5JF2!.XeE!sh_i -a8>l=^Sc#^pAb2,NrK1-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~> -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~> -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~> -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 -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 -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 -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$@!!^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$@!!^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$@!!^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 -df0;4rVup@M>n(S^OK'F5R7>i&3rL"YO@&Bj8TVX^OK'F5R7>i&3rL"YOC0E"P:D -df0;4rVup@M>n(S^OK'F5R7>i&3rL"YO@&Bj8TVX^OK'F5R7>i&3rL"YOC0E"P:D -df0;4rVup@N;isgBHZjG!C3j?rrM"Jq`k.:S,WQ!BHZjG!C3jFrrUf%..dK>+HHI'hZ+dMs+13E -rrC[G5QF@ -df0;4rVup@N;isgBHZjG!C3j?rrM"Jq`k.:S,WQ!BHZjG!C3jFrrUf%..dK>+HHI'hZ+dMs+13E -rrC[G5QF@ -df0;4rVup@N;isgBHZjG!C3j?rrM"Jq`k.:S,WQ!BHZjG!C3jFrrUf%..dK>+HHI'hZ+dMs+13E -rrC[G5QF@ -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=`!!".hs*t~> -df0;4rVup@OoGDHj8]0NiVrnMp&G)#T`5!Wj8]0Nm/I'hl2Uf,NrK1=`!!".hs*t~> -df0;4rVup@OoGDHj8]0NiVrnMp&G)#T`5!Wj8]0Nm/I'hl2Uf,NrK1=`!!".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 -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 -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 -df0;4rVup@OoGDHqu?d@E52,H!N.(8!!*r2jo5A-&G6#'@%dN"5l:T`+E5*hrrK#?p](=3p[J1` -cNs:G!D'uurrL/ZNrK1^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^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^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!!"/~> -df0;4rVup@OoGDHrVus9TCW!_pMfm-!0?:B!TtTt!!$E"rr>=`!!*q/o)AabE;0D5O7E5Nf+@`X -!AM9>s8N$"hZ+dMs+13Grr=JE!!"/~> -df0;4rVup@OoGDHrVus9TCW!_pMfm-!0?:B!TtTt!!$E"rr>=`!!*q/o)AabE;0D5O7E5Nf+@`X -!AM9>s8N$"hZ+dMs+13Grr=JE!!"/~> -df0;4rVup@OoGPL!"b4cn,EAQq#CC[kPkSW0`(hM#l4N$@%dN&5QD@Vp[A+^5ktB[5k4jS3;EOT -=SICHrVlrV!$HjmJcDSH!71KA!M9r#!!!l$rr=2~> -df0;4rVup@OoGPL!"b4cn,EAQq#CC[kPkSW0`(hM#l4N$@%dN&5QD@Vp[A+^5ktB[5k4jS3;EOT -=SICHrVlrV!$HjmJcDSH!71KA!M9r#!!!l$rr=2~> -df0;4rVup@OoGPL!"b4cn,EAQq#CC[kPkSW0`(hM#l4N$@%dN&5QD@Vp[A+^5ktB[5k4jS3;EOT -=SICHrVlrV!$HjmJcDSH!71KA!M9r#!!!l$rr=2~> -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=2oD\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=2oD\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=2oD\euq>^MFJcC<$X8`/b -rVup@dJn^~> -df0;4rVup@OoGF5lMgjNq#CDul2L`sq>^Pghtd^M/li-r-q>^NQn,EBcq#CC3oD\euq>^MFJcC<$X8`/brVup@dJn^~> -df0;4rVup@OoGF5lMgjNq#CDul2L`sq>^Pghtd^M/li-r-q>^NQn,EBcq#CC3oD\euq>^MFJcC<$X8`/brVup@dJn^~> -df0;4rVup@OoGF5lMgjNq#CDul2L`sq>^Pghtd^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~> -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~> -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~> -df0;4rVup@JcGNF!!rE$!-%9(!2oYn"'GU'htd=`!!".hs*t~> -df0;4rVup@JcGNF!!rE$!-%9(!2oYn"'GU'htd=`!!".hs*t~> -df0;4rVup@JcGNF!!rE$!-%9(!2oYn"'GU'htd=`!!".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%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%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%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=`!!".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=`!!".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=`!!".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'=`!!".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'=`!!".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'=`!!".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+^NQmJd1Dq#CEPp&>#"q>^MFJcC<$X8`/brVup@dJn^~> -df0;4rVup@JcGNF!$M+^NQmJd1Dq#CEPp&>#"q>^MFJcC<$X8`/brVup@dJn^~> -df0;4rVup@JcGNF!$M+^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+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+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+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+^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+^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+^MFJcC<$X8`/brVup@dJn^~> -df0;4rVup@JcGQG!/LCN!=8GjrrBP)!!,Xbq>UHPq>^M'M#RI1q>^O%p\4[f=S`!tpOWA,"orr=2=`!!".h -s*t~> -df0;4rVup@JcGQG!/LCN!=8GjrrBP)!!,Xbq>UHPq>^M'M#RI1q>^O%p\4[f=S`!tpOWA,"orr=2=`!!".h -s*t~> -df0;4rVup@JcGQG!/LCN!=8GjrrBP)!!,Xbq>UHPq>^M'M#RI1q>^O%p\4[f=S`!tpOWA,"orr=2=`!!".h -s*t~> -df0;4rVup@JcGQG!$M+^M'M#RGtq>^LdpAY+@qZ$UEqu7)NO&/), -!!#8L8:RQ#M#RP6!$HjmJcD_L!,23/!9a1X!(cqd!4VFs!$M+X'!&4'F!+>X'!.TS" -JcDeN!'pM`!$K\hJ,~> -df0;4rVup@JcGQG!$M+^M'M#RGtq>^LdpAY+@qZ$UEqu7)NO&/), -!!#8L8:RQ#M#RP6!$HjmJcD_L!,23/!9a1X!(cqd!4VFs!$M+X'!&4'F!+>X'!.TS" -JcDeN!'pM`!$K\hJ,~> -df0;4rVup@JcGQG!$M+^M'M#RGtq>^LdpAY+@qZ$UEqu7)NO&/), -!!#8L8:RQ#M#RP6!$HjmJcD_L!,23/!9a1X!(cqd!4VFs!$M+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'~> -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'~> -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'~> -df0;4rVup@JcGTH!)WLl!>tS'rrMR:qZ$X&ch@A=htd,"prr=2=`!!".hs*t~> -df0;4rVup@JcGTH!)WLl!>tS'rrMR:qZ$X&ch@A=htd,"prr=2=`!!".hs*t~> -df0;4rVup@JcGTH!)WLl!>tS'rrMR:qZ$X&ch@A=htd,"prr=2=`!!".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+=` -!!".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+=` -!!".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+=` -!!".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'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'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'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+=` -!!".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+=` -!!".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+=` -!!".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'^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'^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'^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=\!!&qfrr=2^MF -JcC<$X8`/brVup@dJn^~> -df0;4rVup@JcGcM!3c1u!>t"mrr=bM!!*YWnG`LGq>^M'gA_-qlN#0/!3c1u!>t"krr=2=\!!&qfrr=2^MF -JcC<$X8`/brVup@dJn^~> -df0;4rVup@JcGcM!3c1u!>t"mrr=bM!!*YWnG`LGq>^M'gA_-qlN#0/!3c1u!>t"krr=2=\!!&qfrr=2^MF -JcC<$X8`/brVup@dJn^~> -df0;4rVup@Jc>fOcNs=H!4VV#!$M1>!=61'rrCsQ!!$E\rr=2-!6tNEcNs=H!4VP!!$M+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+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+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^NInc&SKq>^MnoD\e5jo>GgGk^V*!+>X'!.TS"JcDeN!'pM`!$K\hJ,~> -df0;4rVup@K)YlG3;EOS@.O^NInc&SKq>^MnoD\e5jo>GgGk^V*!+>X'!.TS"JcDeN!'pM`!$K\hJ,~> -df0;4rVup@K)YlG3;EOS@.O^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^N1m/I'Hq>^L=`!!".hs*t~> -df0;4rVup@K`;%Eq#CF^N1m/I'Hq>^L=`!!".hs*t~> -df0;4rVup@K`;%Eq#CF^N1m/I'Hq>^L=`!!".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'~> -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'~> -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'~> -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'~> -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'~> -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'~> -df0;4rVup@L]7Ca#l4N%#g_!"!8mVQ!+;,m!Oi@2!!*AOli-rmq>^MNm/I(Cq#CEPPlCgB!$Hjm -JcDqR!*J%W!2&ra!$M+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+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+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=`!!".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=`!!".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=`!!".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=`!!".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=`!!".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=`!!".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=`!!".hs*t~> -df0;4rVup@MuNh(&GcA-#e/.[!8mVQ!+;8q!RD>R!!*A7k5PDmq>^NYmJd0qq>^L=`!!".hs*t~> -df0;4rVup@MuNh(&GcA-#e/.[!8mVQ!+;8q!RD>R!!*A7k5PDmq>^NYmJd0qq>^L=`!!".hs*t~> -df0;4rVup@N;iq)&GcA-#e/+Z!8mVQ!+;;r!RD>R!!*A7jo5^N!mJd0Iq>^LLPQ(^A!$Hjm -JcE"T!2oYn!-%6'!5J@1!=8/grr=2=`!!".hs*t~> -df0;4rVup@N;iq)&GcA-#e/+Z!8mVQ!+;;r!RD>R!!*A7jo5^N!mJd0Iq>^LLPQ(^A!$Hjm -JcE"T!2oYn!-%6'!5J@1!=8/grr=2=`!!".hs*t~> -df0;4rVup@N;iq)&GcA-#e/+Z!8mVQ!+;;r!RD>R!!*A7jo5^N!mJd0Iq>^LLPQ(^A!$Hjm -JcE"T!2oYn!-%6'!5J@1!=8/grr=2=`!!".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+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+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+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=`!!".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=`!!".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=`!!".hs*t~> -df0;4rVup@OT,?j#l4N%+P4d9!8mVQ!+;H!!Oi@2!!+4oi;We^O5p[J1_@/9j'=H`[chZ+dM -s+13Urr>Ud!!'dsrr=`!!".hs*t~> -df0;4rVup@OT,?j#l4N%+P4d9!8mVQ!+;H!!Oi@2!!+4oi;We^O5p[J1_@/9j'=H`[chZ+dM -s+13Urr>Ud!!'dsrr=`!!".hs*t~> -df0;4rVup@OT,?j#l4N%+P4d9!8mVQ!+;H!!Oi@2!!+4oi;We^O5p[J1_@/9j'=H`[chZ+dM -s+13Urr>Ud!!'dsrr=`!!".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'~> -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'~> -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'~> -df0;4rVup@P5bNSq#CFLhoPfthtd,X+Sl'~> -df0;4rVup@P5bNSq#CFLhoPfthtd,X+Sl'~> -df0;4rVup@P5bNSq#CFLhoPfthtd,X+Sl'~> -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^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^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^L\q>UF;q>^NQfDbhYq>^MFJcC<$X8`/brVup@dJn^~> -df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>hpAY+hp](@I!q3$`p](=KpQ5CVhZ+dMs+13W -rrA\f!!$-^rrBP(!!)3Yrr=2=`!!".hs*t~> -df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>hpAY+hp](@I!q3$`p](=KpQ5CVhZ+dMs+13W -rrA\f!!$-^rrBP(!!)3Yrr=2=`!!".hs*t~> -df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>hpAY+hp](@I!q3$`p](=KpQ5CVhZ+dMs+13W -rrA\f!!$-^rrBP(!!)3Yrr=2=`!!".hs*t~> -df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>hpAY0^+SGd;(dL=tp&G+)hiId=hZ+dMs+13Wrr>Ud -!!&qXrrMj*q>^M^qYpO^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^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^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'~> -df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>hp&>'5&Es/q&C6C:!oEu#JcC<$[Jp6iq>^O%pZ)8R -@/9j'5l1K\+Sl'~> -df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>hp&>'5&Es/q&C6C:!oEu#JcC<$[Jp6iq>^O%pZ)8R -@/9j'5l1K\+Sl'~> -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'~> -df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>hoD\j[3:-\H=RV4K!oEu#JcC<$[Jp4lq>^Mfir9&R -#l4N$Qi$d_+Sl'~> -df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>hoD\j[3:-\H=RV4K!oEu#JcC<$[Jp4lq>^Mfir9&R -#l4N$Qi$d_+Sl'~> -df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>hnc&Wn+RoF435:@N!oEu#JcC<$[f6?jq>^O%n)=9H -=S`!t5l:Q]+Sl'~> -df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>hnc&Wn+RoF435:@N!oEu#JcC<$[f6?jq>^O%n)=9H -=S`!t5l:Q]+Sl'~> -df0;4rVup@P5j;;!5IRo!8mVQ!+;N#g].>hnc&Wn+RoF435:@N!oEu#JcC<$[f6?jq>^O%n)=9H -=S`!t5l:Q]+Sl'~> -df0;4rVup@P5j=`!!".hs*t~> -df0;4rVup@P5j=`!!".hs*t~> -df0;4rVup@P5j=`!!".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 -df0;(rVup8J\QcNJ\S"q!iH#8J\QcNJ\QcNJ\QcNlb -df0;(rVup8J\QcNJ\S"q!iH#8J\QcNJ\QcNJ\QcNlb -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!oEu#JcC<$JcC<$JcC<$li-rMrVup@dJn^~> -df0;4rVup@JcC<$JcDPG!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~> -df0;4rVup@MuNqS[sppcp](C%8:T7ZrrCs3^Au~> -df0;4rVup@MuNqS[sppcp](C%8:T7ZrrCs3^Au~> -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-=`!!".hs*t~> -df0;4rVup@OT,?Z8Ep0U8E]RD!.Wc(!$J-=`!!".hs*t~> -df0;4rVup@OT,?Z8Ep0U8E]RD!.Wc(!$J-=`!!".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].=`!!".hs*t~> -df0;4rVup@OoGDHjT#:ao`"o@g].=`!!".hs*t~> -df0;4rVup@OoGDHjT#:ao`"o@g].=`!!".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^^N1JcC<$JcFF'!'pM`!$K\h -J,~> -df0;4rVup@OoGDHr;Zm1Gh;Wg!r%`eq#CF$f@^*'E;KV8+K#/=+T29A#\_QUrrAD\!!!l(rr^^N1JcC<$JcFF'!'pM`!$K\h -J,~> -df0;4rVup@OoGDHr;Zm1Gh;Wg!r%`eq#CF$f@^*'E;KV8+K#/=+T29A#\_QUrrAD\!!!l(rr^^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 -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 -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 -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- -df0;4rVup@JcGNF!)WLl!+=[`!71KA!>t9_rr@iN!!%!%rrA\f!!&XFrrV'X+G'QDs3L]FYPA.u -=P3WRTDANf^\7]k!!*q/mf*=N8F- -df0;4rVup@JcGNF!)WLl!+=[`!71KA!>t9_rr@iN!!%!%rrA\f!!&XFrrV'X+G'QDs3L]FYPA.u -=P3WRTDANf^\7]k!!*q/mf*=N8F- -df0;4rVup@JcGNF!&46L!,16h!)WLl!0^N1pAa7T!D)tTrrK#/kl:]Kp\t8l&Es/p5_8rds3^iH5lL``+OU4>~> -df0;4rVup@JcGNF!&46L!,16h!)WLl!0^N1pAa7T!D)tTrrK#/kl:]Kp\t8l&Es/p5_8rds3^iH5lL``+OU4>~> -df0;4rVup@JcGNF!&46L!,16h!)WLl!0^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^N1pAa1R!)W=f!2nrZ!'pA[!2nrZ!'l,8JcF-t!'pM`!$K\hJ,~> -df0;4rVup@JcGQG!:T^`!3b;[!'pA\!0^N1pAa1R!)W=f!2nrZ!'pA[!2nrZ!'l,8JcF-t!'pM`!$K\hJ,~> -df0;4rVup@JcGQG!:T^`!3b;[!'pA\!0^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/-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/-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/-rIpa,h!!#98s+13trr>=`!!".hs*t~> -df0;4rVup@JcGQG!*K't!$L2!!&46L!0<'^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<'^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<'^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'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'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'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^O5pQY[X^\.X/&>/^SrrA\f!!&XFrrV'X+G'QDs3^iH -n+cq`^XiDbTDANf^Y\tjQhg[^fD5IC!!#RNs7u]q8:gels18415lL``+OU4>~> -df0;4rVup@JcGZJ!Tt^O5pQY[X^\.X/&>/^SrrA\f!!&XFrrV'X+G'QDs3^iH -n+cq`^XiDbTDANf^Y\tjQhg[^fD5IC!!#RNs7u]q8:gels18415lL``+OU4>~> -df0;4rVup@JcGZJ!Tt^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-!!^N1hZ!Sbq>^N1qYpQQq>^LLjo5>^LLJcC<$])MaqrVup@dJn^~> -df0;4rVup@JcGZJ!+>U&!0?+=!V[H-!!&(DrrBh-!!^N1hZ!Sbq>^N1qYpQQq>^LLjo5>^LLJcC<$])MaqrVup@dJn^~> -df0;4rVup@JcGZJ!+>U&!0?+=!V[H-!!&(DrrBh-!!^N1hZ!Sbq>^N1qYpQQq>^LLjo5>^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=`!!".hs*t~> -df0;4rVup@JcG]K!2'&e!'oKB!0?sV!>tQprrBh*!!3F&^Z,7nTDANfT8!:HhZ+dMs+13trrC+8 -!!(p-rrA\f!!'djrrBh1!!'4urr=`!!".hs*t~> -df0;4rVup@JcG]K!2'&e!'oKB!0?sV!>tQprrBh*!!3F&^Z,7nTDANfT8!:HhZ+dMs+13trrC+8 -!!(p-rrA\f!!'djrrBh1!!'4urr=`!!".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^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^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^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 -df0;4rVup@KDtu0)#4.3TATYLk6Una!3alO!$LS-`W#pnq>^O5pZ_\XTDANfT8!:HhZ+dMs+13s -rr -df0;4rVup@KDtu0)#4.3TATYLk6Una!3alO!$LS-`W#pnq>^O5pZ_\XTDANfT8!:HhZ+dMs+13s -rr -df0;4rVup@K`;)A./^N1l2LaUq>^MfL&V53!$HjmJcF*s -!$M+ -df0;4rVup@K`;)A./^N1l2LaUq>^MfL&V53!$HjmJcF*s -!$M+ -df0;4rVup@K`;)A./^N1l2LaUq>^MfL&V53!$HjmJcF*s -!$M+ -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`,! -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`,! -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`,! -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=`!!".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=`!!".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=`!!".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& -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& -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& -df0;4rVup@P5j;;!5J4,!0?pU!7-f-!.X#/!>+/XrrBgp!!(o=`!!".hs*t~> -df0;4rVup@P5j;;!5J4,!0?pU!7-f-!.X#/!>+/XrrBgp!!(o=`!!".hs*t~> -df0;4rVup@P5j;;!5J4,!0?pU!7-f-!.X#/!>+/XrrBgp!!(o=`!!".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!!(omsbo2!!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!!(omsbo2!!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!!(omsbo2!!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=` -!!".hs*t~> -df0;4rVup@P5j;;!5J:.!Tsab!!#iUrrV)&&F'5s(m"FYrrBgp!!(o=` -!!".hs*t~> -df0;4rVup@P5j;;!5J:.!Tsab!!#iUrrV)&&F'5s(m"FYrrBgp!!(o=` -!!".hs*t~> -df0;4rVup@P5j;;!5J:.!-%`6!7-W("8B!4+R]:3(m"FWrrBgp!!(o^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^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^MfpAY3OO"g&'!DpQ%rrV)=0^o&C:qqS]JcEpn -!'pM`!$K\hJ,~> -df0;4rVup@JcC<$hu -![sE0jSo>>YBW>-!!=?GQe1X)"5g;,5kk<]+BXu^JcC<$ao;?+rVup@dJn^~> -df0;4rVup@JcC<$hu -![sE0jSo>>YBW>-!!=?GQe1X)"5g;,5kk<]+BXu^JcC<$ao;?+rVup@dJn^~> -df0;4rVup@JcC<$hu -![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 -df0;(rVup8J\QcNJ\S"q!iH#8J\QcNJ\QcNJ\QcNlb -df0;(rVup8J\QcNJ\S"q!iH#8J\QcNJ\QcNJ\QcNlb -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 Binary files a/doc/user/ObjectId-32Bits.png and /dev/null 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( ¶ms, &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 -#include - -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 -

Thirty-Two Bit Object Id

-@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 -

16 Bit Object Id

-@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 -@findex - -The RTEMS header file @code{} 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{} 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{} 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{} 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{} 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{} 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{} 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{} file estimates the amount of memory -required for the RTEMS Workspace. This estimate is only as accurate -as the information given to @code{} and may be either -too high or too low for a variety of reasons. Some of the reasons that -@code{} 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{} 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 - -#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 -@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{} instantiate the configuration data -structures. This can only be defined in one source file per -application that includes @code{} 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 -@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{}. - -@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{} 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{} 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{} 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{} 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{} 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{}. - -@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{}. - -@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{}. - -@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{} 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{} 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{}. - -@subheading NOTES: -This configuration parameter should only be used when it is suspected that -a bug in @code{} 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{}. - -@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{} 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{}. The BSP specific configuration settings are -defined in @code{}. - -@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{} 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{}. - -@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 -} 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 - -/* 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{} 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{} -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{}. 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{} 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{} 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{} 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_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 -@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 . - -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 }. - -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 - -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 - -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 -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 -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 Binary files a/doc/user/rtemsarc.png and /dev/null 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 Binary files a/doc/user/rtemspie.png and /dev/null 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 -
- - - - - - - - - - - - - - - - -
TaskPeriod (in milliseconds)Priority
1100 Low
250 Medium
350 Medium
425 High
-
-@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 -
- - - - - - - - - - - - - - - - - - - - - -
TaskRMS PriorityPeriodExecution TimeProcessor Utilization
1High100150.15
2Medium200500.25
3Low3001000.33
-
-@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 -
- - - - - - - - - - - - - - - - - - - - - -
TaskRMS PriorityPeriodExecution TimeProcessor Utilization
1High100250.25
2Medium200500.25
3Low3001000.33
-
-@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 -
- - - - - - - - - - - - - - - - - - - -
Deadline TimeTask 1Task 2Task 3Total Execution TimeAll Deadlines Met?
10011125 + 50 + 100 = 175NO
20021150 + 50 + 100 = 175YES
-
-@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 -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 -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 -#include - -#include - -#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_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 -@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 -JcC<$JcD5>JH5 -JcC<$JcD5>JH5 -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -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<$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 -JcC<$JcD5>!!(sO"M=sCL%#$8"R07n%+"nHrr<&[g%YNn!;+k:!!%TMJcC<$JcC<$df4g~> -JcC<$JcD5>!!)!A"5k.!Qi#tKk -JcC<$JcD5>!!)!G"6LU(S,;UUm6Ue?rU0[c!8FRB!!%TMJcC<$JcC<$df4g~> -JcC<$JcD5>!!)!P"7@31U&4Qdp-esNrV- -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 -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')>,! -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$ -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*roaU'HpS8B -!"#\)kl1Vdf')<%!79Ka!!%TMJcC<$JcC<$df4g~> -JcC<$JcD5>!!)!G!`&fWq!J3.TATY9rrg6g\gIE`d^>b!!!>/rpC$2ImXYF -!"#k.mf*7jg[=J7!7oom!!%TMJcC<$JcC<$df4g~> -JcC<$JcD5>!!)!P!`B#_q"Fi -JcC<$JcD5>!!)!A!gisJq<.pr!!'h6kl1Vef') -JcC<$JcD5>!!)!G!h96Pq;"RN`j!$hC/"RN`j!$hL2 -rr<5Wmd;+r]DV'uWLVW$mJm6 -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$ -JcC<$JcD5>!!)!G"6gp.SbqgWlp1V6rU0[c"l&J5#6<9PmKoTf!86f._^ZntrU'm -JcC<$JcD5>!!)!P"7dT8U\jcfogAdDrV-6&mGpB1+6!6!pl!!%TMJcC<$JcC<$df4g~> -JcC<$JcD5>!!(s@"K_e1Ic::i"O]mB$Guc*rr<5Rki`laMZ2fIZP -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 -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 -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 -JcC<$JcD5>!!(mM#iU+g&-ED#K'<++rr<&[rq?_`/HuVER.Y.nI/WdEa&a8b$7ToLrq?Z< -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -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<$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 -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<$JcD5>!!)cW!X&M -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;jX-.!"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]#"/JP6jKR.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)84FG%4okY5rq?[l!"qt(/-#Zt -rV- -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^ -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 -JcC<$JcD5>!!)]U"R!.22?j'[!AE.*kQ2t/bP^Q*ZiDEOkl1V_`;Sp"!!(=Ckl1V_f)+Y7i4FaE -!8%56rr<&&rTF=)!"Akjrr<&=rTFL9!!2 -JcC<$JcD5>!!)]["RWa@2[96]!AWI1mK+X6d/<;5\H!uUmf*7eao1Z-!!(LHmf*7eg\^CBk.liS -!8RSArr<&*rU'a4!"Akprr<&BrU'pD!!2NU+TStKmK^i6%.'+![Icmr9aWs!%.C,!!%TM -JcC<$JcC<$df4g~> -JcC<$JcD5>!!)]d"STWT3 -JcC<$JcD5>!!)QQ"lQ:X!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! -JcC<$JcD5>!!)Q`"n&[!! -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< -JcC<$JcD5>!!)fg!p%,KqY(8U!!r2jpBL[pqH*`#rqHEm!9F+Qrr<&[rV-\ -!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%. -JcC<$JcD5>!!)fg!f?tjqY(9^!!)9XpE0I^p@nRe!9F+Qrr<&[rV- -JcC<$JcD5>!!)fX"1S=Bg&'t7])WcKkQ4idHi3(/Qn)SDkl1V_f)=h4!!(UKkl1Vcf'!;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\!9iX\"9XthkQmme!3,2G!!(UKkQAO%#c%C_ -"2,?JJG&++!.k0$s+13$s+13us*t~> -JcC<$JcD5>!!)c]"%<2C^]!R&_^5A;rpBm+":1q)mK: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-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,4rrOroaWK!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$'PJl/5\M3 -!))YNmJm6 -JcC<$JcD5>!!)cf$g0VP!$t<8/HGi]pAO^lQimCA<'CBa:%\GZrr<&[rV- -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* -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 -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T6p?2JVJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>!!%T -JcC<$JcD5>!!%TEp@eOeJcC<$JcC<$JcF0uJ,~> -JcC<$JcD5>JH5 -JcC<$JcD5>JH5 -JcC<$JcD5>JH5 -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/ -JcC<$JcC<$irA/cJcC<$JcC<$JcD/ -JcC<$JcC<$irA/cJcC<$JcC<$JcD/ -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 -JcC<$JcCK)p -JcC<$JcCK)p -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/ -JcC<$JcD/ -JcC<$JcD/ -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 -JcC<$JcDYJp!(2MrQVtSp -JcC<$JcDYJp!(2MrQVtSp -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:\pAp!&'fJcC<$JcC<$nc++~> -JcC<$JcE:\pAp!&'fJcC<$JcC<$nc++~> -JcC<$JcE:\pAp!&'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/ -JcC<$JcFa0p!&*grQTonp!&'fJcC<$JcD/ -JcC<$JcFa0p!&*grQTonp!&'fJcC<$JcD/ -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 -JcC<$JcG*:p -JcC<$JcG*:p -JcC<$JcG6>p!&'fo`+m7JcG<@p -JcC<$JcG6>p!&'fo`+m7JcG<@p -JcC<$JcG6>p!&'fo`+m7JcG<@p -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 -JcC<$NW8[rJcF@%rQTonec5 -JcC<$NW8[rJcF@%rQTonec5 -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/ -JcC<$bQ%7[JcD/ -JcC<$bQ%7[JcD/ -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/ -JcC<$iW&SqJcCB&rQTonJcGDfJcC<$JcD/ -JcC<$iW&SqJcCB&rQTonJcGDfJcC<$JcD/ -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~> -JcC`0p!&'fJcF@%rQTonJcF:#p~> -JcC`0p!&'fJcF@%rQTonJcF:#p~> -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 -JcDkPp -JcDkPp -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/ -JcEpnp!&'fJcD/ -JcEpnp!&'fJcD/ -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 -JcF=$p!&'fJcF0uJH5 -JcF=$p!&'fJcF0uJH5 -Rf@p=o`0RCNrK(ZJ`ugk!!%TMNrOY1oDjIBJcF0uJ,~> -Rf@p=o`0RCNrK(ZJaW7"!!%TMNrOY1oDjIBJcF0uJ,~> -Rf@p=o`0RCNrK(ZJbSm4!!%TMNrOY1oDjIBJcF0uJ,~> -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf(A!)EMn"].Ak!%Qq*mf*7egTU#F!.k0$s3gpt~> -RfFs*WQ[:<'grm'YDlh!WiA_rqHEm!9DQ%!!%TMNrK(ZhY.BG63%?X -Rf=TAiIe`d#5!7q/5s24p!dHCQ1JcCc1!!(m>")\*$f`((;jDFr.f_jt5 -_uSoWkl1V_f$W[]!.k01rr<&Rkl1V_f)4_6g,K(BrTO:"!9LEJ!!%TMJcF0uJ,~> -Rf6#&PeaEG;!8IM@s2b9,dI$u7JcCc1!!(mD"*"<)h>ZgFl>Ze8h>H^@ -aT1Ybmf*7egX5Eh!.k01rr<&Rmf*7eg\gIAi&LdLrU0^-!:-iV!!%TMJcF0uJ,~> -Rf -Rf!Z1pRqre)7!/oLnrr<&MdHCQ1JcCc1 -!!(d;rr<&Mqre*e!#) -Rfe#rr<&RdI$u7JcCc1 -!!(dArr<&RqsFNp!#2C"!!%TMJcF0uJ,~> -Rf -Rf"1g'ojS\3G]M]RM'MPq5kl1V_f)=e6ec5^Kkl1VeerMHj%6pomkkb>^kPtV6 -roj@^#1ehg#n9,"r9+EV1'S:fcRT"Hlf\!X&MbrT: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~> -Rfu%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(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`'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 -RfsAhWOq>JcCc1!!(d;rr<&Mqre*M!'U;Er -r<&Mroj@^#>P@]9HF08UAj?^7fX,k:+6/CFT1M(!!a_e9-BT,!mU]-!i#`_gun_ -RfrpC)@!!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 -Rfa3P/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_M*rTF;S!1r!0 -!!%TMJcF0uJ,~> -Rf5!8Hi-!!%TMNrK(ZhX1WM!rr -Rfs!6Og+"3goLSc8?hWWiO=p\+XfjSefSj8]2Yp\t3u)9hjLoMbfKrqHEm!9F.Rrr<&[ -rqHEm'H,-hp[hDb2YZsh!Y!!@pW*mG!9EJ?!!%TMNrK(ZhY.8\!rr -RfDZF5'kPtU6s,R*Z!8H`4!!*>-r94.\!7q/5 -rr<%YrTFKu!"%lQR7O7SkQp&G!8H`$!!&2\kR"Ko+6VkOe--TJgun_ -Rf1r9jRb!8IM@ -rr<%]rU'p+!"&)]SP$!^mKhnS!9*A6!!&>`mKp<%+RSUbf``,Uh!P.BJcC<$df4g~> -Rf_!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 -Rf -Rfmf*7e -e,A_7!!V-FmJm6nrU'p9!"A;`!!(dQmK+X6d/<;5\H!u6mJm6 -Rfb!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 -RfOroajDGWQ]B!!*'"f');t!7^r1#D)qVkia;m`nT\W!.k0$s3gpt~> -Rf!o!\TrpC9OHT`/G!!*'"g[=J0!87;<#DE.\md;D%bM2Fb!.k0$s3gpt~> -Rf -Rf#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~> -RfmJm6g6g[=J0!8IG>#2KLkj154Pg?nq@JcC<$df4g~> -Rf -RfrTO7]!7q,4!nI>Oroj@^!7q/5 -rr<&Mroj@^!7q,4#M&kTkia,h[f,ClaT)=llf\ZqWJ%!9iW-!,(BlkQorD!7pAt!!(UIkQOlbP[FKUg?8M:JcC<$df4g~> -Rf=!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<+TT4RpBSqC%JTSs!9*nN!mpuJrV- -RfkQ6VA!<)-]!!(UKkQ9<8!<23^!!(UL -kl1V_f)Fn5!!(UKkQfZ=!9iWM!-J2'",6dUf'DN"!.k01rr<&VkQA -RfY9r9af3!(62B$NS*CmK/CK!<)?c!!(dPmK2,C!<2Ed!!(dQ -mf*7eg]$X@!!(dPmK_JH!:K8[!-eD0",R!Xg["8-!.k01rr<&VmK:-&&`(!.k0$s3gpt~> -Rf"-*?]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 -RffsmKpB -Rf1!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-!WZoe -pAb2Es+13us*t~> -Rf$e[K>!$b!-.KKNTkPXQD -!!Us;kPtV6rTO7]!7q,4rrn"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,~> -Rfj/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(A!)EMn"]Rhs!%?_&mf*7eg]$X@!!(dPmM+CU!:K9/!!,&T0*"0b!57gg!!(dMmK8+B!5dFW -!!%TMJcF0uJ,~> -RfFa%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- -RfFF0%5W=aq$!uXh6qWRqZ"kMo$!!(UK -kl1V_f)=h4!".<@kPtV#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~> -RfJcC<$df4g~> -Rf>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 -RfJcC<$df4g~> -Rf -Rf -RfJcC<$ -df4g~> -Rf -Rf -Rfi_!!&,4mJm6 -Rf -Rf -Rf^Y.!O_9mJm6 -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -RfHf4)f!.k0$s3gpt~> -Rf"9AueI,t4nrr<&RY3l8iJcCc1!!(pE -!g*`1rpKac!.F\2"47,L!:fIY_)g?4mK1rJIc0Vo!.k0$s3gpt~> -Rf!s0!9DH"!!%TMNrK(Zh"U[G"9B#gJaE=/rr<&[Y4hnrJcCc1!!(pN -!gX)=rqHBl!.t%@"5*\T!:fdbaZSYGpB'1\KAcJ(!.k0$s3gpt~> -Rf\kl(P^./E',Gl@^5kQ1ecf&Z#rJHWLAkPtU6s+13us*t~> -Rf -Rf&5Rd]Ekl(8U!!))_pAb2E -s,R*Z!9!SQcj=ppp\k-m/,Ao>JGoQ=pAtBrjQ-%:M?LlVpAb2Es+13us*t~> -Rff#Rrr<*2!5A -Rf -Rf -RfVs"*\JcCc1!!)!A!h97; -r94.\!aPeAqre0m!)*@mn`]uQ!7p2o!f[2;iog@BJcC<$df4g~> -Rf -RfsM -r:g3k!b24NqtC63!)NXqnb<%`!9E27!gWhMiqEEQJcC<$df4g~> -RfbrT:V?Vhrrk5FND!!^bq-O(#FYPdSg]M]RM'MPq5kl1Vl^d//;IH]n3<>brT:V?>`!!%TMNrK(Z -h!"b5m@sMK`F:6kQBo` -"4,fe!!%TMNrK(ZiTL=n"P*G6rr)V!!(UKkQ9<8!<)-Y!!h`)<>brT:V?\j -"24p=RJuCPk$lnBhkPtU6s+13us*t~> -Rf -Rf(4rrIJ3&L*X3a`'i;aFp\t4&bXDaML%k>e=rIP[<6=e,!!%TMNrK(Z -h"UgK!9F%O!o!\[rV-.6 -"3LfJU]0uip-A[ZqtC3[%3G0%pAb2Es+13us*t~> -RfOrTF_i!!#\k;k4*m -1/0>#"do;Q$%;jff')=H!$BtlkQ4EXU>tG;!.k0$s3gpt~> -Rf"/8Pgl:!-eD0rr<6m -!BWaU!*&pbrr<9Q!AmRq!!B>%mKf'\!%Ui!!!8#Vmf*7s,9'?#XR;be!&ID'!!SncmJm6rpC%`!"qk".KBHmrpKdd#U:9_+fsN*!n.&8 -!iH#eh!P.BJcCc1!!)$H!kA:oqsOIa"5>L0[/KD!l4bJt!!)Ee!8IJ?!o!\TrU(.q!!#boS[$%`-kg[=K]!$L7smK-)_VW7(E!.k0$s3gpt~> -Rfrr<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~> -Rfa3P1kQAm3&$c,t".f]%`r>3%!#$?qkidg&!%HI^k_]?VkieZ>/_p?h"+pRb -kPj]F!!`Y%kifen!1s2RrrZ2WqhSd#G> -p?2JVJcCc1!!(g/_p?h&;'rokNM+0 -!&!3nkND&/!-\>)!_EB`gun_O -r94.\"kMnY#S43>kRO0g#KGukjuNK=ke%'&\,#4hL]CW=kPtU6s+13us*t~> -Rf&%2E)"/6#*bPpr0!#$C"md?#6!%Q^jmZ%8`md?kN0&llu",6df -mJcPR!!`Y)mdA%+!2BJ\rr1Qi?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 -Rf@?A,Z-.XT3h2!!)`n!9F+Q!os=] -r:g3k"m#F.#nXcKpC=/-#h/PBof`@UpW3UC_tj$.O8r\KpAb2Es+13us*t~> -RfDZF5Fkl1V_OT+GGfDkoDroaU@!!(j=R7O7SkQB]B!8IM: -rr<%.rTF<8!(-\Krr<%XrTFKu!"S5V=o_t.kQc,.8*K.:!0[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^ -RfI'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~> -RfC]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+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~> -Rfmf*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`'+u390-NLL@mXbFVg[5%A -JcCc1!!)$H!Yk^TqsOIa&_l_?!2],Oi!2=2gAh6A!!(dPmK2,C!;u9b!!M'E,QQ3hmK0p!-N3?9 -R/d -Rf\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 -RfOroajDGWQ]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!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~> -RflOHt$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[/`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~> -RfDAmJm7ArU'^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~> -RfI!PmJm7QpAb3SrV$?u!)WMo!*T$i!!%TMNrK(Zh"UgK -!9F%O"3( -Rfmf*7ig[6-`aS"s)9E7]l"i'j#"5*YZmH![8 -!.k0$s3gpt~> -RfkrJ -!.k0$s3gpt~> -RfkQ6VA!;u'\!!Lm:=9*^GkQ7,%@/f?p -O8p9UJH."Sq<.me!%Hsl!!%TMJcF0uJ,~> -Rf6'-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\6'-MmK/n0A,bm$ -P5lW_K`EI^q -Rf -Rf"LAgC -!7(T-rr<95]BJIl%fs*;kl1V_f)=e_!07'H"Lo0H -!7Ur8rr<95^[CO,&-9BAmf*7eg\pOGgAh6Am_]/0Rf;^\V?[+(md:&Tg\pOB_ZU7CrpBm*'EEg[ -mJm6; -"!n!KAD-AN!.k01rr<&YmK.J1GPgh.!#XJYmctVl+r9M4mb7^AmQ(>Fm-a;T'EA.2mKX$uaR6qK -#cI[i%`/n[K^S9S$imHulne]Rq -RfM&-9WHp\t3njSefYj8]2SpWK!!)*XpB0S?!,;E+rr<&[rqHEm!9F+Q#NPjbp\,U,PQ(:_^D6eLg\:FB!9EtM -""+-MB\E+[!.k01rr<&YpB#R>I/E[-br%03d0oeleaq=arM!,1Ee!!%TMJcF0uJ,~> -RfcV;!!(ULkQ>Ds!,2Aq%FtLZkb\C]*_\?j=o\R#kS#cQ), -Rfj/5S&$!Iat8rr<&Rr9alT"99uM49GRVlh9`H -!.k01rr<&Smf*7e:B"5s<'q#n.,Opjrr<&RrpKdd!8IJ?'\`Tfmd>c/!B; -",$XS_V+>W!.k01rr<&YmK1-'2Z)qB!!(dQmK7/'!,DN$%GLj_m]$Q=d%mLqGX),O%` -"99uM49GRVlgF't!+,Zm"31THXSV>d8-#mSmJm6 -RfsZ$=%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 -Rf$!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@ -RfbrK2j3P+mf*7eg\pR?!!(dPmf*7qg[=Kj.g?A@PO)i\GQ.%1 -!!UGI&-k7pr9jRb!8IJ?!o!\TrU'm(;&09K9t:/irr<&RqsF^(<>brK2j3P#mJm6 -!!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~> -RfP3LBF;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~> -Rfd9!eUK6iog@BJcC<$df4g~> -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf -Rf@p=o`0RCJcEpnqTXTkJcEpnJH5 -Rf@p=o`0RCJcEpnqTXTkJcEpnJH5 -Rf@p=o`0RCJcEpnqTXTkJcEpnJH5 -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 -JcFF'pW\9hJcC]/r656Ar69fmJcC]/p -JcFF'pW\9hJcC]/r656Ar69fmJcC]/p -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/ -JcFX-r6=m6r69fmJcD2=r6=j5qos]lJcD/ -JcFX-r6=m6r69fmJcD2=r6=j5qos]lJcD/ -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/ -JcF^/r6=d3qos]lJcD>Aqp"X1qos]lJcD;@qp"[2r69fmJcD/ -JcF^/r6=d3qos]lJcD>Aqp"X1qos]lJcD;@qp"[2r69fmJcD/ -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 -JcG-;r6 -JcG-;r6 -JcG0 -JcG0 -JcG0 -JcG3=qp!^lr69fmJcE7[r6 -JcG3=qp!^lr69fmJcE7[r6 -JcG3=qp!^lr69fmJcE7[r6 -JcG6>qp![kqos]lJcE=]qp!Xjqos]lJcE:\r6 -JcG6>qp![kqos]lJcE=]qp!Xjqos]lJcE:\r6 -JcG6>qp![kqos]lJcE=]qp!Xjqos]lJcE:\r6 -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 -JcG9?r6 -JcG9?r6 -JcG<@r6 -JcG<@r6 -JcG<@r6 -JcG?Aqp!Fdr69fmJcEOcr6 -JcG?Aqp!Fdr69fmJcEOcr6 -JcG?Aqp!Fdr69fmJcEOcr6 -JcGBBqp!@br69fmJcEUer6 -JcGBBqp!@br69fmJcEUer6 -JcGBBqp!@br69fmJcEUer6 -JcGECqp!=aqos]lJcE[gqp!:`qos]lJcEXfr6 -JcGECqp!=aqos]lJcE[gqp!:`qos]lJcEXfr6 -JcGECqp!=aqos]lJcE[gqp!:`qos]lJcEXfr6 -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>pJpJ -L]@:sV>pJpJ -L]@:sV>pJpJ -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 -MZ -MZ -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 -OoP='PQ1R*JcC<$qZ$K -OoP='PQ1R*JcC<$qZ$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 -Q2gd,MZ -Q2gd,MZ -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 -RK*0/K`CqoJcCW-qosfoqos]lMZ -RK*0/K`CqoJcCW-qosfoqos]lMZ -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 -V#U>:JcG0 -V#U>:JcG0 -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 -V>pJ -V>pJ -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 -VuQY=JcFp5r69fmVZ6S=JcFp5qos]lVZ6P -VuQY=JcFp5r69fmVZ6S=JcFp5qos]lVZ6P -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 -YQ+LESH"-?oDjIBq>^?:SH"-?oDlQ(JH5 -YQ+LESH"-?oDjIBq>^?:SH"-?oDlQ(JH5 -oDa@AoDmeK!!%T6p?2JV^&NW`oDmeK!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JVJcDbMJ,~> -oDa@AoDmeK!!%T -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -oD\djJaW7"!!(pV!!&k`!:A8'!!'_4!!%T -oD\djJbSm4!!(pV!!&ki!;=n9!!'_4!!%TEp@eOehu -oD\djJ`ugk!!(pV!!(p?qZ$a#$S#uCo]Z;T!7pH!rr<&MroaEr37cRB!!'_4!!%T6p?2JVhuk!;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 -oD\djJbSm4!!(pV!!(pNqZ$a#$nZP\o_8@c!9EG>rr<&[rq?K94QOuc!!'_4!!%TEp@eOehu!!)*ZpB&H!jO -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 -<n'`]3'p?qq\!8Hc+rr<5Wmd:,VgXGQj!5/=3!7^H:!!#din'`]3'p?qq\!8Hf,rr<&RrpBgh!8Guj!!%TMWrIS~> -oD\djeG&Y:rqHEm!9F.Rp&P!a#kk5q**9GIOIh=^OB!!)*F -p\t3njSnlT!W_<1pAb3,rr<&Kp\"Ucp\t3njSnoI!;uQsp8Lq1"U?2PYgN1F!8meV!8dJM!!#mq -=9Vc"'`]60p@nRe!9ED=rr<5`p\+^hjOrr<&[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!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"6MfJ<;,b[aT1Ylmf1B/li->P -!!(d&mJm6 -oD\djeG&tC!)`PorqHEm!9F.Rrr<$rq,mRh$eI38!%L]?/HGi6g=,cr!8meV!8mPN!!)*XpB0hM -!*Ajfs3Lc*!;-9brr<&[e+WhB^&J'4eG&tC!)`PorV-('%(VrV$HD9`Q'beFrqChu -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);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`Zu5huEAt?N<%Je`Zu5hu!7q&2&E<`jh!!r%!5Ll)&q/sD -!7q,4#/!hN"VaY^LYr9+7E(^&+BkPtUqrr<&Kkl1V_f(J8,!!Us; -kPtV6p?2UM!%R.,kQBie!2\60!!(pV!!(m>rr<&MqreUO!!(g -oD\djeF*>:!8I58rr<&RrpKdd!8I58"7.`BE;Ao(@/r:Sea: -!8I27rr<&RrpKdd!8I89"7.`BE;Ao(@/r:Sea^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 -oD\djeG&tC!9EkJrr<&[rqHEm!9EkJ"8+DLFSYY5AH4dbeb9%DhuO'-!"-q=#8;gc!!)*Sp\Fji62^HZoGIbdi:d3O^&J'4eG&tC -!9EhIrr<&[rqHEm!9EnK"8+DLFSYY5AH4dbeb9%Dhu^L]r:^pB0q/!3arI!!(pV!!(mMrr<&[qtCZm!!) -oD\djeEHo4!7pl-rr<&Mroj@^!7pl-".fKBk5"3Ciu\8te`Zu5hu!!(UIkQ8L!&,tem!!jef -9-C.r!!(ULkQm=S!%L\q!!7oSkl1Vr,8s2tVs*=E!7p@4!!#\k6O*\;rTF -oD\djeF*>:!8I58rr<&RrpKdd!8I58"/5cGm.p&OkTBl)eaKV!8HpA!!#bo70`nBrU'`b!(Gf5!!'\3!!(O: -rr<&Rp$Vh["l&J5!!(dImK-5cL\L3lrC!#$Rr9d-V+!!(dAmSs5e:/s^f!n.&8!iH#ehsLIEJcDbMJ,~> -oD\djeG&tC!9EkJrr<&[rqHEm!9EkJ"/u8Pp%e=anK@n9eb9%Dhu! -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<rr<&Mr9+783WNRekl1Vm0&YsVkNDmG -f')>6!s4\ckRa?i!j_%R!!"Y0ki_-m!!(ULkl1Vdf'))!_EB`hrk%?JcDbMJ,~> -oD\djeF*>:!8I58rr<&RrpKdd!8I58!`8rQp[/*4!*%M:!!(pV!!(pErr<&Rr9a[C49/mjmf*7s -0]qfjmI'BB!8Hq]!s4hgmK93g!k80srr<PA=!58C4 -!7^H:!!(dHmf*7eg]$X@!!(dJmK-5cL\L3PA=!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:^/!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&!$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[=LQA:3mK[k78ac!H!1*NMrrQA: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$loAB9B!5/=3!7^c;!;uTk!!;6U -p\+[dpAtO!h=pXFh#I]1pAb3Nrr<&Up\t3n;>sZ$ -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$*rr<5Wmd;4u[f#OuaT)b;mJm7-r9jRb!8IM@rr<&R -rpC"=!42+]JcK]FmJm6 -oD\djeG&\;rV-!"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- -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\ebnh?kPtVCmJm7?r9jRb!8IM@rr<&R -rpC#F!*SaX-326GmJm6 -oD\djeG&tC!)`SprV-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!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!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\LSearr<&RrpKdd!8IM@#2KLkj154P -h -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 -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!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;Mrr<&RrpKdd!8IJ?"]YPi@fVnP -mJm6 -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 -oD\djeEHo4!7pl-rr<&Mroj@^!7pl-"/5c?jn\*Bj<+Gre`Zu5hu!+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-/(earr<&RrpKdd!8IJ?"ge8&(D#]bmJm7#rr<&Kmf*7eg\("7!!(dQ -mf*7eg\:+qn-qP+!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 -oD\djeG&tC!9EkJrr<&[rqHEm!9EkJ"0;JLo_J4`o-+18eb9%Dhuq=b!_+on[opAb3Nrr<&Up\t3njRr9I!!)*Xp\t3sjS/CU!,;B*#C$5 -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!!_$!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 -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!!_NYpWOQaohg>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!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!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!!(dQmL(lP),O&gmd>`.!5dOZ!!'_4!!(O:rr<&Rp$Vh[ -!8IM@rr<&Rp?i(4)?<@PrU'g38H9LMeF!;:huj/5S&$ -!Iat8rr<&RqsOIa%bpF>2#nLj:#ta1KE)"hh!P.B]`.s3eF*>:!8I27rr<5Wmd:&Tg[snAe3*d4 -.SNMc!!"q'e*[29huj/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 -/5Aqk!!#"1e+WhBhu -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!7pi,rr<&Mr94.\!7q,4#.dSG";=J8rTO7] -!7q&2rrrr<&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:8rr<&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+WhBhuDO'!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 -oD\djJaW7"!!(pV!!&b]"m><_$PhgYmJm7#rr<%Mme6&K!8meV!2AlbkO,ee($=9=!!'\3!!%T< -p?hn\hu -oD\djJbSm4!!(pV!!&bf"n;9#$l/3bpAb3,rr<%Mp\+=]!8meV!2B2knFsX*(%0iN!!'\3!!%TE -p@eOehu -oD\djJ`ugk!!(pV!!&bW"@3=o!0#Xq!!'_4!!%T6p?2JVhu -oD\djJaW7"!!(pV!!&b]"@ -oD\djJbSm4!!(pV!!&bf"@WXt!0u:4!!'_4!!%TEp@eOehu -oD\djJ`ugk!!(pV!!&bW"*"PaJD',d!58C4!.jA-kPtV?rr<%nkQ>f0)M$N)!!'\3!!%T6p?2JV -hu -oD\djJaW7"!!(pV!!&b]"*=beK\>bn!58C4!.jS3mJm7Err<%nmK7P9)hco4!!'\3!!%T -oD\djJbSm4!!(pV!!&bf"*b(kM:qV'!58C4!.jn -oD\djJ`ugk!!(pV!!%T6p?2JV^&J'4J`ugk!!(pV!!%T6p?2JV]`.s3J`ugk!!(pV!!%T6p?2JV -JcDbMJ,~> -oD\djJaW7"!!(pV!!%T -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -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 -oD\djJbSm4!!(pV!!%TEp@eOe^&J'4JbSm4!!(pV!!%TEp@eOe]`.s3JbSm4!!(pV!!%TEp@eOe -JcDbMJ,~> -oD\djJ`ugk!!(pVJH5 -oD\djJaW7"!!(pVJH5 -oD\djJbSm4!!(pVJH5 -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 -JcC<$JcC<$JcC<$JcCN*p!!L:q9=KjJcG0 -JcC<$JcC<$JcC<$JcCN*p!!L:q9=KjJcG0 -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/ -JcC<$JcC<$JcC<$JcD/ -JcC<$JcC<$JcC<$JcD/ -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/ -JcC<$JcC<$JcC<$JcFa0q9>f:rQV/ -JcC<$JcC<$JcC<$JcFa0q9>f:rQV/ -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 -JcC<$JcC<$JcC<$JcG0 -JcC<$JcC<$JcC<$JcG0 -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 -JcC<$JcC<$JcC<$M#[:qJc>`MrQTonrr;c -JcC<$JcC<$JcC<$M#[:qJc>`MrQTonrr;c -JcC<$JcC<$JcC<$MZ -JcC<$JcC<$JcC<$MZ -JcC<$JcC<$JcC<$MZ -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 -JcC<$JcC<$JcC<$S,`9.JcG0 -JcC<$JcC<$JcC<$S,`9.JcG0 -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 -JcC<$JcC<$JcC<$YQ+CBT)X?AoDmeKJH5 -JcC<$JcC<$JcC<$YQ+CBT)X?AoDmeKJH5 -JcC<$JcC<$JcC<$o)F7@oDmeK!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)F7@oDmeK!!%T -JcC<$JcC<$JcC<$o)F7@oDmeK!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -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 -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!(mMrr<&[r:^<]63(*\p]&S?o]l2NciE_;p\t3njO*!;-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 -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!(m>rr<&MqreUO!!(g -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!(mDrr<&RqsG$[!!)$HmJm7+63e0SmJm7ArU'm+<#>cR -9tL;krrcR9tL;krr -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!(mMrr<&[qtCZm!!) -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!(m>rr<&Mqre*r!"](mrr< -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!(mDrr<&RqsFO(!"f.trr<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< -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!(m>rr<&Mr9+783WNRekl1Vm0&YsVkNDmGf')>6!s4\c -kRa?i!j_%R!!"Y0ki_-m!!(ULkl1Vdf'))!_EB`hrk%?hu'+-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"5Q'>A,bor -!"UdGmd9E0mJm7AmdA's!gioS&>KF2\*iYa!&3R'mHs -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!(mMrr<&[r:^/!l"F'!!"bAp\+=T!!)*Zp\t3sjS/CP!.On@!_iZohtI*Nhub&?5p9^A%@%!& -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 -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!(mDrr<$or`',"49tp6hu<'D!!&>_mf*7jg[=K7!+Yrp -#B^##$mJm6Qr9jRb!8IM@rr -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 -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')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/ -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!(mMqZ$a#&2o+)rV- -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)Fkg&HR~> -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!(mDrr<&Rp$Vh[!87;\ebnh?kPtVCmJm7? -r9jRb!8IM@rr<&RrpC#F!*SaX-326GmJm7Err<&Vmf*7eg\("7!!(^Lmf*7jg[=J8!7h#8#Nu-f -j6cmIg&1: -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 -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 -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^ -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!!_$ -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-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_ -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!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"hurr<&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 -JcC<$JcC<$JcC<$o)A[iaQWX(! -JcC<$JcC<$JcC<$o)A[iaR9'.! -JcC<$JcC<$JcC<$o)A[iaS5]7! -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]"@ -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 -JcC<$JcC<$JcC<$o)A[iaR9'."0D_,TDe0ZgAh6OmKUL,(^1XK]#a:>!8meV!2Al`F9`b -JcC<$JcC<$JcC<$o)A[iaS5]7"1&.2V>^,ij8]2XpBJ`@)$LaO_8u?N!8meV!2B2iGR,:Gg%PIH -hu -JcC<$JcC<$JcC<$o)A[iaQWX("P.bs&CLL@!nI>OrTFNM"99oG/cYs-ali^)hu -JcC<$JcC<$JcC<$o)A[iaR9'."P\5&&_I$M!o!\TrU'rV"99rJ0E;02amK-/hu -JcC<$JcC<$JcC<$o)A[iaS5]7"QY%4&` -JcC<$JcC<$JcC<$o)A[iaQWX("P2Zi!(-\K!nI>OroaI#!s4\ckQ@F\!j]u4!!(pV!!%T6p?2JV -hu -JcC<$JcC<$JcC<$o)A[iaR9'."P`5u!(6bR!o!\TrpBm.!s4hgmK93g!k6>?!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iaS5]7"Q]24!(Qt^!os=]rq?N>!s5%mpB.E"!kuhO!!(pV!!%TEp@eOe -hu -JcC<$JcC<$JcC<$o)A[iaQWX($J+F\#loeFkgf_6roaDe!+>`g!ce92b3/g*hu -JcC<$JcC<$JcC<$o)A[iaR9'.$JY!l#loqPmb7^ArpBhm!+Yrp!d+K7b3f60hu -JcC<$JcC<$JcC<$o)A[iaS5]7$KUs1$364_pZ);Srq?J%!,)6(!dOc>b4bl9hu -JcC<$JcC<$JcC<$o)A[iaQWX($J+G)L]@b$kgf_6roaD+!3uIc!lP'Ib3/g*hu -JcC<$JcC<$JcC<$o)A[iaR9'.$JY":MuX1-mb7^ArpBh2!4Mgn!m(ENb3f60hu -JcC<$JcC<$JcC<$o)A[iaS5]7$KUsUOT5a;pZ);Srq?I -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 -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 -JcC<$JcC<$JcC<$o)A[iaS5]7!9F.R#2^!mIcLJ/rq?I"!8[SI"7?-hlc]#&!8meV!.jn -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 -JcC<$JcC<$JcC<$o)A[iaQWX(!7q)3"B,: -JcC<$JcC<$JcC<$o)A[iaR9'.!8IG>"B>F?!!*#d!a>Y9r9aW.!(4os!!(pV!!'Os!:@Si!!(pV -!!%T -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_*!<)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 -JcC<$JcC<$JcC<$o)A[iaS5]7!9F"N!c%c9r:^E8<#5ZO:qt*G!!(pV!!)Zcrr<&[nb<%`!9E27 -s3Lc -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)ZTrr<&Mn`]uQ!7ouirr<&M^utauhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)ZZrr<&Rna?DW!8H>trr<&R_!V1&hurr<&R^[;(%g&HR~> -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)Zcrr<&[nb<%`!9Du1rr<&[_"Rg/hu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)ZTrr<&Mroj@^#1ehg#n9,"rTO7]#1%TC"qbrT:V?YirrbrT: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 -u%7%,pmKU*o'Ef4PbP^c4 -a&a,^'iDg;mJm7Err<&WmK/IM4SeCI^+O$_r9ad0u%7%,pmKfLB#8'qb/-+G_mJm7?s*t~> -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)Zcrr<&[rqHEm#3;.,$4]G3rV-+5rr(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;QrrKR/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[rrmKfKk!&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"jrrrr<:&"$KL(!!98$pBZNT -!&.>%!"?gFpB[]&!&[Y-!!T+fpAb3Nrr<&WpB!hbPk"JRW!<;[;D/"RUAaid!!VHXpAb3SrV- -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)ZTrr<&Mroj@^#8k8?kiGS?1]HVmkl1Vl(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- -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^ -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)ZZrr<&RrpKdd!0R6J!l+dBrpKdd!0I0I#JU6Kmd=Wd -Nr8;MEWBYrpKdd!0R6J#J^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`] -!!(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:;[ -:&7inrr<&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 -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)ZTrr<&Mroj@^!7q,4!nI>Oroj@^!7q,4#M&kTkia&f -_tWBp!!(UJkl1V_f)Fn5!!_$ -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!!)* -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!!(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!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 -JcC<$JcC<$JcC<$o)A[i^\7a%\b?((hu -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%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 -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 -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&RhuFF0%5W=aqOrTFNN0*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!<)rr<&RrpCbrK2j3P+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+ahuP3LBF;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% -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 -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 -JcC<$JcC<$JcC<$o)A[ik32gF!7q&2%-% -JcC<$JcC<$JcC<$o)A[ik3i6L!8ID=%-[`lipQ47!6%80'7g)M#/O7U"VjbCrU0O_s6^*-<#>cR -9tL5i#.@5?";b(]rU'm+<#>cR9tL8jrr<&RjR*!Jhu -JcC<$JcC<$JcC<$o)A[ik4elU!9F%O%.XAulM(#Q!6dk:'8?G[#0Bpa"VjkMrV-0hs7Z`> -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<<*"oN!<=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 -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 -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 -JcC<$JcC<$JcC<$o)A[ik4elU!9F(P"6McIBE%Z*!!tCJp\+=Tbl\$ -JcC<$JcC<$JcC<$o)A[ik32gF!)3Aj"].5c!%$=tkl1V_P5OMF=o_t.kQ5c)8,h`P!!Us;kZRso -r9+B+!(Z8: -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 -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 -JcC<$JcC<$JcC<$o)A[ik3i*H"9K,kI,b+mrr<&>r9aV0!4Mgn!m(ENrpKdd"l&J5+TStKmK^i6% -. -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 -JcC<$JcC<$JcC<$o)A[ik32gF!7pi,rr<&Kr9+1f!71T,%H@Egh<=&&!7pAt#QW3KkQg,J!8ZiB -!71K)!XJePr9+FH!!(j=kPtV6jQHRDhu -JcC<$JcC<$JcC<$o)A[ik3i6L!8I27rr<&Pr9aUl!7h#8%Hmclj6l=8!8Hr0#QWEQmK_qU!9 -JcC<$JcC<$JcC<$o)A[ik4elU!9EhIrr<&Yr:^7!!8[SI%IjDulhC,R!9EnK#lrfZpBU3g!:0@` -!8[JF!XSk_r:^Ke!!)?ZpAb3SjS&WShu -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 -JcC<$JcC<$JcC<$o)A[ik3i6L!8I27rr<&Rr9aUk!7h#8%H[Wjj6l=8!8Hr0#6< -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 -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%. -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 -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 -JcC<$JcC<$JcC<$o)A[ik3i6L!8I27rr<&Rr9aVj!+l)r!d"E0rpKdd"l&J5>6&74mK[h66gjAE -!-A,,#43T7]itJJr9aW.!(6bRrr<&RjR*!Jhu -JcC<$JcC<$JcC<$o)A[ik4elU!9EhIrr<&[r:^8"!,;B*!dF]7rqHEm"m#FP?N=g -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 -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_!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-. -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 -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<n'`]3'kjAKR!8H5qrr<&Rj6cmI -hu -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 -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 -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)0Lrr<&RqsFmW!!)$HmJm7+63e0SrpC!,<#>cR9tL;k -qZ-Za#/O7U"VjbCqsFZs9b[^HcR9tL;kqZ$lh_,M6T'hu:9mKU*o'Ef4PbPgi5_,M6T'hu: -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)0Urr<&[qtCNi!!)`'i;aCpBJ<,'Ef7Tdf&nEa]B>`'i;aFp\t3njQ#t7 -!87C&~> -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)0Frr<&Mqre*r!"](mrr -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!)0Lrr<&RqsFO(!"f.trrC!%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!!#bolrC!!(d6mJm7?s*t~> -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)0Urr<&[qtC08!"f/(rr -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!)0Frr<&Mr9+783WNRekl1Vh0&YsVkNK_a!gEWI".o_u -ZMs(f!!_$firr -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#rrr1Qi?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:^b"0)P, -^Adm,!!_NYpWWdASc8?iWWiO=p\2Q+#-7at#Bp/#pWWdASc8?hWWiO=p\+XfjQ#t7!8meV!9X%U -!!)*XpB0PA!,)<*rr -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^#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 -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!)0UqZ$a#&2o+)rV-!"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;\ -ebnh?kPtVCmKN[Aq#QWEQmL8:Z -!9 -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>DAmKWaCqDAmJm7Aj6cmIg&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#6I!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 -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-G8mJm7Aj6cmIhue!4Mgn!lb3KrpBh/!5&0s"f\$E+98kJmK^`3%. -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 -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`(6N60MhkPtV6j6-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$57fN/^!!MBW?N=g7fN,`>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 -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 -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 -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 -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 -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pV!!%T6p?2JVhu -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pV!!%T -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pV!!%TEp@eOehu -JcC<$JcC<$JcC<$o)A[iJ`ugk!!(pVJH5 -JcC<$JcC<$JcC<$o)A[iJaW7"!!(pVJH5 -JcC<$JcC<$JcC<$o)A[iJbSm4!!(pVJH5 -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 Binary files a/doc/user/semaphore_attributes.png and /dev/null 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 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 - -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{[$]@@} configurations -separated by @code{:} where: - -@itemize @bullet -@item @code{} is the thread pool count for this scheduler -instance. -@item @code{$} 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{@@} 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 -#include - -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 -#include - -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{} -for Configuration Table generation, then all that is necessary is -to define the macro @code{CONFIGURE_STACK_CHECKER_ENABLED} before including -@code{} as shown below: - -@example -@group -#define CONFIGURE_STACK_CHECKER_ENABLED - ... -#include -@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 Binary files a/doc/user/states.png and /dev/null 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 -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Mode ConstantMask ConstantDescription
@value{RPREFIX}PREEMPT@value{RPREFIX}PREEMPT_MASKenables preemption
@value{RPREFIX}NO_PREEMPT@value{RPREFIX}PREEMPT_MASKdisables preemption
@value{RPREFIX}NO_TIMESLICE@value{RPREFIX}TIMESLICE_MASKdisables timeslicing
@value{RPREFIX}TIMESLICE@value{RPREFIX}TIMESLICE_MASKenables timeslicing
@value{RPREFIX}ASR@value{RPREFIX}ASR_MASKenables ASR processing
@value{RPREFIX}NO_ASR@value{RPREFIX}ASR_MASKdisables ASR processing
@value{RPREFIX}INTERRUPT_LEVEL(0)@value{RPREFIX}INTERRUPT_MASKenables all interrupts
@value{RPREFIX}INTERRUPT_LEVEL(n)@value{RPREFIX}INTERRUPT_MASKsets interrupts level n
-
-@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 -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Mode ConstantMask ConstantDescription
@value{RPREFIX}PREEMPT@value{RPREFIX}PREEMPT_MASKenables preemption
@value{RPREFIX}NO_PREEMPT@value{RPREFIX}PREEMPT_MASKdisables preemption
@value{RPREFIX}NO_TIMESLICE@value{RPREFIX}TIMESLICE_MASKdisables timeslicing
@value{RPREFIX}TIMESLICE@value{RPREFIX}TIMESLICE_MASKenables timeslicing
@value{RPREFIX}ASR@value{RPREFIX}ASR_MASKenables ASR processing
@value{RPREFIX}NO_ASR@value{RPREFIX}ASR_MASKdisables ASR processing
@value{RPREFIX}INTERRUPT_LEVEL(0)@value{RPREFIX}INTERRUPT_MASKenables all interrupts
@value{RPREFIX}INTERRUPT_LEVEL(n)@value{RPREFIX}INTERRUPT_MASKsets interrupts level n
-
-@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 -- cgit v1.2.3